@devops_ru

Страница 1898 из 4568
Vladimir
28.12.2016
08:23:02
или ты знаешь проект досконально, или ты вообще не понимаешь, что происходит, а просто лепишь темплейты на темплейты
Если ты не знаешь что в проекте происходит, то ты начнёшь писать фигово в любом случаи

Max
28.12.2016
08:28:24
почему? просто собираю мнения

Дмитрий
28.12.2016
08:29:16
Коллеги. Собственно есть задачка. В системе периодически происходят события, которые вызывают здоровенную пуш рассылку и шлют кучищу писем на почту. Сидим вот голову ломаем, как кошернее всего сделать очередь для всей этой херни. Может кто поделится опытом?
У меня на nodejs похожая штука крутится, небольшой микросервис. Очередь — небольшой класс с генератором и массивом данных. Любая ширина одновременно выполняемых запросов свободно регулируется)

Google
Max
28.12.2016
08:29:38
не, ноду мы в рассчёт не берём )

Дмитрий
28.12.2016
08:30:32
Ну еси охота голову ломать, то вопросов нет ?

Max
28.12.2016
08:31:05
по моему голову ломать - это писать очередь на nodejs в данном случае ))))

Max
28.12.2016
08:31:28
Так rabbitmq же
рэббит ёбнется

Alexey
28.12.2016
08:31:34
Alexander
28.12.2016
08:31:39
Ой с чего это

Кластер поднимаешь и ставишь лимиты на выбору

Max
28.12.2016
08:31:58
не для того он создан немного

вот сопсно с кластером как раз и будут проблемы, на сколько я прочитал

Alexander
28.12.2016
08:32:20
Клиент на го написал и все

Alexey
28.12.2016
08:32:22
Так rabbitmq же
лол, J - job security! всегда нужен человек который знает, где подёргать rabbit чтобы его отпустило =_)

Max
28.12.2016
08:32:30
на нём и пишем )

Google
Alexander
28.12.2016
08:32:47
С чего вдруг он упадёт то не пойму

Max
28.12.2016
08:33:02
вот как раз селери тут кажется более подходящей йобой

или даже постгрес

Дмитрий
28.12.2016
08:33:08
а как ты эту штуку на несколько машин разнесёшь? да хуй с ним машин, как оно на несколько процессов может быть размазано? =)
While it's obvious that process managers have a lot to offer, many first time Node users deploy their apps to production without a process manager. At Hashnode we have been using pm2, a powerful process manager for Node.js. Also, if you use pm2 you can start your app in cluster mode very easily. pm2 start app.js -i 2 In the above example, i specifies the number of workers you want to run in cluster mode. The best part is that you can now reload the workers one after another so that your app doesn't suffer any downtime during deployment. The following command does it : pm2 reload app If you happen to use pm2, do check out Keymetrics which is a monitoring service for Node.js (based on pm2).

Дмитрий
28.12.2016
08:34:49
Ну вот надо уточнять задачу сразу)

Alexander
28.12.2016
08:35:29
вот, то что и хотел сказать )
Ну так а если лимиты на выборку ставить? Тоже встревать будет?

Max
28.12.2016
08:35:40
в несколько потоков
проблема не в отправке, проблема в наплывае народу в данный момент

стартап ж ёпте

денег нету

Alexander
28.12.2016
08:35:49
Просто гоняли миллионы задач в нем и нормально было

Alexey
28.12.2016
08:35:53
или даже постгрес
мы пробовали юзать mysql как очередь - там можно, но после определённой нагрузки тоже становится понятно, что абстракция немного не та и из-за этого нагрузка на базу становится очень большой, а locking между воркирами через базу работает мягко говоря не оптимально =)

Max
28.12.2016
08:36:22
Ну так а если лимиты на выборку ставить? Тоже встревать будет?
как выше написали, рэббит не для этого сделан

Alexey
28.12.2016
08:37:48
Просто гоняли миллионы задач в нем и нормально было
миллионы — это не обьёмы - если у тебя 100к пользователей (что очень не много для современных стартапов) то у тебя могут десятки миллиардов(10^10 КАРЛ!11) событий проходить через эту очередь в день

Max
28.12.2016
08:39:05
Алексей за меня на вопросы отвечает - чует тему )

здесь речь не о том что вы гоняли. а о том когда оно упрётся

Google
Alexey
28.12.2016
08:40:22
(на одной ноде рэббит работает относительно ок кстати)

Alexander
28.12.2016
08:40:24
миллионы — это не обьёмы - если у тебя 100к пользователей (что очень не много для современных стартапов) то у тебя могут десятки миллиардов(10^10 КАРЛ!11) событий проходить через эту очередь в день
Ну и в чем проблема то. Фигачишь кластер. Разбиваешь на эксченджи и очереди, раскидываешь кластер на 10-20 машин. Ну а просто вы хотите писать свой сервер очередей... когда уже есть готовый, который надо правильно настроить и использовать.

Alexander
28.12.2016
08:43:25
я нечего не говорил про писать своё, мы у себя юзаем kafka - там очень много своих нюансов, но оно скейлится если правильно спроектировать
Ну я чатик почитываю.. тут ноду предлагают дл очереди.. по сравнению с эрлангом, и его возможностью мастабироваться и его потоками - как бы странное предложение

Konstantin
28.12.2016
08:43:33
а я своё писал

на классик асп :D

Alexey
28.12.2016
08:44:21
впрочем очередь поверх mysql скейлится до сотен миллионов пользователей и кода там меньше тысячи строк на Go. Так что тоже себе подход, сильно проще rabbitmq, ибо в отличие от последнего, любой программер может разобраться за пару часов, что тот код делает, что тоже имеет свои прелести.

