Является ли 100 или менее запросов в секунду (для не кэшированных страниц), что можно ожидать с Rails?
предисловие: пожалуйста, не начинайте обсуждение преждевременной оптимизации или чего-либо связанного. Я просто пытаюсь понять, какую производительность я могу получить от одного сервера с рельсами.
я сравнивал ruby на rails 3, и кажется, что самый высокий уровень запросов в секунду, который я могу получить, составляет около 100 запросов в секунду.
я использовал Phusion passenger с nginx и Ruby 1.8.7.
это на ec2 m1.большой пример:
7.5 GB memory
4 EC2 Compute Units (2 virtual cores with 2 EC2 Compute Units each)
850 GB instance storage
64-bit platform
I/O Performance: High
API name: m1.large
страница была очень простым действием, которое записало одну строку в mysql.
user = User.new
user.name = "test"
user.save
Я предполагаю, что нет кэширования (memcache и т. д.), Я просто хочу почувствовать необработанные числа.
я использовал Apache bench на том же экземпляре ec2, и я использовал различные уровни # запросов (от 1000 до 10000 и различное количество одновременных запросов 1/5/10/25/50/100).
1 ответов
контроллер EC2 m1.large
экземпляр действительно не так быстро, поэтому эти цифры не удивительны. Если вы хотите производительность, вы можете либо перейти на более крупный экземпляр, как теперь есть некоторые с 80 экю, или попробовать другого поставщика.
Я нашел это Linode гарантийное обычно предлагает более высокую производительность по той же цене, но не так гибко и не масштабируется до очень большого количества серверов. Это намного лучше подходит, если вы находитесь в фазе "до 20 серверов" развертывание.
также не думайте, что MySQL-это операция без затрат.