Size: a a a

2019 December 31

МИ

Михаил Иванов in Modern::Perl
Я давеча приводил пример — "хелло ворлд" под nginx unit в нагрузочном тестировании жрёт меньше ресурсов, чем утилита создающая нагрузку (ab или siege). Так что без знания что делает программа — время ответа не говорит ни о чем.
источник

AS

Alexey Stavrov in Modern::Perl
Вертолетчик
400 запросов он обслуживал одновременно?
Ну представим, что у вас 400 бд реплик на чтение.
Есть какой-то самый тормознутый запрос, пусть выполняется 20 сек.

Вот пришло одновременно 400 запросов на одну ноду. Эти запросы пусть равномерно взялись и распределились по нодам БД (ЛБ).
Через 20 сек. все получат ответ, не?

Можно, конечно и меньшее ко-во баз взять.
источник

В

Вертолетчик in Modern::Perl
cono
Если за ЛБ 1к нод, то 1 😂
Кстати, вот правильный ответ.  Просто некоторые часто путают “concurrent” с «per second»
источник

В

Вертолетчик in Modern::Perl
Alexey Stavrov
Ну представим, что у вас 400 бд реплик на чтение.
Есть какой-то самый тормознутый запрос, пусть выполняется 20 сек.

Вот пришло одновременно 400 запросов на одну ноду. Эти запросы пусть равномерно взялись и распределились по нодам БД (ЛБ).
Через 20 сек. все получат ответ, не?

Можно, конечно и меньшее ко-во баз взять.
Вопрос-то был другой. Про одну ноду
источник

AS

Alexey Stavrov in Modern::Perl
Вертолетчик
Вопрос-то был другой. Про одну ноду
А почему она не одна? одна же

> Вот пришло одновременно 400 запросов на одну ноду
источник

В

Вертолетчик in Modern::Perl
Alexey Stavrov
А почему она не одна? одна же

> Вот пришло одновременно 400 запросов на одну ноду
Окей. Ещё раз продублирую.
Ну сколько должно быть запущено копий интерпретатора, чтобы обслужить 1000 одновременных запросов?
источник

В

Вертолетчик in Modern::Perl
Хорошо, упали до 400 )))
источник

AS

Alexey Stavrov in Modern::Perl
Вертолетчик
Окей. Ещё раз продублирую.
Ну сколько должно быть запущено копий интерпретатора, чтобы обслужить 1000 одновременных запросов?
Ну ты же ничего не конкретизируешь. У тебя нет ни профиль нагрузки ни данных. Я могу выдумать, что хочу.

Я выдумал идеальную картинку, когда у меня идеальная I/O bound задача.
Пусть каждый запрос принимает 10 байт и возвращает другие 10 байт, которые требуется посчитать в БД.
Про БД речи у тебя вообще нет. Я могу их увеличить столько, сколько надо, ведь ты не конкретизируешь.

Соответственно интерпертатор занимается тем, что перенаправляет байтики из одного сокета в другой  и нет CPU bound задач.
А раз так, то можно одним процессом хоть 1000 запросов обработать.
источник

В

Вертолетчик in Modern::Perl
Alexey Stavrov
Ну ты же ничего не конкретизируешь. У тебя нет ни профиль нагрузки ни данных. Я могу выдумать, что хочу.

Я выдумал идеальную картинку, когда у меня идеальная I/O bound задача.
Пусть каждый запрос принимает 10 байт и возвращает другие 10 байт, которые требуется посчитать в БД.
Про БД речи у тебя вообще нет. Я могу их увеличить столько, сколько надо, ведь ты не конкретизируешь.

Соответственно интерпертатор занимается тем, что перенаправляет байтики из одного сокета в другой  и нет CPU bound задач.
А раз так, то можно одним процессом хоть 1000 запросов обработать.
Окей, тогда конкретизирую.
Сколько должно быть запущено копий интерпретатора, чтобы обслужить 1000 одновременных запросов, и чтобы не было бэклога?
источник

В

Вертолетчик in Modern::Perl
На одной ноде
источник

В

Вертолетчик in Modern::Perl
Нет никакой бд, просто хеллоу ворлд
источник

AS

Alexey Stavrov in Modern::Perl
Ну да, тут на asm наверно будет самое оптимальное решение, хотя наверняка и на си можно добиться такой же скорости
источник

AS

Alexey Stavrov in Modern::Perl
Как часто у тебя hello world в реальных задачах?
источник

c

cono in Modern::Perl
Хайлоад хелло ворлд 👍
источник

c

cono in Modern::Perl
Последнее время всегда типает когда кандидат на собезе говорит про "хайлоад". Обычно это абстрактная хуйня - цифры ради цифр
источник

В

Вертолетчик in Modern::Perl
На вопрос-то так и не ответили )))
источник

c

cono in Modern::Perl
Ну я ответил. Никому нахер не вперлось сколько выдает конкретная нода. Как правильно сказали выше. Важна архитектура. И возможность scale up/down.
источник

c

cono in Modern::Perl
А чо там внутри. Перл или жава или эрланг. Пофиг
источник

AS

Alexey Stavrov in Modern::Perl
cono
Последнее время всегда типает когда кандидат на собезе говорит про "хайлоад". Обычно это абстрактная хуйня - цифры ради цифр
Эмм... по мне дак хайлоад - это когда конкретно какой-то проект не справляется. Соотвественно можно говорить о цифрах, применительно только к этиму проекту.

Может быть такое, что один сервис с 1000 rps работает нормально (нормально означает, что всех устраивает время ответа), а другой с 1 rps загибается (не устраивает время ответа).
источник

В

Вертолетчик in Modern::Perl
cono
Ну я ответил. Никому нахер не вперлось сколько выдает конкретная нода. Как правильно сказали выше. Важна архитектура. И возможность scale up/down.
Мне впёрлось
источник