@pydjango

Страница 762 из 1273
Артемий
30.11.2017
15:17:58
Ну стоит ли время тратить, смотреть как его настроить

Senpos
30.11.2017
15:18:09
Торнадо асинхронный, он держит много запросов но хз, исходя из задачи выбирать надо наверное

Никита
30.11.2017
15:18:24
Jentry
30.11.2017
15:18:59
Ну стоит ли время тратить, смотреть как его настроить
смысле если ты возьмешь wsgi и запустишь его с tornado, то разницы не будет, только потеряешь масштабирование за счет потоков

Google
Jentry
30.11.2017
15:19:26
если будешь изначально писать на торнаде, то у тебя будет возможно быстрый по отклику сервис, но опять же ты будешь думать как его масштабировать

Артемий
30.11.2017
15:20:10
Понятно

Artem
30.11.2017
15:21:12
А опыт с tornado + nginx есть у кого? Что можете сказать?
Нормально настраивается, главное прокинуть хедеры для Connection

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

Jentry
30.11.2017
15:24:38
а сталкивался кто, что при использовании uwsgi+nginx в докере (два контейнера) на нагрузке начинают валить ошибки connection refused? пока склоняюсь, что виновник - докер

Artem
30.11.2017
15:27:55
Раздавать статику uwsgi будет явно медленнее.
Возможно, не отрицаю, но в большом случае, бекенд не использует статику ( API + S3 + RDS )

Senpos
30.11.2017
15:31:47
да и в обычном случае статику можно сплавить на с3

Кстати, по поводу Докера, вы сами пишите бойлерплейт для Джанги? Или откуда-то берете?

Jentry
30.11.2017
15:38:15
Кстати, по поводу Докера, вы сами пишите бойлерплейт для Джанги? Или откуда-то берете?
смысле какой бойлерплейт? reqirements и чистый образ python3 использую, например

для flask небольшие проекты делаю в одном образе nginx+uwsgi+flask, но это не тру-вэй

Senpos
30.11.2017
15:42:00
смысле какой бойлерплейт? reqirements и чистый образ python3 использую, например
Знаю, что разносят в отдельные контейнеры nginx, django, postgres, Не уверен на счет uwsgi все это скомпоновать есть темплейт для такого? или так или иначе докерфайл и докеркомпоуз сами пишите

Jentry
30.11.2017
15:42:48
скомпоновать можно, вероятно, если поискать, то можно найти, я только для flask могу такой подкинуть

Google
Jentry
30.11.2017
15:43:07
но это не продакшен под нагрузку

Serge
30.11.2017
15:48:13
Завтра релиз 2.0? Кто-то уже перевел на двушку хоть один проект?

Pavel
30.11.2017
15:49:17
А какой православный способ отправлять email рассылки? Вот конкретно нужно для каждого юзера составить HTML письмо, с его именем, т.е. для каждого отрендерить HTML через шаблонизатор. А потом эту пачку отправить. Инетресно, как следить за тем, чтобы все дошло, чтобы по времени не тупило или как-то в отдельном месте работало, а не во view. Подскажете?

Pavel
30.11.2017
15:53:33
Я бы взял некий сервис с API и погонял бы его. Например mailgun, mailjet, amazon ses и куча других
Они платные. Не против написать велосипед, если это не займет колоссальных усилий

Bob
30.11.2017
15:54:20
Mailgun Emails Price Per Email Total Price 0 - 10,000 Free

Pavel
30.11.2017
15:54:39
Свой сервер даже поднимать не стал бы, столько возни и возможные риски со спам листами и прочими ништяками ...
все же много там деталей и камней, чтобы спотыкаться, да? Поэтому и спраштваю, с высока не видно ничего, все понятно уже во время разработки, на деталях

Bob
30.11.2017
15:56:03
Не знаю как у других, у товарищей, которые не сведущи особенно в вопросах почты - сталкивались, что попадали под санкции так, что почта вообще не ходила в нужные места. По этому на свой почтовик нужен какой никакой спец по настройке и поддержке ИМХО

Pavel
30.11.2017
15:56:32
у нас безлимитные сообщения есть, в ажуре. Но вот никакой инфраструктуры остальной нет

вернее это не с ажуром наверное идет, а от офис 365, но не суть

Bob
30.11.2017
15:57:59
Это локальный виндовый софт?

Pavel
30.11.2017
15:59:14
не знаю, это у меня есть почта от микрософта, настройки который я прописал в джанге (прям как вдоке джанги). Можно gmail юзать, но там ограничения. Так вот у нас таких нет. Все быстро и безлимитно

но у нас проект в ажуре, там размечается приложение.

вот все от микрософта

Bob
30.11.2017
16:01:07
вот все от микрософта
SMTP на то и протокол, так что нужно вашу Azure прокопать на предмет отправки почты и пользоваться стандартными батарейками джанги тогда

Pavel
30.11.2017
16:02:29
SMTP на то и протокол, так что нужно вашу Azure прокопать на предмет отправки почты и пользоваться стандартными батарейками джанги тогда
У меня пока больше вопросов вызывает, как рендерить, скажем даже для 1000 юзеров HTML шаблоны. Это же время, в джанге шаблонизатор вроде не быстрый. + ждать отправки. Это все через очередь выполнять следует?

Bob
30.11.2017
16:03:24
Ну тут все просто, сделать сначала как есть, просто, тупо, медленно, но что бы работало, затем оптимизировать и улучшать.

Когда будет реализация, хоть какая то, будут видны узкие места и под них уже будет решение, может так получиться, что вы почту вообще в итоге будете в стороне собирать и отправлять.

Pavel
30.11.2017
16:08:53
хорошо, спасибо

