
Iliya
19.11.2018
13:18:09
неа, пока оставил как написал выше, не красиво, но работает
Плюс оказалось в базу кладется с задержкой не на 1, а на 2 часа....ппц

Vaderoff
19.11.2018
13:20:50

Vasya
19.11.2018
13:22:14
Юзают как-то старую апишку, узнай у них как они это делают.

Digital
19.11.2018
13:28:05
Драсти, есть хороший гайд/книга/видеоряд по asyncio желательно с джанго?

Google

Tishka17
19.11.2018
13:28:18
джанго разве не синхронная?

Digital
19.11.2018
13:29:08

Vasya
19.11.2018
13:29:13

Pavel Tyavin
19.11.2018
13:29:44

Digital
19.11.2018
13:29:52

Казимир
19.11.2018
13:30:01
кто какие библиотеки для stomp юзал?

Tishka17
19.11.2018
13:30:02
может вообще эти вычисления должны быть не в джанго, а в celery?

Vasya
19.11.2018
13:31:01

Dark
19.11.2018
13:32:07
Что же делать если веб приложение написанное на фласке падает прибольшом колличестве запросов

Tishka17
19.11.2018
13:32:33
много это сколько?
как запускаешь?

Dark
19.11.2018
13:32:44

Google

Digital
19.11.2018
13:32:50

Dark
19.11.2018
13:32:55
В минуту

Tishka17
19.11.2018
13:32:55
10000 rps?
в минуту у меня держал на синтетике

?? Eugene
19.11.2018
13:33:28

Dark
19.11.2018
13:33:34
Ну он обрабатывает один, к нему приходит новый

Tishka17
19.11.2018
13:33:36
в секунду у меня база ложилась

Tigran
19.11.2018
13:33:39
Ну 10К в минуту это уже многовато

Dark
19.11.2018
13:33:57

Tishka17
19.11.2018
13:34:04
а что пробовал?
uwsgi?
как вообще запускаешь?
ssl есть? nginx юзаешь?

Lazoreth
19.11.2018
13:37:21
Товарищи, подскажите пожалуйста. Можно ли как-то отправить в sqlalchemy запрос, который выполнится только после обновления записи?
Хочу long polling сделать, а как с бд быть не пойму

Tishka17
19.11.2018
13:38:10
давай конкретнее

Lazoreth
19.11.2018
13:39:02
давай конкретнее
Окей. В общем щас у нас на проекте баланс долбится каждые 8 сек. Это 95% всех запросов вообще. Я хочу сделать что бы баланс приходил только по изменении. Т.е. делается запрос в бд - и воркер висит пока баланс не изменится. А из бд ответ приходит только при изменении записи

Vasya
19.11.2018
13:39:17
https://docs.sqlalchemy.org/en/latest/orm/events.html#sqlalchemy.orm.events.MapperEvents.after_update

Google

Tishka17
19.11.2018
13:39:45

Vasya
19.11.2018
13:40:51
Так же как и если один, а в чем должна быть разница?

Lazoreth
19.11.2018
13:41:08

Tishka17
19.11.2018
13:41:08
а хз как оно реализовано
допустим если постгрес
или оно выполнится в рамках того же процесса, что апдейт делает?
туплю

Lazoreth
19.11.2018
13:42:44
Я вот такую штуку сделал, но она сразу None возвращает:
@classmethod
def get_by_id(cls, db, user_id) -> 'UserModel' or None:
try:
return db.query(cls).filter_by(id=user_id).one()
except NoResultFound:
return None
@classmethod
def get_by_id_with_listen(cls, db, user_id) -> 'UserModel' or None:
listener = listen(UserModel, 'after_update', cls.get_by_id(db, user_id))
return listener
сверху штатная функция запроса, а вторая вроде как должна как раз после апдейта результат возвращать

Tishka17
19.11.2018
13:43:10
видимо так надо делать:
в after_update кладем сообщение в очередь
в другом месте слушаем очередь
очреедь - zeromq, rabbitmq, redis

