Уведомления

Группа в Telegram: @pythonsu

#1 Март 18, 2016 16:32:45

zavx0z
Зарегистрирован: 2013-12-29
Сообщения: 40
Репутация: +  0  -
Профиль   Отправить e-mail  

Ступор на Django форуме.

Решил разобраться как все устроено и что от куда и куда. Вот до чего дошел

Вопрос остался не решенным
-Участвуют ли dev пакеты в постоянной связи? Если да, то для чего? И правильно ли вообще отображены связи?

Офлайн

#2 Март 18, 2016 16:51:26

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Ступор на Django форуме.

Многие библиотеки для питона - это порты с сишных библиотек.Почти вся стандартная библиотека, numpy, scipy, shelpy, pyproj, pillow и многое другое. Разумеется, обертка над сишным кодом быстрее, чем код реализованный на питоне. Поэтому часто установка питоньей библиотеки выполняет компиляцию сишного кода. А для этого нужны хидеры сишного кода самого питона и зависимых сишных бибилотек. Что в линуксе выражается в виде dev-пакетов.



Отредактировано FishHook (Март 18, 2016 16:52:04)

Офлайн

#3 Март 18, 2016 17:01:45

zavx0z
Зарегистрирован: 2013-12-29
Сообщения: 40
Репутация: +  0  -
Профиль   Отправить e-mail  

Ступор на Django форуме.

FishHook
хидер
То-есть dev пакеты исполняются один раз для компиляции psycopg для более быстрого доступа к postgresql? Я правильно понимаю?

Отредактировано zavx0z (Март 18, 2016 17:14:21)

Офлайн

#4 Март 18, 2016 17:12:24

slav0nic
Команда
От: dp.ua
Зарегистрирован: 2006-05-07
Сообщения: 2260
Репутация: +  41  -
Профиль   Отправить e-mail  

Ступор на Django форуме.

libpython-dev - это лишь пакет с Сшными заголовками (*.h файлы) для сборки модулей написанных на С в бинарный пакеты

исполняются один раз
да

Офлайн

#5 Март 18, 2016 17:18:24

zavx0z
Зарегистрирован: 2013-12-29
Сообщения: 40
Репутация: +  0  -
Профиль   Отправить e-mail  

Ступор на Django форуме.

slav0nic
libpython-dev - это лишь пакет с Сшными заголовками (*.h файлы) для сборки модулей написанных на С в бинарный пакеты
В данном случае тогда сборка psycopg происходит с чем и в какой момент?

Отредактировано zavx0z (Март 18, 2016 17:35:32)

Офлайн

#6 Март 18, 2016 17:45:26

zavx0z
Зарегистрирован: 2013-12-29
Сообщения: 40
Репутация: +  0  -
Профиль   Отправить e-mail  

Ступор на Django форуме.

Значит простым языком можно объяснить так, что psycopg это посредник между python и postgresql. У psycopg выполняется код для связи различных версий с различными заголовками у postgresql и python. Для того, чтоб не исполнять лишний код, мы можем скомпилировать psycopg так, чтоб он работал определенно с данными версиями и работал с заголовками на прямую без использования лишнего кода и естественно без лишних затрат времени?
Или psycopg становится неотъемлемым бинарным кодом Python и как таковой более отдельно не используется?

Отредактировано zavx0z (Март 18, 2016 17:47:38)

Офлайн

#7 Март 18, 2016 18:11:32

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Ступор на Django форуме.

zavx0z
и работал с заголовками
ненене, вам надо почитать про компиляцию и линковку программ Си.



Офлайн

#8 Март 18, 2016 19:03:58

zavx0z
Зарегистрирован: 2013-12-29
Сообщения: 40
Репутация: +  0  -
Профиль   Отправить e-mail  

Ступор на Django форуме.

FishHook
Обязательно почитаю в будущем. Сейчас мне достаточно уже поверхностных знаний, что все это задумано для оптимизации. Спасибо, уважаемое сообщество. Я теперь с вами навсегда повязан. Так, что сильно не ругайте за мои будущие вопросы если они покажутся глупыми.

Офлайн

#9 Март 18, 2016 21:11:01

zavx0z
Зарегистрирован: 2013-12-29
Сообщения: 40
Репутация: +  0  -
Профиль   Отправить e-mail  

Ступор на Django форуме.

Продолжение следует…. Опять в ступоре(

Опытные товарищи, помогите!!! Как берет ngnix статику? Ему кто путь указывает gunicorn или Django? Интерпретатор в этом деле задействован с кем, наверное с gunicorn'ом, он ведь WSGI. Значит, что? Gunicorn делает запрос к Django через интерпретатор на динамику и статику, возвращает ответ через интерпретатор, отдает путь ngnix'у, и отдает динамику клиенту? Ngnix забирает с пути, который ему передал Gunicorn статику? Данные из базы идут в Django через интерпретатор и из Django снова через интерпретатор в gunicorn?
Похоже Gunicorn тут самый центровой конь однорогий! Видимо он спрашивает у клиента че ему надо, потом спрашивает у Django с кого что спросить и кого куда послать. А Django мозг, всезнающий. Ngnix шестерка.
Все-таки наверное динамические данные формируются из Django и Postgresql'a в нем, а ngnix'а он только постоянно куда-то посылает? Так по логике вещей должно наверно быть?

Офлайн

#10 Март 18, 2016 21:26:47

ayb
Зарегистрирован: 2014-04-01
Сообщения: 297
Репутация: +  24  -
Профиль   Отправить e-mail  

Ступор на Django форуме.

nginx это посредник между клиентом и приложением. Он вообще статику не будет сам раздавать если это явно не указать.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version