Google
Bob
30.11.2017
16:10:55
И еще, 1000 пользователей серьезная цифра мне кажется, что бы экономить, можно и прикупить сервис, время экономится, плюс боссам всякие отчеты можно показывать

SendGrid - 40000 писем в месяц 10 бачинских

Никита
30.11.2017
16:18:08
Либо через сторонний сервис. Но для него обычно тоже очередь.

Pavel
30.11.2017
16:20:20
Либо через сторонний сервис. Но для него обычно тоже очередь.
А как сторонние сервисы обычно работают? Просто не использовал вообще. Вот скормил я , например через SDK или API ему кучу HTML сообщений и мне ждать сколько ответа от него? А что, ели много данных, мне же не ждать его пол часа, как он мне ответит, что все хорошо?

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

Bob
30.11.2017
16:23:05
https://documentation.mailgun.com/en/latest/api-sending.html#examples

Сверху язык нужно выбрать и будут примеры на нем

Пример mailgun: def send_complex_message(): -> просто отправляет post запрос с помощью requests

Далее ответ: { "message": "Queued. Thank you.", "id": "<20111114174239.25659.5817@samples.mailgun.org>" }

Т.е. мы делаем таблицу с сообщениями и собираем по ним инфу - статусы и прочее. Затем можно переодически статусы перезапрашивать.

Pavel
30.11.2017
16:25:39
Далее ответ: { "message": "Queued. Thank you.", "id": "<20111114174239.25659.5817@samples.mailgun.org>" }
ага, вижу, ответ сразу отдает, просто статус говорит. Спасибо

Bob
30.11.2017
16:25:47
Все функции запросов можно пускать через очереди и т.п.

Т.е. настроить celerybeat к примеру, что бы он ходил, собирал от туда что то периодически

Pavel
30.11.2017
16:27:21
примерно понял, куда копать можно. Спасибо

Bob
30.11.2017
16:28:25
Ну и все засисит от объемов, если много и критично для бизнеса - тогда да, нужно работать с очередями, формировать их, проверять и следить. А если там трем колекам два письма отправить в день, то не заморачиваться и долбить простым циклом, пусть даже отдельной командой по крону и т.п.

И еще, если задача не большая, совсем не обязательно тянуть в проект celery, можно взять штуку проще, тот же huey

Bob
30.11.2017
16:30:59
А писем то сколько? В день?

Pavel
30.11.2017
16:32:07
массовая рассылка пока для 1 типа письма - уведомления перед началов вебинара

Google
Eugene
30.11.2017
16:32:11
мне в последний раз django-rq понравился

Pavel
30.11.2017
16:32:19
т.е. вебинары 1 раз в неделю, иногда чаще могут быть

мне в последний раз django-rq понравился
вот про него слышал, да, чтобы не тащить комбайн celery

Bob
30.11.2017
16:33:13
celery велик и могуч ?

Admin
ERROR: S client not available

Bob
30.11.2017
16:34:04
Pavel
30.11.2017
16:35:41
1 раз в неделю 100 писем?
1-2 раза в неделю пока, да. Не больше 100 пока. Остальные транзакционные письма отправляются обычным способом из коробки джанги, во время всяких собитий, которые делает юзер, типа подтверждения всяких регистраций, смены почты и т.д

Bob
30.11.2017
16:38:10
Павел, ну вы делайте проще пока, по мере роста будете улучшать. Лучше работающий код, чем размышлизмы о том, что вам предстоит своей рассылкой обеспечить весь африканский континент и Индию ?

amureki
30.11.2017
16:38:11
Vitaly
30.11.2017
16:57:38
кто нибудь деплоил на AWS Lambda c использованием zappa?

почему то template для админа не подцепляется при деплое

Serge
30.11.2017
17:07:58
И что как полет нормальный?

Ahmed
30.11.2017
18:11:02
Ребята, у кого была такая проблемы при запуске джанги в контейнере https://hastebin.com/qojejehufu.sql

ModuleNotFoundError: No module named "'config"

Рустам
30.11.2017
18:22:08
Код в студию

Senpos
30.11.2017
18:23:09
ModuleNotFoundError: No module named "'config"
"'config" Там одиночная кавычка перед c затесалась. Точно не очепятка?

Google
Рустам
30.11.2017
18:25:27
Сложновато по трейсу определять ошибку

Ahmed
30.11.2017
18:34:27
"'config" Там одиночная кавычка перед c затесалась. Точно не очепятка?
У меня контейнер активирует переменные окружения services: tracker: image: tracker restart: always env_file: - tracker/env/.env_local ports: - "8000:8000" depends_on: - mysql

в tracker/env/.env_local написано так DJANGO_SETTINGS_MODULE="config.settings.local"

Я хз может в синтаксисе проблема

Senpos
30.11.2017
18:41:46
я бы грепнул проект на 'config авось вскроется)

Sergey❄️
30.11.2017
19:15:17
ugettext доступен без инициализации приложения?

допустим, я использую вот это https://github.com/masnun/django-orm-standalone и хочу ещё переводить через джангу, никаких проблем не должно же быть?

ivan
30.11.2017
19:17:52
почему может не срабатыать migrate? пишет no migrations to apply, хотя makemigrations создал файл с новой моделью

и в Operation to perform миграцию видно

malcev
30.11.2017
19:44:58
всем привет, я новичок ,впервые вижу django , да и сам python). Подскажите пожалуйста, могу ли я просто без создания суперюзера(или вообще без юзера делать CRUD к своей базе), у меня задача, отрисовать кнопку на странице и по клику обращаться к одной табличке

:)

Страница 762 из 1273