@python_beginnersЭта группа больше не существует

Страница 228 из 1885
Zart
04.08.2016
07:42:01
но хочется работать со всем этим зоопарком без завязки на конкретную базу

Марк
04.08.2016
07:42:11
Да

Bulat
04.08.2016
07:42:12
а в пайтоне что используется для подключения к бд ?

Zart
04.08.2016
07:42:39
так и появились всякие ODBC, BDE, DBI, DBAPI2, OLEDB

Google
Марк
04.08.2016
07:42:47
Да

Zart
04.08.2016
07:42:56
которые дают тебе набор интерфейсов, а внутре - дрова под каждую базу

Марк
04.08.2016
07:43:03
Да

Zart
04.08.2016
07:43:06
ну

Марк
04.08.2016
07:43:30
Ну вот я и сравнил охуенный DBI и хуевый libmysqldb

Bulat
04.08.2016
07:43:34
типа как mysqli для php?

Zart
04.08.2016
07:43:39
DBI в перле - это перловая либа (в пхп аналогичная PDO, в дельфях - BDE, вот это всё)

а вот в питоне DBAPI2 - это спецификация

Bulat
04.08.2016
07:44:18
а.. все понял

спасибо

Zart
04.08.2016
07:44:27
ты сравниваешь жопу с пальцем - раз и что именно хуевого-то в сравнении с, я так и не понял

Andrew
04.08.2016
07:44:42
Либа - скомпилированный код, который предоставляет вызовы функций?

Тогда по идее этот код можно портировать

Google
Bulat
04.08.2016
07:45:37
а что для связки с mongo идет?

Zart
04.08.2016
07:45:50
питоновый дбапи2 документирован в https://www.python.org/dev/peps/pep-0249/ и гласит следующее: дан модуль питона, в котором обязана быть функция connect, которая возвращает объект, с методами execute, который возвращает итерабл со строками ну и чуть-чуть более того

а что для связки с mongo идет?
https://pypi.python.org/pypi/pymongo

Bulat
04.08.2016
07:46:44
спасибо, отличный чат, спасибо что помогаете

Zart
04.08.2016
07:47:20
Либа - скомпилированный код, который предоставляет вызовы функций?
в питоне бывают и чистопитоновые либы, которые кроссплатформ работают без лишних телодвижений

Andrew
04.08.2016
07:47:42
Да это понятно

Я не о том

Zart
04.08.2016
07:47:52
достигается такое по разному - либо через cffi/ctypes привязка к нативным либам в рантайме

либо переписывание на чистом питоне аналогов работы с протоколами

Andrew
04.08.2016
07:48:09
Вот есть формат dll или .so

Zart
04.08.2016
07:48:21
это нативные шаред либы

в питоне например можно написать модуль на С, вписать инфу об этом в сетап.пи и при установке его будет собирать тот же компилятор, что собирал питон

т.е. та самая студия в винде, гцц в позиксах, вот это всё

Марк
04.08.2016
07:49:38
ты сравниваешь жопу с пальцем - раз и что именно хуевого-то в сравнении с, я так и не понял
Тем, что это не универсальный драйвер. А на тему спецификации, покажи реализацию аналога DBI - и я заткнусь.

Andrew
04.08.2016
07:49:39
Ну. Можно .so "от перла" использовать с питоном, написав нужную обвязку?

Zart
04.08.2016
07:49:46
для упрощения этой задачки есть Cython, sip, SWIG..

но например pyodbc - это обвязка вокруг нативного одбц апи (unixODCB, win32 odbc), который в свою очередь юзает родные дрова от вендоров

Andrew
04.08.2016
07:50:47
Вопрос был теоретический ;)

Zart
04.08.2016
07:51:14
adodbapi точно так же оборачивает OLEDB

Google
Zart
04.08.2016
07:52:10
причем можно заюзать через него оледбшный враппер ODBC и получить цепочку python - oledb - odbc - db

потом это всё гонять в контейнере внутри виртуалки, которую крутить под эмулятором

pkzip.zip

Марк
04.08.2016
07:53:09
Кстати, в пехепе на семерку портировали их дб драйвер?

Zart
04.08.2016
07:53:25
чо?

в пхп как всегда зоопарк из набора схожих, но разных дров

плюс отдельный зоопарк PDO плюс еще и отдельный зоопарк с DB в Pear

Марк
04.08.2016
07:55:10
Не, ну должен же быть какой-то мейнтримовый коннектор

Который все юзают

Zart
04.08.2016
07:55:22
три драйвера для mysql, из которых один наконец-то прикончили два драйвера для MS, и хз какой хуже

Bulat
04.08.2016
07:55:37
а за счет чего в питоне пишется связка с демонами линукса?

Марк
04.08.2016
07:55:47
Че?

Zart
04.08.2016
07:55:48
связка чего?

Марк
04.08.2016
07:56:06
Чувак, ты понимаешь, что такое демон в линухах?

