2015-02-02 18 views

Odpowiedz

8

Nie jest to łatwa odpowiedź.

Dwoma głównymi źródłami informacji są:

  1. Puma github repository (punkt autorów widzenia)
  2. Heroku's web page (punkt głównego wielkiego autora widzenia)

Niestety są one niespójne głównie dlatego, że heroku ma różne metryki wdrażania i terminologię.

Więc skończyło się zgodnie z wytycznymi repozytorium puma który mówi:

  • jeden pracownik na rdzeń
  • Tematy, które zostaną określone w związku z dostępnością RAM i stosowania oraz
  • threads = Bilard

Tak więc liczba wątków jest głównie operacją "wypróbuj i sprawdź".

+2

Wskazówki dla jednego pracownika na rdzeń są często rzucane, ale w zasadzie są przeciwieństwem tego, co mówi Heroku (podają pamięć RAM jako jedyny czynnik ograniczający pracowników i sugerują, że wątki powinny być powiązane z dostępnym procesorem). Czy ktoś jeszcze dał ostatnie słowo na ten temat? Wersja Heroku ma dla mnie więcej sensu, intuicyjnie. – robomc

+2

Jak rozumiem, prawdziwą korzyścią pracowników z Puma jest równoległość, ponieważ są to oddzielne procesy ruby. Jeśli masz tylko 1 rdzeń, naprawdę nie ma powodu, aby używać więcej niż jednego pracownika, ponieważ nie mogą działać równolegle. To powiedziawszy, Heroku może odkryć inne ulepszenia wydajności korzystania z wielu pracowników, nawet w jednym rdzeniu. –

+0

Masz całkowitą rację i umieściłem to jako część wytycznych: Jeden robotnik na rdzeń;) – tommasop

Powiązane problemy