Rails Webbrick одновременные соединения они должны укладывать? - PullRequest
0 голосов
/ 21 марта 2012

Я использую стандартный сервер Ruby-on-Rails WEBBRICK.

Я тестирую и если у меня два или три соединения одновременно на очень интенсивных сценариях (которые я позволяю полностью выполнить без таймаутов), это нормальнодля них, чтобы сложить (то есть завершить следующую задачу после завершения предыдущей - много одновременных соединений, но обрабатывается только одно)?

1) Это нормальное поведение?
2) Как мне избежать этого, рекомендуется Thin?

1 Ответ

0 голосов
/ 21 марта 2012

Сервер rails (webrick) действительно предназначен только для локального тестирования в разработке;запускается один экземпляр, и запросы будут блокироваться друг на друга.Тонкий - лучший выбор, поскольку он знает, как обрабатывать несколько процессов.Некоторые люди используют Apache или Nginx перед Thin для производственных серверов.«Пассажир» - аналогичный вариант, который также популярен.

Так что да, установите Thin для более реалистичного тестирования.

PS Если вы используете хостинг на Amazon EC2, их микро- и небольшие экземпляры имеют толькоодин процессор, поэтому даже если у вас есть несколько процессов, принимающих запросы, если они связаны с процессором, они будут действовать так, как будто они блокируют друг друга.(Это может не относиться к вашему вопросу, но несколько долгих дней моей жизни были потрачены на выяснение этого: -).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...