Bulat
04.08.2016
07:56:21
не особо

Zart
04.08.2016
07:56:34
в линуксах демонами работают обычные программы

часть из них умеет танцевать в даблфорк, но в последнее время от этой херни стали уходить

Bulat
04.08.2016
07:57:46
как я понимаю какие-то программы или процессы

тоесть например как отслеживать статистику в питоне от нагрузки цп

такая задача интересует

Google
Марк
04.08.2016
07:58:21
Демон в линухах - это не обычная программа. Это программа, которая отвязывается от STDIN, STDOUT, STDERROR, меняет chroot. Карочи, это пара команд в обычной программе

Марк
04.08.2016
07:58:58
Да, не обязательно, но это каноничное его поведение

Zart
04.08.2016
07:59:09
а теперь это еще и dbus-1 сервисы

хуевое поведение, чо

Марк
04.08.2016
07:59:46
Чем? Как-то жили с демонами такими - и норм

Bulat
04.08.2016
08:00:28
" -- stdin (клавиатура), stdout (экран) и stderr (вывод сообщений об ошибках на экран).

Zart
04.08.2016
08:00:41
а как ты думаешь, зачем приходится убивать это говно через cgroups?

Марк
04.08.2016
08:00:45
Если чесн, меня нереально кумарят демоны в стиле /home.vasya/devel/python/script.py

а как ты думаешь, зачем приходится убивать это говно через cgroups?
Пжди, cgroups - это не инструмент убивания жеж, а элегантный инструмент ограничения ресурсов

Admin
ERROR: S client not available

Zart
04.08.2016
08:02:08
т.е. ты вообще не в курсе вопроса...

Марк
04.08.2016
08:02:18
Какого?

Не, мне реально интересно, а то я как бе прочитал всю документацию по cgroups, юзаю их для ограничения ресурсов, а тут ты заявляешь, что это инструмент убийства

Bulat
04.08.2016
08:06:34
ребята, очень интересно вас слушать, но для новичка можете объяснить связь демона, выводов, cgroups

Марк
04.08.2016
08:08:08
class App(): def __init__(self): self.stdin_path = '/dev/null' self.stdout_path = '/dev/tty' self.stderr_path = '/dev/tty' self.pidfile_path = '/tmp/foo.pid' self.pidfile_timeout = 5

tty можно в null. Это я первый попавшийся код скопировал

Марк
04.08.2016
08:09:29
Zart
04.08.2016
08:10:15
тогда вопрос в чем? ты знаешь почему системд настаивает на обязательности цгрупп в первую очередь? чтобы рулить вот теми самыми дерьмонами с даблфорком

Google
Zart
04.08.2016
08:11:18
http://0pointer.de/blog/projects/systemd-for-admins-2.html "Furthermore this can be used to safely kill a service and all processes it created, again with no chance of escaping."

"нафоркают тут, а ты ходи, убирай", - бурчал Системд, подметая таблицу процессов.

Bulat
04.08.2016
08:12:43
а что такое cgroup?

Zart
04.08.2016
08:13:34
это фича конкретно линукса

позволяет вешать на разные объекты ядра метки, которые наследуются производными, что позволяет потом на основе этой информации прикручивать разные инструменты контроля, с более удобной гранулярностью

скажем в традиционном юниксе ты можешь ограничить количество оперативки, которую может сожрать процесс через rlimit/ulimit

но не можешь сделать аналогичное для какой-то группы процессов

Bulat
04.08.2016
08:15:50
прикольно

типо vds? или я путаю

Zart
04.08.2016
08:16:21
с помощью цгрупп ты можешь пометить все процессы одной меткой и потом прикрутить контроллер, который будет следить за тем чтобы совокупно вся группа не могла расходовать больше лимита

в чем-то схоже с управлением ресурсами в опенвз контейнерах, да

Bulat
04.08.2016
08:16:56
это как cloudlinux ?

Zart
04.08.2016
08:16:58
собсно изначально цгруппы пилились для lxc контейнеров

"CloudLinux OS is based on OpenVZ kernel" ммм...

опенвз - идеи те же, реализация другая

Bulat
04.08.2016
08:19:12
я просто был когда-то в хостинговым бизнесе и cloudlinux был прорывом

Zart
04.08.2016
08:19:46
а от проксмокса поди вообще б обкончались

имхо опенвз гуано..

Bulat
04.08.2016
08:20:03
а что это?

Zart
04.08.2016
08:20:36
https://www.proxmox.com/en/

тоже дистр для виртуализации, только кроме овз еще и квм, плюс полный набор инструментов для деплоя и мониторинга

Bulat
04.08.2016
08:21:13
очень интересная тема, вместе с lxc

Zart
04.08.2016
08:21:23
а, они ушли от вз к лхц

Страница 228 из 1885

Эта группа больше не существует Эта группа больше не существует