Obecnie piszę aplikację javascript po stronie klienta, która wykonuje manipulację obrazem. Niektóre z operacji, które wykonuje obecnie, są dość powolne w przeglądarce (rzędu 2-3 sekund).Czy node.js ma przewagę wydajności nad JavaScriptem po stronie klienta (w porównaniu z Chrome/V8)?
Jednym z rozwiązań, które zamierzam wdrożyć, jest uzyskanie od klienta informacji o wyniku za pośrednictwem serwer (websocket, a nie AJAX, ponieważ musi wyświetlać informacje w czasie rzeczywistym itp.) i pozwolić serwerowi na ciężkie podnoszenie manipulacji obrazem.
Node.js jest oczywistym kandydatem również napisanym w JavaScript - jednak moją pierwszą myślą jest że nie będzie żadnej przewagi wydajności (moja strona klienta działa w Chrome/V8, a Node.js to także V8) - czy mam rację, myśląc o tym? A może interfejs użytkownika Chrome wymaga strat wydajności na kliencie, które nie będą odczuwane po stronie serwera? (np. czy Chrome działa w tle w większej liczbie funkcji UI, aby wszystko działało prawidłowo, a serwer node.js nie spędzałby czasu?)
Czy node.js ma jakąkolwiek przewagę wydajnościową, czy lepiej dla mnie zajrzeć do serwerów gniazd C lub Java, aby wykonać pracę?
Jak już napisałeś kod w JavaScript, proponuję dać Node.js spróbować i przekonaj się sam. Nie powinno to wymagać dużego wysiłku. –
@FelixKling Chociaż jest już w JavaScript, jak mówisz, będzie to wymagało sporo pracy, aby podzielić istniejący kod na właściwy klient/serwer za pomocą stron internetowych - na pewno chcę znaleźć informacje o wydajności. przed zrobieniem takiej rzeczy –
Node.js nie jest właściwym miejscem do robienia ciężkiego liftingu manipulacji obrazem. Jest to jednak odpowiednie narzędzie do wywoływania ImageMagick jako procesu potomnego. – generalhenry