Должен ли я использовать тонкий или единорог на Кероку Кедра

Недавно я обновил свое приложение на платформе кедра на герою. По умолчанию я использую thin в качестве веб-сервера. Но у меня всегда возникало искушение использовать unicorn для concurrency, а мой диноза доллар - отцом. Но я беспокоюсь, что есть некоторые ошибки в использовании чего-то другого, кроме Тонкого.

Есть ли у кого-нибудь реальный жизненный опыт с этим решением?

Спасибо!

Джонатан


Примечания:

  • Это была статья, которая вызвала меня в восторге от этой идеи: http://michaelvanrooijen.com/articles/2011/06/01-more-concurrency-on-a-single-heroku-dyno-with-the-new-celadon-cedar-stack/
  • Я знаю, что каждое приложение отличается, и что вы должны создать промежуточную env и попробовать ее для себя. Но если он выглядит великолепно в вашем промежуточном env, это любые подводные камни, о которых мы должны знать?

Я хочу знать причины, почему все не должны этого делать

Ответ 1

Обновление - через 3 месяца.

Я использую единорога в производстве в течение 3 месяцев, и я был очень доволен. Я использую 4 рабочих единорога на дино.

Единственное, что вам нужно, это следить за потреблением памяти и утечкой. Фактически вместо того, чтобы иметь 512 МБ памяти на дину - у вас есть то, что делится на число героевских работников. Но с учетом этого - это была большая экономия затрат

Ответ 2

Нет причин не делать этого - я пользуюсь Unicorn на Heroku с большим успехом.

Ответ 3

Героку только что написал сообщение об использовании Единорога: https://blog.heroku.com/archives/2013/2/27/unicorn_rails

Я попробую сейчас, похоже, что это путь, как для производительности, так и для экономии затрат.

Ответ 4

Если вы используете Thin, и ваш код не очищает запросы очень быстро, тогда у вас возникают проблемы - поскольку Heroku использует случайную маршрутизацию, запросы будут складываться на заблокированном дино, даже если есть свободные диноды. Использование Unicorn кажется лучше, если вы можете справиться с ударом памяти, потому что это менее вероятно, что все ваши вилки будут получать медленные запросы одновременно. Он не решает проблему случайной маршрутизации Heroku, но он должен многое помочь.

Ссылки и объяснения в этом ответе:

fooobar.com/info/70618/...