Lazoreth
19.11.2018
13:43:40
Неудобно будет очень
Воркер и так на rabbitmq работает

Tishka17
19.11.2018
13:43:49
а как?

Lazoreth
19.11.2018
13:44:15
Я всё ещё не могу понять как слушать конкретную запись в бд

Tishka17
19.11.2018
13:44:16
кладет один процесс, уведомление должен получить другой

Lazoreth
19.11.2018
13:44:38
Мы же не можем все ивенты слушать
Блин, а по другому то походу и нельзя
Придётся наверное вручную какую-то логику с кэшем выстраивать =\

Google

Vasya
19.11.2018
13:47:49
Так тебе в функцию которая срабатывает от эвента будет прилетать инстанс который заапдейтился, вот его и проверяй, нужный он тебе или нет. Или я что-то не понимаю.

Lazoreth
19.11.2018
13:48:51
А, ну как вариант
Надо попробовать, спасибо

Mark
19.11.2018
13:54:04
Здравствуйте. Как код на python 2.7 переписать на 3.6?

Michael
19.11.2018
13:56:43
Руками, берешь и переписываешь, странный вопрос

?? Eugene
19.11.2018
13:56:49
замени print на print()
:)

Tishka17
19.11.2018
13:57:08

Tigran
19.11.2018
13:57:23
есть же автоматические тулзы

Mark
19.11.2018
13:57:26

?? Eugene
19.11.2018
13:57:40
и всё?
не все, но можешь начать с этого :)
посмотри на 2to3

Tishka17
19.11.2018
13:58:33
ну ещё все нерешенные проблемы с кодировками надо будет решить

?? Eugene
19.11.2018
13:58:36
но 2 to 3 в полностью автоматическом режиме не переведет на третий

Tishka17
19.11.2018
13:58:37
там где костыли ставил

?? Eugene
19.11.2018
13:59:05
Вкратце, запускаешь код, смотришь где упало - фиксишь, continue

Tishka17
19.11.2018
13:59:53

nnm
19.11.2018
14:01:03

Alex
19.11.2018
14:05:02

Казимир
19.11.2018
14:20:34

Google

Казимир
19.11.2018
14:22:27

Максим
19.11.2018
14:38:52
Всем привет. Разбираюсь в питон, столкнулся с глупой проблемой. Как ко всем элементам списка применить определённые действия?
Есть список list_ip, содержащий 2 ip-адреса. Как сходить на оба удалённых хоста и выполнить на них команду? Отрабатывает только на последнем. Перед работой paramiko печатаются оба адреса
https://pastebin.com/53SA1pme

Tishka17
19.11.2018
14:40:07
у тебя вызов вне цикла

Alex
19.11.2018
14:43:16
> Отрабатывает только на последнем. Перед работой paramiko печатаются оба адреса
Потому что было бы неплохо разобраться с тем, как работают отступы в питоне.

Максим
19.11.2018
14:50:58
Всем спасибо, понял свою глупость

Sharifkhon
19.11.2018
15:06:27
Привет всем!!

?? Eugene
19.11.2018
15:10:32
Привет всем!!
Здравствуй. Проходи, садись. Ознакомься с nometa.xyz

Sharifkhon
19.11.2018
15:10:54
Спс

Anastasiia
19.11.2018
15:24:54
Господа, 1 декабря в Москве и 9 декабря в Спб пройдёт карьерный экспертный форум IT Trends 2018.
Можно будет найти работу в крутых российских и зарубежных компаниях, а ещё послушать лекции экспертов в сферах: Big Data, Blockchain, IoT и ИИ
Организаторы те же, что и у Гик Пикника, так что, точно будет круто
Если кому интересно, можно бесплатно зарегестрироваться тут:
Москва: https://dreampicnic.timepad.ru/event/802330/
СПБ: https://dreampicnic.timepad.ru/event/802366/