
Serge
17.11.2016
19:03:43
А подписаться на поток изменений с клиента, на те ивенты, которые он видит?
Я не понимаю при чем тут план по времени
Ну да ладно

Roman
17.11.2016
19:03:59
А?
Ну с некоторым интервалом бегать по таблице и смотреть что пора обрабатывать. Дельта нужна чтобы не жевать вообще все из прошлого

Google

Serge
17.11.2016
19:04:44
От последней проверки до сейчас

s0b0lev
17.11.2016
19:05:01
по этому клиент зная date_from объектов которые его интересует - сможет сам с ними что нибудь сделать

Roman
17.11.2016
19:14:31

Vitali K.
17.11.2016
21:04:45
https://www.pythonsheets.com/

Roman
17.11.2016
21:51:45
А использует кто orm для монги?
Вот у джава-программист батхерт: код, считающий сумму чисел до 1 млрд на pypy исполняется за 3с, а его вариант на java - 27c
https://gist.github.com/olegchir/91acba30cbdc0fb971b03d59a34eeff4

Zart
17.11.2016
22:24:13
против print(sum(range(1000000000))) ?

Roman
17.11.2016
22:31:20
pypy у меня жует это за 3с. Вариант с reduce и лямбдой - тоже 3с

Google

Zart
17.11.2016
22:36:17
есть, как чукча-читатель

Vitali K.
17.11.2016
22:48:43
kotik-mbp:~ kotik$ time pypy -c "print(sum(range(1000000000)))"
499999999500000000
real 0m1.322s
user 0m1.280s
sys 0m0.034s

Serge
18.11.2016
00:27:20

Roman
18.11.2016
06:28:00

Serge
18.11.2016
06:28:55

Roman
18.11.2016
06:33:19
Какие?

Mehti
18.11.2016
06:39:52
Я использовал mongoengine для хранения узлов дерева сад

Roman
18.11.2016
06:40:44

Dmitry
18.11.2016
06:59:31

Serge
18.11.2016
07:19:07
И как впечатления?
Ну, чтобы они были адекватными, надо еще реализовать без ME. Там будет все просто и очевидно
Вообще, мне кажется mypy и pymongo достаточно

Mehti
18.11.2016
07:27:05
у меня был выбор между графовыми бд и nosql (документо-ориентированными), в итоге выбор пал на mongo просто потому что биндинг поддерживаемый
ну и потому что в инфраструктуре должна была быть одна бд и коллеги которые на других языках писали использовали ее

Aleksander
18.11.2016
11:24:01
что-то я не воткну
есть тесты на pytest, django
тест выполняется по несколько секунд на запрос какой-нибудь (POST, GET)
--reuse-db
--nomigration
есть
куда копать ?

Serge
18.11.2016
11:24:43
в одном треде ты идешь сам к себе и хочешь получить ответ?

Aleksander
18.11.2016
11:30:45
в смысле ?

Serge
18.11.2016
11:31:59
ну ты POST / GET по реальному http гонишь?
да и какая разница. по любому GIL

Aleksander
18.11.2016
11:32:27
self.client.get()
self.client.post()

Google

Aleksander
18.11.2016
11:32:49
они последовательно выполняются
без xdist
откуда GIL ?

Serge
18.11.2016
11:33:16
ну а почему еще оно можешь тупить?
потрейси
в IDE или pdb

Vitali K.
18.11.2016
11:34:15
может тайминги проставить
на какой-то глубине стека найдешь затыки
че гадать то))

Aleksander
18.11.2016
11:35:57
руками ? у py.test нет чего-то уже готового для этого ?
есть --duration но мало

Vitali K.
18.11.2016
11:36:11
ну руками да, а че

Vitali K.
18.11.2016
11:36:18
это минутное же дело)

Serge
18.11.2016
11:37:31
только если будешь принтить, не забудь, что питест подавляет вывод, надо его либо включить, либо зафейлить тест, чтобы увидеть

Vitali K.
18.11.2016
11:38:04
Можно накидадать (скопипастить из интернета) декоратор для ф-ци, который будет принтить время выполнения ф-ции.
ну другой способ закоментить какие-то ветки кода подозрительные
Можно профайлер включить. Но я в нем больше толку вижу если тестируешь на нескольких итарциях

Roman
18.11.2016
11:41:39
спасибо, но нет.
я бы хотел ещё иметь лимиты на длину строки, всякие choices, required

Google

Vitali K.
18.11.2016
11:44:30
может PG? :)

Serge
18.11.2016
11:45:48

Roman
18.11.2016
11:46:06

Serge
18.11.2016
11:46:07
Choices через enum и mypy

Roman
18.11.2016
11:46:44

Serge
18.11.2016
11:46:46
https://docs.mongodb.com/v3.2/core/document-validation/

Roman
18.11.2016
11:46:53

Serge
18.11.2016
11:47:01

Roman
18.11.2016
11:48:20
ну... выглядит это вырвиглазно

Admin
ERROR: S client not available

Serge
18.11.2016
13:45:52
http://www.fedmsg.com/en/latest/
внезапно
по ходу я в это буду копать, ждите доклада
как раз в январе свободно, времени хватит

GNU/Docker
18.11.2016
13:48:18
Опа
Очередной дбас?

Zart
18.11.2016
13:48:27
когда это начинали пилить оно было на 0mq

GNU/Docker
18.11.2016
13:49:27
Окей

Zart
18.11.2016
13:50:26
точнее оно пабсаб насколько помню. сорцы не копал но про архитектуру читал

Serge
18.11.2016
13:50:55
да, я вот пока читаю, там 0mq упоминается, но до текущего я пока не дочитал

Google

Serge
18.11.2016
13:51:05
есть пара кейсов,, попробую применить

Zart
18.11.2016
13:51:40
так как я пакаджером не стал, то интерес пропал

Serge
18.11.2016
13:51:50
надо посмотреть как оно с большими сообщениями и как там с роутингом и приоритетами.
ну оно теперь Federated Message Bus. универсальное

Zart
18.11.2016
13:54:07
у меня давно ощущение что новье пилят в основном в федоре с сузей, а остальные пакуют и сруться о политике

Serge
18.11.2016
13:59:15
ну еще в каноникал пилят, но при этом своё вместо существующего, велосипедисты
а пилят там, потому что RedHat одобряе
я тут, кстати, научился пользоваться pip freeze :)
в смысле вот так
pip install --upgrade -r requirements.in
pip freeze -r requirements.in > requirements.txt

Aleksander
18.11.2016
15:52:20
Pip-tools не ?)

Serge
18.11.2016
15:52:40
в requirements.in получаются только мои зависимости иногда даже без версий или прост ос ограничениями, а в requirements.txt — всё с закрепленными версиями. и дальше всё после меня ставится из txt
причем оно там еще каментом разделяет что поставлено по исходному файлику, а что по зависимостям закреплено
ну вот freeze с -r - очень удобно оказалось, то что надо

Zart
18.11.2016
15:57:40

Serge
18.11.2016
15:59:14
зачем setuptools, кроме setup.py ?

Zart
18.11.2016
16:00:48

Serge
18.11.2016
16:01:27
ну это модуль, я знаю что оно умеет, но зачем его руками дергать, кроме случаев, когда оно нужно
вот просто в generic проекте

Zart
18.11.2016
16:02:13
я имел в виду понимать его работу и тулзы к нему

Roman
18.11.2016
16:20:38

Vitali K.
18.11.2016
16:21:18
А че?