Roman
28.12.2016
08:46:37
А там на Lua писать скрипты нельзя разве?
Можно, но это немного не то. И оно блочит весь редис

Max
28.12.2016
08:46:41
на одной ноде да ок работает

пока не ёбнется по каким-либо причинам

читай пока не проебёшь очередь

Max
28.12.2016
08:49:21
В общем то, парни, спасибо за подсказки )

Alexander
28.12.2016
08:49:25
читай пока не проебёшь очередь
Ну смотрите сами. Просто самый быстрый вариант. С другой стороны - может вам какой нибудь облачный вариант подойдёт? Типа в ажуре есть очереди и сервис басы всякие. Они на миллиарды рассчитаны. Но тут надо деньги считать)) во всяком случае - интересная задачка ) хотелось бы почитать потом как решили

Alexey
28.12.2016
08:53:50
А как же zbr?
Наш предводитель, Евгений, главный специалист по подводным лодкам и игре на саксафоне, в тот момент был занят самим Elliptics'ом

Google
Vladimir
28.12.2016
08:56:30
Имхо, так и есть
Ну просто если б для того кода взяли б плюсы, он стал бы читабельнее :)

Roman
28.12.2016
08:56:33
Бтв, сам эллептикс норм? И почему новый проект, а не ceph?

Alexey
28.12.2016
08:57:45
да, сам эллиптикс много где на плюсах. А не ceph потому что требования к CAP и производительности были другие, да и ceph тогде не работал как надо

Alexey
28.12.2016
08:59:24
потому что начинался давно, людьми которые писали ядро

Roman
28.12.2016
09:00:20
Я его раньше активно читал, особенно когда он kevent пытался в ядро занести

Alexey
28.12.2016
09:01:37
и Си не так уж плох если ты из ядра пришёл, например если нужен stdlib и контейнеры, то всё довольно просто делается через cp -a ~/linux/include/linux/{list,rbtree}.h ~/elliptics/include/

Поляков?
он самый

Admin
ERROR: S client not available

Roman
28.12.2016
09:03:40
А так ни kevent, ни aio :(

Даже fadvise ставит все колом :(

Был товарищ, который в 2012 принес патч, выносящий fadvise willneed в workqueue

Артур
28.12.2016
09:05:46
#вопрос У меня есть Маааленький VPS с 80Гб места. Свободно там 5Гб Может кто знает как в этом случае сделать дамп на удаленный FTP или уж в идеале в дропбокс или яндекс диск?

N
28.12.2016
09:06:20
Дожили...

«подскажите как сделать дамп"

Артур
28.12.2016
09:07:11
«подскажите как сделать дамп"
Вопрос не вто чтобы сделать дамп, а как при ограниченном пространстве его находу сжимать отправлять на уделенку

Max
28.12.2016
09:07:15
где-то были йобы для монтирования дропбокса в фс

Google
Артур
28.12.2016
09:07:17
rsync?
Спс, сейчас почитаю

Vladimir
28.12.2016
09:07:28
и Си не так уж плох если ты из ядра пришёл, например если нужен stdlib и контейнеры, то всё довольно просто делается через cp -a ~/linux/include/linux/{list,rbtree}.h ~/elliptics/include/
Ну он не плох, просто на плюсах можно делать более читаемый код который не будет ни в чем уступать сишному

N
28.12.2016
09:07:46
но то были времена. А сейчас всем тулзу готову подавай

И чтобы она процесс в инстаграм слала и смузи делала

Артур
28.12.2016
09:08:11
rsync?
Не, печаль. Это на обоих машинах он по ходу должен быть

Max
28.12.2016
09:10:59
он например есть в дефолтной поставке убунты....

Vladimir
28.12.2016
09:11:11
@SaveTheRbtz у нас просто есть одна тулза которую оставил человек после себя, читать ее невозможно, а багов там столько что кажется что оно работает только потому что некоторые взаимокомпенсирубтся. И по стилю оно в общем хороший сишный код, но понять что хотел сказать автор почти нереально

Alexey
28.12.2016
09:12:16
Ну он не плох, просто на плюсах можно делать более читаемый код который не будет ни в чем уступать сишному
ну в Си++ есть нюнсы - людей надо пиздить чтоб они не выёбывались. Тоесть нужно не на Си++ писать а на restricted subset of C++. Ну а если по фитчам, то имхо template'ы и специализации — это киллер фитчи C++, ибо type-safe 0-cost абстракции — это две вещи которые очень сложно одновременно получить в Си. Тоесть либо быстро. либо containterof и void * (есть ещё третий путь через кодогенерацию, но это изврат)

Артур
28.12.2016
09:12:19
Я искал такое примерно решение. tar cf ftp://login@ft.ftp/dump.tar /var/www

Только нет его :(

У меня дома виндовая машинка.

Max
28.12.2016
09:12:42
забудь про слово фтп пожалуйста в 2016м году

Max
28.12.2016
09:12:48
а в 2017м не вспоминай

Vladimir
28.12.2016
09:13:20
ну, плюсы можно так же написать =)
Конечно можно, но идиоматические плюсы читались бы на порядок проще

Alexey
28.12.2016
09:13:48
Я искал такое примерно решение. tar cf ftp://login@ft.ftp/dump.tar /var/www
1) rsync over ssh 2) tar | ssh 3) ... можешь у себя поднять cygwin'овый sshd

Vladimir
28.12.2016
09:13:51
И не создавали бы ощущения что проще выкинуть и написать заново

Артур
28.12.2016
09:14:14

Страница 1898 из 4568