Wielowątkowa i współbieżność Core Distribution
#1

Korzystaliśmy z platformy produktów silnikowych przepływu pracy i zintegrowaliśmy z nią naszą aplikację internetową. W ciągu miesięcy i lat mieliśmy problemy z wydajnością. Zawsze nauczaliśmy, że to z powodu złego kodu aplikacji, dopóki nie znaleźliśmy tego klejnotu.   Po wyjęciu pulę wątków roboczych ustawiono na 20.   Wątek roboczy to dowolna forma API, którą zapewniają .... np.   1. Zapytanie o oczekujące zadania 2. Rozpocznij przepływ pracy 3. Wykonywanie akcji w przepływie pracy 4. Zatwierdzenie e-maila 5. Zarządzanie api   Wszystkie te funkcje będą stanowić wątek roboczy.     Jednak oprogramowanie jest zaprojektowane do uruchamiania jednego wątku na rdzeń procesora.   Jeśli masz 2 podstawowe ustawienia, maksymalnie 2 wątki współbieżne w dowolnym punkcie t0. Jeśli masz 8 podstawowych ustawień, maksymalnie 8 wątków współbieżnych w dowolnym punkcie t0 i tak dalej. Wszelkie inne wątki, które uderzyły w sufit, są umieszczane na bloku oczekiwania aż do uwolnienia rdzenia.     Czy ktoś się zgadza, że to jest projekt dźwiękowy? Dla mnie to jest przerażające. Dlaczego miałbym chcieć sztucznie ograniczyć to jądro, powinienem pozwolić systemowi / kernelowi rozłożyć obciążenie.   Nawet jeśli mam bestię maszyny, najszybszy procesor, największą pamięć RAM, największy i najszybszy dysk twardy, wciąż jestem ograniczony przez sufit rdzeń procesora.   Wyobraź sobie basen, bez względu na to, jak wielki będzie basen, maksimum, 2/8/16/32 .... pływacy są dozwolone.     Doceń wszelkie komentarze. Dzięki!
Reply


Messages In This Thread

Forum Jump:

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5


Users browsing this thread: 1 Guest(s)