
Sergey
26.05.2018
10:26:08

Артур Евгеньевич
26.05.2018
10:26:18
Или горутин это что то другое)?

Sergey
26.05.2018
10:26:27

Артур Евгеньевич
26.05.2018
10:26:28

Google

Maksim
26.05.2018
10:26:33

Denis
26.05.2018
10:26:34
ну в целом да) пхп как инструмент решает свои задачи, на остальное пофиг)

Sergey
26.05.2018
10:27:07
к слову о пиздаболах - devops-ов (или кого-нибудь кто хочет им стать) тут нет кто из Минска?)

Denis
26.05.2018
10:27:07
да лан) в пхп есть норм потоки (да только при наличии расширения, но все же)

Sergey
26.05.2018
10:27:34
в php во всяком случае

Denis
26.05.2018
10:28:00

Артур Евгеньевич
26.05.2018
10:28:06
Я юзаю потоки

Sergey
26.05.2018
10:28:15
ну то есть если твоя задача загрузить процессор на 100% то лучше поднять N-1 воркеров и 1 master процесс который будет раскидывать задачи по ивент лупам

Артур Евгеньевич
26.05.2018
10:28:17
Есть кластеры бд например 40 баз
Я их без потоков хз как обходит был

Maksim
26.05.2018
10:28:38
так же, как и с ними)

Sergey
26.05.2018
10:28:40

Google

Maksim
26.05.2018
10:28:40
только проще

Sergey
26.05.2018
10:28:42
ну то есть блин

Артур Евгеньевич
26.05.2018
10:29:15

Denis
26.05.2018
10:29:38

Sergey
26.05.2018
10:29:42
основной профит тредов относительно процессов - меньший оверхэд. Дается это ценой общего адресного пространство (и да, это вред а не благо). В контексте того что php внутри твоего треда выполняется синхронно а стоимость переключения контекстов между потоком и процессом в целом незначительна - лучше наплодит процессов

Maksim
26.05.2018
10:29:42

Denis
26.05.2018
10:30:33

Maksim
26.05.2018
10:30:42
не проще ли разделить 1 вундер задачу на пачку атомарных и раскидать по процессам?)

Sergey
26.05.2018
10:30:52

Артур Евгеньевич
26.05.2018
10:31:11

Maksim
26.05.2018
10:31:38

Артур Евгеньевич
26.05.2018
10:32:16

Sergey
26.05.2018
10:32:30
это процессы
в процессы все умеют)

Артур Евгеньевич
26.05.2018
10:32:41
Да точняк
Я постоянно путаю :(

Sergey
26.05.2018
10:33:34
может и про то что php хорший ты перепутал?)

Maksim
26.05.2018
10:33:47
удар ниже пояса)
вот серьёзно, в чём профит от 1й вундерзадачи?)
время жрёт, ресурсы выжирает... а если упадёт по пути, что тогда?

Google

Артур Евгеньевич
26.05.2018
10:35:54

Maksim
26.05.2018
10:36:17
так а что тебе мешает 1 задачу разбить на десяток помельче?)

Артур Евгеньевич
26.05.2018
10:37:03

Sergey
26.05.2018
10:37:48

Denis
26.05.2018
10:37:52

Maksim
26.05.2018
10:37:57

Sergey
26.05.2018
10:38:03
не обязательно называть ребенка дебилом, и при этом не заступаться

Артур Евгеньевич
26.05.2018
10:38:07
А так я включил скрипт и пошёл ечть

Maksim
26.05.2018
10:38:19

Maksim
26.05.2018
10:38:37

Артур Евгеньевич
26.05.2018
10:38:53
На самом деле я бы может что и попробовал другое но я в зп потеряю полюбас процентов 40

Aleh
26.05.2018
10:39:04

Артур Евгеньевич
26.05.2018
10:39:20
ясна)
Не ну ты хрень предложил, я вот хз сколько у меня таблиц с сообщениями
А так я написал функцию передал её как колбек в скрипт обхода и всё

Sergey
26.05.2018
10:39:52

Maksim
26.05.2018
10:40:09

Sergey
26.05.2018
10:40:15
никаких pcntl, никакого кода по хранению стэйта, надежно, быстро

Google

Denis
26.05.2018
10:40:44

Maksim
26.05.2018
10:41:09

Sergey
26.05.2018
10:41:23

Артур Евгеньевич
26.05.2018
10:41:30

Denis
26.05.2018
10:41:42
если оно работает с нужным "качеством" за приемлимые сроки и стоимость - то почему бы и не воспользоваться пхп?)

Maksim
26.05.2018
10:41:45

Sergey
26.05.2018
10:41:51

Aleh
26.05.2018
10:42:02
И возобновлять процесс когда вздумается

Admin
ERROR: S client not available

Denis
26.05.2018
10:42:20
обычно без аргументов php защищают
да не) я могу сам накатать отчет на 800 страниц, почему он плохой) и по этой причине я использую как раст так и го для написание специфичных штук)

Артур Евгеньевич
26.05.2018
10:42:40

Sergey
26.05.2018
10:43:05

Denis
26.05.2018
10:43:13
но пхп как правило решает 80% задач быстрее и с удовлетворительным качеством)
ну просто так)

Maksim
26.05.2018
10:43:51
п.с. я сам не на руби пишу, если что, а на пхп в основном. Но тем не менее подход "работает и ок" презираю.

Sergey
26.05.2018
10:43:52

Denis
26.05.2018
10:44:08
я этого не скрываю)

Google

Артур Евгеньевич
26.05.2018
10:45:16
Таблиц?

Maksim
26.05.2018
10:45:41
скорее, диапазонов записей в твоём случае

Артур Евгеньевич
26.05.2018
10:46:05
Нет
Они не подряд идут
Там резолвер который выбирает нужный кластер по пользователю
Так что диапазон от 1 до 1000 может каждое сообщение в разной базе держать

Maksim
26.05.2018
10:47:14
ну значит по кол-ву баз) хоть все 40 разом

Артур Евгеньевич
26.05.2018
10:47:59
Щас вот я запускаю число процессов кратное(в идеале равное) числу серверов

Sergey
26.05.2018
10:48:01

Maksim
26.05.2018
10:48:11
над смотреть что у тебя там за задача, так тяжко накидывать) но варианты как разбить есть всегда 6)

Denis
26.05.2018
10:48:12

Sergey
26.05.2018
10:48:22

Артур Евгеньевич
26.05.2018
10:48:31

Maksim
26.05.2018
10:48:37
поговорим о сагах)

Sergey
26.05.2018
10:48:41
очередь не обязана быть одна. Типа задача "разберись что делать с юзером", потом "вот сходи туда а потом туда"
ладно, делай как хочешь)
тем более если оно уже работает

Артур Евгеньевич
26.05.2018
10:49:19
Что знаяит печально)

Sergey
26.05.2018
10:49:26
я не хочу сейчас рассказывать про построение процесса обработки как пайплайна где можно паралелить отдельные узлы

Артур Евгеньевич
26.05.2018
10:49:37
Делаю чтобы один процесс не бегал между базами и зостами