
Tishka17
10.06.2019
05:51:37
Я дал конкретную строку, спросил как она должна разделиться. Ты ответил
Где?
Ты в курсе, что такое пример?
Или эталон

Google

Tishka17
10.06.2019
05:52:26
Или тест?

Artemij
10.06.2019
05:52:31
То есть из "Иван Васильевич, Петр Иванович" должно получиться ",", ", " и " ,"?
"а, б,в , г"
Должно стать списком (а, б, в, г)

Tishka17
10.06.2019
05:53:09
Итого: из строки "Иван Васильевич, Петр Иванович" должно получиться а, б, в, г

Алексей
10.06.2019
05:53:12
Я нашел решение

Tishka17
10.06.2019
05:53:51
Тяжело тебе будет программировать, если ты не можешь конкретный пример рассмотреть и ответить на вопрос конкретно

Алексей
10.06.2019
05:54:22
нет

Tishka17
10.06.2019
05:54:41
Тогда бля ответь во что превратится строка "Иван Васильевич, Петр Иванович"

Алексей
10.06.2019
05:54:42
def MAprice(): #Берет значение close всех свечей за заданный период(periodSMA) и складывает их, а потом делит на период, Так мы получаем скользящее среднее
Svechi = client.Trade.Trade_getBucketed(
binSize=timeframe,
symbol=valuta,
count=periodMA,
reverse=True
).result()
FullClose = 0
for i in Svechi[0]:
FullClose += i['close']
pass
SMA= FullClose / periodMA
time.sleep(0.7)
return SMA

Tishka17
10.06.2019
05:55:01

Artemij
10.06.2019
05:55:25

Tishka17
10.06.2019
05:55:53

Google

Artemij
10.06.2019
05:56:07
Нет

Tishka17
10.06.2019
05:56:17
Бля

Artemij
10.06.2019
05:56:17

Tishka17
10.06.2019
05:56:23
Мог просто ответить на вопрос

Artemij
10.06.2019
05:56:25

Tishka17
10.06.2019
05:56:34
Ну тогда сплит и стрип
[s.strip() for s in data.split(',')]
Ну или регуляркой

Artemij
10.06.2019
05:57:37

Tishka17
10.06.2019
05:58:00
'\s*,\s*'
Какой-то я злой с утра

Влад
10.06.2019
06:27:02
Как удалить все спецсимволы их строки

Aragaer
10.06.2019
06:27:55
что такое спецсимволы?

Sergei
10.06.2019
06:28:38

Влад
10.06.2019
06:29:14
Ну тип перенос строки и все такое

Егор
10.06.2019
06:31:39
ээээ оно само так не работает.
возвращаясь к приколам с Celery. Воркер запущен так: celery worker -A app.celery в коде есть цикл - для каждого элемента списка запусьить сельдерейную таску с функцией. В функции используется logging для логирования. Результат: [2019-06-10 06:23:04,573: WARNING/ForkPoolWorker-1] [rt_1559914477.164] Watching...
[2019-06-10 06:23:04,574: WARNING/ForkPoolWorker-2] [rt_1559914477.164] Watching...
[2019-06-10 06:23:04,575: WARNING/ForkPoolWorker-3] [rt_1559914463.163] Watching...
[2019-06-10 06:23:04,575: WARNING/ForkPoolWorker-4] [rt_1559916637.176] Watching...

Tishka17
10.06.2019
06:31:40
Хм. Перенос строки - спец символ?
А пробел - спецсимвол?

Google

Tishka17
10.06.2019
06:33:40
Хотя я все пропустил

Вадим
10.06.2019
06:34:01
Всем привет)Работаю с распознаванием объектов.Так вот, к примеру, если мяч находится в воротах, то как мне в БД добавить в колонку гол +1 и т.д.

Егор
10.06.2019
06:34:08

Tishka17
10.06.2019
06:34:10

Егор
10.06.2019
06:34:30
внутри тасок бесконечный цикл с прерыванием при определенном условии. крорче стрим.

Tishka17
10.06.2019
06:34:36
Омг
И как по твоему селери это должен делать?

Егор
10.06.2019
06:35:04
мне уже сказали что это не совсем целевое использование celery)

Tishka17
10.06.2019
06:37:12
А воркеры запусти заранее

Дмитрий
10.06.2019
06:39:05

