Zastanawiam się, co byś pomyślał o używaniu wyników testów Chrome w wersji jsperf.com jako benchmarku dla wydajności node.js, ponieważ oba używają silnika V8.Czy wyniki jsPerf.com Chrome są wiarygodne dla testu node.js?
Odpowiedz
Zamiast tego można użyć Benchmark.js. To właśnie zasila jsPerf i działa również w Node.js.
Myślę, że należy wziąć pod uwagę różne wersje v8, które są używane przez chrome/ium i node.js.
Pobierz wersję V8 swojej bieżącej instalacji węzła:
npm --versions
liście Wersje ekosystemu węzła zawierać wersję V8weemonger @ awesomeLinuxDistro: ~ $ npm --versions
{npm: '2.11.3'
http_parser: '2.3',
moduły: '14',
węzeł: '0.12.7' openssl: '1.0.1p'
UV '1.6.1'
V8 '3.28.71.19',
zlib: '1.2.8'}wersja wysiąść v8 w bieżącym chrom/chrom: Rodzaj
chrome://version/
w pasku adresu:chrom: 38.0.2092.0 (Entwickler-Budowanie 282911)
Betriebssystem: Okna (nie tak niesamowite OS)
Blink: 537,36 (@ 178012)
JavaScript: V8 3.28.21
zapłonu: 20,0,0,235
Użytkownik-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; 64) AppleWebKit/537,36 (KHTML, like Gecko) Chrome/38.0.2092.0 Safari/537.36
...
Uznanie bentinata za komentarz.
Ale bezpieczniej jest podejście do odniesienia w określonym środowisku (patrz John-David Daltons answer).
Nie tak ładne (stary) sposoby, aby uzyskać wersji v8
node.js
węzeł -e „console.log (process.versions .v8) "
(https://stackoverflow.com/a/10264593/3346021)chrom/chrom
Zobacz, aby sprawdzić wersję v8 używaną przez chrome/ium.pierwsze, patrzeć na uwolnień gałęzi repozytorium Subversion, Chrom wygodnie przeglądać na src.chromium.org/viewvc/chrome/releases.
Teraz chodzi o sprawdzenie odpowiedniej wersji. W chwili pisania tego artykułu mój Google Chrome mówi o wersji 17.0.963.46.
Podczas przeglądania pliku 17.0.963.46/DEPS (używanego przez Gyp, system kompilacji), znajdziesz link do odpowiedniej wersji V8, tj. V8.googlecode.com/svn/branches/3.7 revision 10521.
Może to być odniesienie krzyżowe w repozytorium V8: branches/3.7 & start = 10521.
ja stworzyliśmy narzędzie, które pomaga mi się pobrać i testy wykonywane z jsperf.com: https://github.com/OrKoN/jsperf
na przykład:
jsperf get replace-vs-split-join-vs-replaceall 67
jsperf run replace-vs-split-join-vs-replaceall 67
67 to numer wersji tutaj. Rezultat jest następujący:
- 1. Wyniki testu kwantowego jednostki Duplikat
- 2. Wyniki testu spływu są dostępne z haka AfterScenario?
- 3. Jak zapisać wyniki testu kątomierza?
- 4. Jak automatycznie usuwać wyniki testu
- 5. Czy są jakieś wtyczki testu bezpieczeństwa dla szyn?
- 6. Kod VS + Debugger dla Chrome node.js
- 7. Wyniki pokrycia kodu XCode 7 dla testu interfejsu użytkownika
- 8. Jak wiarygodne są pliki dzienników dostępu amazon s3?
- 9. Jakie sterowniki MySQL są dostępne dla node.js?
- 10. Wyniki testu potoku Jenkinsa Analyzer Support
- 11. Jak pisać wyniki z testu jednostkowego?
- 12. Jak zbudować słoik za pomocą maven, ignorując wyniki testu?
- 13. Czy komponenty są naprawdę szybsze w porównaniu do szablonów?
- 14. Wiarygodne informacje o różnych przeglądarkach na ContentEditable
- 15. Jak wziąć wiarygodne QGLWidget migawkę
- 16. sequelize dla Node.js: ER_NO_SUCH_TABLE
- 17. jest wiarygodne DISPID_VALUE dla wywołań na IDispatchs ze skryptów?
- 18. Podczas korzystania z "testu stosu" moje wyniki testów hspec nie są kolorowane.
- 19. Czy koniec 2 testu wystarczy?
- 20. Czy mapy źródłowe działają dla rozszerzeń Chrome?
- 21. Dlaczego moja implementacja testu parkingu dla generatorów liczb losowych daje złe wyniki?
- 22. JavaScript implementacja szyfrowania, w tym wiarygodne zaprzeczenie
- 23. Czy Node.js dla systemu Windows jest gotowe?
- 24. Czy istnieje odpowiednik sprintf dla node.js
- 25. Czy Node.js wymusza minimalne opóźnienie dla setTimeout?
- 26. Czy można pominąć setUp() dla określonego testu w unittest Pythona?
- 27. Jakie są wszystkie wyniki akcji ASP.Net MVC?
- 28. Automatyzacja testu XCode dla IPhone
- 29. Jakie są właściwe przypadki użycia dla process.nextTick w Node.js?
- 30. Układ projektu Node.js do kompilacji/testu a wdrożenie
Korzystanie z chrome: // wersja/działa też świetnie! :) – bentinata