@oop_ru

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

Sergey
26.05.2018
10:26:27
Это уже больше про жёсткую типизацию вообще. Ну да ладно, аргументы услышал, спасибо)
даже с дженериками в php как была слабая система типов так и остается.

Артур Евгеньевич
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
так же, как и с ними)
Ну вот последний скрипт выполнялся 4 часа, как то хз в 1 поток его запускать

Denis
26.05.2018
10:29:38
даже с дженериками в php как была слабая система типов так и остается.
Ну строгая типизация это все-таки немного другое. И её плюсы мне как раз понятнее. В ответ на вопрос выше на чем писал: паскаль, бд, немного асм, перловка, пхп, и всякие шелл-баш-экшнскрипт на прикладном уровне

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

Maksim
26.05.2018
10:29:42
Ну вот последний скрипт выполнялся 4 часа, как то хз в 1 поток его запускать
если код 4 часа выполняет 1 задачу, значит он хреновый)

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

Sergey
26.05.2018
10:30:52
ну иногда общее адресное пространство может быть нужно, наверное
нужно, что бы обмазываться барьерами и семафорами

Артур Евгеньевич
26.05.2018
10:31:11
если код 4 часа выполняет 1 задачу, значит он хреновый)
Ты что троллишь то меня) поработай в соц сети знаешь сколько юзеры говнвна пишут друг другу. Так что обойти лс даже за ограниченный период довольно нетрививльная задача

Артур Евгеньевич
26.05.2018
10:32:16
процессы?)
Pcntl я юзал

Sergey
26.05.2018
10:32:30
Pcntl я юзал
ну так это не потоки

это процессы

в процессы все умеют)

Артур Евгеньевич
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
может и про то что php хорший ты перепутал?)
Я просто заступаюсь за него, как за ребёнка, который вроде тупой и ты это понимаешь, но типо ты же не дашь ребёнка называть дибилом своего

так а что тебе мешает 1 задачу разбить на десяток помельче?)
И что мне в ручную запускать скрипт для каждой таблицы в каждой базе на каждом сервере?

Denis
26.05.2018
10:37:52
нет ничего прекраснее, чем пхп, притворяющегося эрлангом)
если решает задача - то на остальное пофиг

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

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

А так я написал функцию передал её как колбек в скрипт обхода и всё

Sergey
26.05.2018
10:39:52
Не ну ты хрень предложил, я вот хз сколько у меня таблиц с сообщениями
пишешь скрипт который формирует очередь, складывает какой beanstalkd, и поднимаешь N воркеров

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
Артур Евгеньевич
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
я за любое решение при котором чем меньше кода ты пишешь тем лучше
У нас уже написан скрипт обхода кластеров, так что я пишу ток маленькую функцию которая делает то что надо в рамках 1 таблицы

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

ну просто так)

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

Sergey
26.05.2018
10:43:52
но пхп как правило решает 80% задач быстрее и с удовлетворительным качеством)
на 80% по сравнению с чем? где ссылки на исследование? для smalltalk такие исследования проводились. Для других языков - только цифры с потолка

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
ну значит по кол-ву баз) хоть все 40 разом
ну вот мы ушли от языка к алгоритму)

Sergey
26.05.2018
10:48:22
Так что диапазон от 1 до 1000 может каждое сообщение в разной базе держать
разделяешь обработку на этапы, так и проще и можно скейлить лучше

Артур Евгеньевич
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
Делаю чтобы один процесс не бегал между базами и зостами

Страница 657 из 785