Zaczynam więc używać node.js dla projektu, który robię.Proces potomny dla zadania intensywnego procesora?
Gdy klient zgłasza żądanie, mój serwer node.js pobiera z innego serwera plik json, a następnie przekształca go w nowy json, który jest obsługiwany przez tego klienta. Jednak json, który serwer węzła otrzymał z innego serwera, może być dość duży, więc "masowanie" danych jest dość intensywne.
Czytałem przez ostatnie kilka godzin, jak węzeł node.js nie jest idealny do zadań cpu, a główną odpowiedzią, jaką widziałem, jest odrodzenie procesu potomnego (w zasadzie plik .js uruchomiony przez inna instancja węzła), która zajmuje się intensywnymi zadaniami cpu, które mogą blokować główną pętlę zdarzeń.
Załóżmy, że mam 20 000 równoczesnych użytkowników, co oznaczałoby, że wygenerowałoby 20 000 stanowisk pracy na poziomie osa podczas wykonywania procesów potomnych.
Czy to brzmi jak dobry pomysł? (Inny serwer WWW utworzyłby po prostu 20 000 wątków w tym samym procesie.)
Nie jestem pewien, czy powinienem uruchomić proces potomny. Ale muszę wykonać zadanie bez blokowania intensywnego procesora cpu. Jakieś pomysły na to, co powinienem zrobić?
posegmentować plik json, utworzyć 4 instancje węzłów na serwer i 2-5 serwerów? a teraz mam niezwykle skalowalne i opłacalne rozwiązanie? .. gee świst. – foreyez
Jest to prostsze, niż się wydaje. To 2-5 serwerów jest dla ogromnej przepustowości. To lata w dół od miejsca, w którym jesteś. NodeJS został zbudowany tak, aby był używany jak węzeł w systemie, to absolutne minimum potrzebne do zrobienia wszystkiego, co tylko chcesz. Nie jest to już gotowe rozwiązanie skalowalności, ale możesz zaprojektować z niego bardzo dobry system. – miketheprogrammer