Size: a a a

2018 April 27

KO

Kalys Osmonov in Rubyata
в любительских проектах 10к подключений не закладывают. подразумеваю, что проект коммерческий.
источник

RS

Rustam Sharshenov in Rubyata
Кто после тебя такое захочет поддерживать?
источник

М

Муратбек in Rubyata
Думаю дело в профессионализме написания кода
источник

М

Муратбек in Rubyata
Вы ж библотеками пользуетесь
источник

KO

Kalys Osmonov in Rubyata
Муратбек
Думаю дело в профессионализме написания кода
Именно. Любой проект должен быть проверен временем. Баги находятся у всех, но у опытного разработчика получается более стабильный продукт. Если проект коммерческий, то нужно минимизировать расходы и риски. Зачем писать велосипед, если есть готовое, проверенное решение?
источник

М

Муратбек in Rubyata
Kalys Osmonov
Именно. Любой проект должен быть проверен временем. Баги находятся у всех, но у опытного разработчика получается более стабильный продукт. Если проект коммерческий, то нужно минимизировать расходы и риски. Зачем писать велосипед, если есть готовое, проверенное решение?
Согласен. Я бы тоже заюзал библиотеку, если она полностью удовлетворяет моим запросам. Но если она не удовлетворяет?)))
источник

M

MpaK 🇹🇭 in Rubyata
если опен соурс форкни и допиши свои, все равно проще чем с нуля будет
источник

M

MpaK 🇹🇭 in Rubyata
но все же чат думаю дело такое, что сложно свое изобрести и куча либ уже существует в помощь
источник

S

SSH in Rubyata
кстати раз уж о опенсорсе пошел разговор... может проще тогда в сигнал заглянуть?
источник

MS

Mikhail Sytchev in Rubyata
Vasiliy Terkin
Ребята может кто-то писал Чат типа месенджера на Ruby. Если есть такой опыт, расскажите какую нагрузку держит, подключения, количество рассылок.
Допустим было бы неплохо если бы руби держали 5-10 тысяч подключенных пользователе, с учетом того что каждую секунду кто-то отправляет сообщение, оно должно приходить всем подключенным к чату пользователям. Вот что думаете, на этот счет?
Это формулировка задачи 10K problem. Задача упирается не в язык по большей части, а в модель управления обработчиками. Например, если в руби ты будешь запускать веб сервер под Пумой, то на каждое соединение будет выделен тред. Накладные расходы на форк треда большие. Имеет смысл использовать паттерн Reactor и event loop как это делает nginx, например.

Далее ты только ограничен количеством файловых дескрипторов, которые доступны в системе и памятью машины.
источник

MS

Mikhail Sytchev in Rubyata
При всей кажущейся простоте задачи решить ее можно несколькими способами со своими минусами и сложностями в каждом из них
источник

MS

Mikhail Sytchev in Rubyata
На руби быстро можно сделать решение, нагрузить и проверить
источник

RS

Rustam Sharshenov in Rubyata
Он писал про 1 сообщение в секунду. Тут хоть на raspberryPI его обрабатывай. Его задача упирается в то, как это сообщение заброадкастить на 5-10k. Да и здесь ничего писать не надо. Поднимается WS сервер и все шлется на него. А уже он раздает.
источник

MS

Mikhail Sytchev in Rubyata
я не настолько оптимистичен насчет решения данной задачи
источник

KO

Kalys Osmonov in Rubyata
источник

DE

Dmitry Evgenevich in Rubyata
Как говорится, ни когда такого не было и вот опять )
источник

М

Муратбек in Rubyata
Mikhail Sytchev
Это формулировка задачи 10K problem. Задача упирается не в язык по большей части, а в модель управления обработчиками. Например, если в руби ты будешь запускать веб сервер под Пумой, то на каждое соединение будет выделен тред. Накладные расходы на форк треда большие. Имеет смысл использовать паттерн Reactor и event loop как это делает nginx, например.

Далее ты только ограничен количеством файловых дескрипторов, которые доступны в системе и памятью машины.
Тут нужно понимать хард и как работает сервер. Печально что не все это понимают и знают.
источник

ch

core hook in Rubyata
Муратбек
Тут нужно понимать хард и как работает сервер. Печально что не все это понимают и знают.
и как же работает хард ?
источник

ch

core hook in Rubyata
и кто под землей марковку красит...
источник

М

Муратбек in Rubyata
core hook
и как же работает хард ?
Я не знаю)))
источник