Егор
10.06.2019
06:39:27
И как по твоему селери это должен делать?
начну с того что проблема - заставить flask_socketio (вместе с gevent) работать с несколькими ядрами. Из вот этих самых стримах, которых может параллельно висеть несколько, шлется сообщение по вебсокетам. На потоках все работало на ура. Но нагрузочное тестирование показало проблему, утилизируется только одно ядро.
Я пробовал юзать multiprocessing - но ни с gevent ни с flask_socketio он не дружит.
На данный момент, как я вижу, селери должен запускать в одном воркере одну задачу. За счет того что воркеры запускаются в отдельных процессах, нагрузка балансируется.

Вадим
10.06.2019
06:39:30

Влад
10.06.2019
06:39:35
А как вы их ?

Denis
10.06.2019
06:39:49

Егор
10.06.2019
06:39:51
может я не совсем верно понимаю этот лог, и ForkPoolWorker-* это не номера воркеров, а хуйня какая-то

Tishka17
10.06.2019
06:40:40

Google

Вадим
10.06.2019
06:40:45

Denis
10.06.2019
06:40:52

Егор
10.06.2019
06:41:31
при каждой итерации дата коллектор опрашивается, забирается N последних значений, и отдается по вебсокетам

Tishka17
10.06.2019
06:42:00

Егор
10.06.2019
06:42:25

Вадим
10.06.2019
06:42:35

Tishka17
10.06.2019
06:42:50
Оу

Admin
ERROR: S client not available

Егор
10.06.2019
06:42:53
короче юзаю splunk python sdk для того чтобы работать с результатами поиска
не совсем дата коллектор, но и оно тоже:)

Denis
10.06.2019
06:43:23

Tishka17
10.06.2019
06:43:30
Так, а как ты гарантируешь, что у тебя два воркера не получат одно и то же сообщение?

Вадим
10.06.2019
06:43:42

Tishka17
10.06.2019
06:44:18

Denis
10.06.2019
06:44:31
ImageAi
Похоже, там керас под капотом
Надо искать датасеты с мячами в воротах и дообучать, либо искать одновременно мяч и ворота

Егор
10.06.2019
06:46:32
Или у тебя выборка по условиям?
при запуске приложения запускается поток, внутри которого определяется список id задач, + запускается стрим из rethinkdb - когда задача добавляется с фронта, sid падает в список.
Для каждого из этих id запускается таска. То есть уже на старте у них разных sid. Даже если поисковый запрос одинаковый.
соответственно внутри стрима опрос по sdk идет относительно униикального id, по вебсокетам шлется в уникальный неймспейс (тоже по id)

Вадим
10.06.2019
06:47:05

Егор
10.06.2019
06:48:56
на данный момент совсем не понимаю почему для одной и той же таски, которая по ходу выполнения кода точно должна запуститься только 1 раз, выделяется ForkPoolWorker-1 и ForkPoolWorker-2

Google

Tishka17
10.06.2019
06:49:07
Я не понимаю, а зачем тут селери

Егор
10.06.2019
06:49:09
а для остальных таких же только по одному (воркеру?)

Tishka17
10.06.2019
06:49:20
У тебя несколько процессов, которые обслуживают свои таск ид

Егор
10.06.2019
06:49:26

Tishka17
10.06.2019
06:49:39

Егор
10.06.2019
06:49:44

Daniil (a1mirr) NN
10.06.2019
06:49:46
и другие части других футболистов

Егор
10.06.2019
06:51:07
Эээ. В смысле?
для того чтобы flask_socketio юзать из-пот Тредов, эти треды в принципе должны быть отравлены гевентом, или гринлетом. То есть родные питонопотоки уже по умолчанию в пролете
собственно gunicorn с гевент воркером нужно запускать, или прописывать манки патчинг
иначе сообщения не шлются
так вот, все это ограничено лишь потоками. Если инкапсулировать функцию в процесс, из нее эмиты так же не будут работать

Amaro
10.06.2019
06:52:08

Tishka17
10.06.2019
06:52:57
Ну как минимум, всегда можно через nginx балансировать

Егор
10.06.2019
06:54:09

Tishka17
10.06.2019
06:54:13
Ять
У тебя сообщения внутри одного процесса что ли только?

Егор
10.06.2019
06:55:00

Tishka17
10.06.2019
06:55:10
То есть нельзя запустить 10 фласковых процессов на 2 серверах и ещё 10 сокетио на третьем сервере и отправлять сообщения?