Thread View: pl.comp.lang.javascript
10 messages
10 total messages
Started by Kamil Szewczyk
Thu, 18 Aug 2011 08:20
[DevMeeting] Wydajność Node.JS kontra reszta świata
Author: Kamil Szewczyk
Date: Thu, 18 Aug 2011 08:20
Date: Thu, 18 Aug 2011 08:20
15 lines
2656 bytes
2656 bytes
Zapraszamy na kolejne, bezpłatne spotkanie zaawansowanych software developerów. Odbędzie się ono już 3 września w Poznaniu. Podczas DevMeetingu chcemy skupić się na porównaniu nie tylko różnych rozwiązań SSJS między sobą, ale także innych popularnych technologii (Ruby, PHP, Java, Python...) aby móc w praktyce umiejscowić JavaScript na rynku rozwiązań serwerowych. W ramach spotkania stworzymy zatem kilka aplikacji w różnych językach programowania i skupimy się na ich porównaniu. Kogo zainteresuje nasz DevMeeting? - zaawansowanych developerów JavaScript, ale także Ruby, PHP, Perl, Python i Java, - osoby znające się na zagadnieniach związanych z testowaniem wydajności, także tych niezwiązanych z JavaScriptem, - maniakalnych ewangelizatorów Node.JS i zaciekłych wrogów tychże. Więcej informacji oraz formularz rejestracji: http://devmeetings.pl/trainings/wydajność-nodejs-kontra-reszta-świata Nie zaczynamy od zera, będziemy bazować na przemyśleniach i wynikach pozyskanych podczas DevCampa. Jeżeli chcesz zapoznać się z efektami naszych dotychczasowych prac koniecznie odwiedź też http://devcamps.pl Gdyby ktoś z Was zastanawiał się co to jest DevMeeting i jaka atmosfera tam panuje to zapraszam do zapoznania się z relacjami z poprzednich spotkań, np. http://devmeetings.com/trainings/programowanie-aplikacji-mobilnych-w-javascript/26-marca/report
Re: [DevMeeting] Wydajność Node.JS kontra reszta świata
Author: NKAB -
Date: Wed, 24 Aug 2011 07:17
Date: Wed, 24 Aug 2011 07:17
123 lines
3790 bytes
3790 bytes
Warto zainteresować się tym serwerem.
Ale Google powinno bardziej zadbać o windowsowców
bo unikasirzom/linuksiarzom wszystko działa co widać
na Youtube.
Dla windowsiarzy.
Z http://node.org pobrac plik o nazwie node.exe dla windowsa
wgrać go do nowego katalogu np c:\NODE
(unikać katalogu "Program Files" bo są tam zabezpieczenia przed zapisem,
które utrudniają życie)
uruchomić serwer noda klikając dwukrotnie na tym ściągnietym node.exe,
pojawi się konsola z promptem,
i już można ćwiczyć.
Wpisać:
>1+2 {ENTER]
3
lub:
>var a = 10;
>var b = 5;
>a*b;
50
albo:
> function foo(mess)
.. {
.. console.log("message:"+mess);
.. }
> foo("komunikat 1");
message:komunikat 1
>
taki document.write() w konsoli:
>console.log("aaa..."); [ENTER]aaa
Ale jak już chcemy uruchomić własnego servera to zaczynają się schody.
Wpisujemy kolejno:
> var http = require('http');
> http.createServer;
[Function]
> (function (request, response)
.. {
.. response.writeHead(200, {'Content-Type': 'text/p
.. response.end('Hello World\n');
.. }
.. ).listen(8124)
// po enterze daje to:
TypeError: Object function (request, response)
{
response.writeHead(200, {'Content-Type': 'text/plain'}
response.end('Hello World\n');
} has no method 'listen'
at [object Context]:6:3
at Interface.<anonymous> (repl.js:168:22)
at Interface.emit (events.js:67:17)
at Interface._onLine (readline.js:153:10)
at Interface._line (readline.js:408:8)
at Interface._ttyWrite (readline.js:585:14)
at ReadStream.<anonymous> (readline.js:73:12)
at ReadStream.emit (events.js:70:17)
at onKeypress (tty_win32.js:46:10)
>
To samo jest gdy w katalogu C:\NODE w notatniku zrobimy plik o nazwie:
cwiczenie01.js
a w nim tylko jedna linijka:
console.log("aaa...");
i uruchamiamy ten plik w konsoli:
>node cwiczenie.js
---
pokaże nam tylko te trzy kreski z których wychodzimy przez wpisanie
>.break
lub wciskając "Ctrl-c" ("Ctrl-z" zamyka konsolę czyli robi >.exit)
Aby zareklamować NodeJS napomknę tylko, że unikamy coś czego ja nie lubię
w php, mianowicie:
wywoływania skryptów z osobnych plików z których nie ma już powrotów.
W NodeJS nareszcie możemy mieć całą aplikację w jednym pliku,
lub tworzyć sobie własne biblioteki a także korzystać z cudzych
skryptów ściąganych prosto z netu.
Dobrą reklamę można zrobić pokazując jak zapisywać dane na dysk,
jak korzystać w NodeJS z systemu MySQL itp.
NodeJS jest wielki bo każdy może mieć własny domowy/firemkowy serwer www.
Każdy naukowiec robiący w domu lub w pracowni doświadczenia
i chce przez komórę obserwować wyniki dzięki NodeJS już nie będzie
miał z tym problemów.
Andrzej.
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Re: [DevMeeting] Wydajność Node.JS kontra reszta świata
Author: NKAB -
Date: Wed, 24 Aug 2011 08:41
Date: Wed, 24 Aug 2011 08:41
46 lines
1642 bytes
1642 bytes
Wpadłem na pomysł jak to używać w win.
w katalogu C:\NODE
tworzymy plik o nazwie np:
NodeJS.bat
o treści:
node helo-nodejs.js
pause
a plik helo-nodejs.js ma treść:
var http = require('http');
http.createServer
(function (request, response)
{
response.writeHead(200, {'Content-Type': 'text/plain'});
response.end('Hello World\n');
}
).listen(8124);
console.log('Server running at http://127.0.0.1:8124/');
Po dwukrotnym kliknięciu naszego NodeJS.bat
uruchomimy nasz serwerek www.
Otwieramy przeglądarkę i w adres wpisujemy:
http://127.0.0.1:8124
.. i sukces, jest nasze Hello world.
Andrzej.
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Re: Wydajność Node.JS kontra reszta świata
Author: Piotrek Reinmar Koszuliński
Date: Thu, 25 Aug 2011 09:50
Date: Thu, 25 Aug 2011 09:50
50 lines
3453 bytes
3453 bytes
> Warto zainteresować się tym serwerem. > > Ale Google powinno bardziej zadbać o windowsowców > bo unikasirzom/linuksiarzom wszystko działa co widać > na Youtube. > Node na Windowsa jest dopiero od miesiąca i od rozwojowej wersji 0.5.x (numeracja linuksowa - parzyste stabilne (0.4.x), nieparzyste rozwojowe (0.5.x)). Pewnie dlatego jest tak mało materiałów na ten temat. W dodatku - nie ma się co okłamywać - 95% zaawansowanych korzystających to Mac + Linux (jeśli nie jeszcze więcej). Windows się do takich rzeczy nie nadaje. > > Aby zareklamować NodeJS napomknę tylko, że unikamy coś czego ja nie lubię > w php, mianowicie: > wywoływania skryptów z osobnych plików z których nie ma już powrotów. A tu byś musiał wyjaśnić co masz na myśli :) Node ma wiele przewag nad PHP, ale tego akurat nie zrozumiałem :P > > W NodeJS nareszcie możemy mieć całą aplikację w jednym pliku, > lub tworzyć sobie własne biblioteki a także korzystać z cudzych > skryptów ściąganych prosto z netu. Czy masz może na myśli hermetyzację modułów? Względną, tak BTW. Moduły to największa nowość jaką wprowadził dla mnie Node. Istnieją, jeśli się nie mylę, od dawna (np. w RingoJS) i są ustandaryzowane przez CommonJS. Rozwiązują praktycznie wszystkie te problemy, które ma przeglądarkowy JS i dla mnie są pewnego rodzaju św. Graalem. > > Dobrą reklamę można zrobić pokazując jak zapisywać dane na dysk, > jak korzystać w NodeJS z systemu MySQL itp. > > NodeJS jest wielki bo każdy może mieć własny domowy/firemkowy serwer www. > > Każdy naukowiec robiący w domu lub w pracowni doświadczenia > i chce przez komórę obserwować wyniki dzięki NodeJS już nie będzie > miał z tym problemów. > Pytanie jednak, czy Node w porównaniu z innymi platformami daje radę :) I dlatego warto wpaść na imprezę DevMeetings (ja jak zawsze będę :P), bo dopiero mając przed oczami liczby, można coś mówić o tej technologii. Do tej pory mamy hype, który tworzy wizerunek Node'a jako zbawcy wszechświata - pora zweryfikować plotki :).
Re: Wydajność Node.JS kontra reszta świata
Author: NKAB -
Date: Mon, 29 Aug 2011 08:18
Date: Mon, 29 Aug 2011 08:18
129 lines
4731 bytes
4731 bytes
Piotrek Reinmar Koszuliński <pkoszulinski@gmail.com> napisał(a):
> Node na Windowsa jest dopiero od miesi=B1ca i od rozwojowej wersji 0.5.x
> (numeracja linuksowa - parzyste stabilne (0.4.x), nieparzyste
> rozwojowe (0.5.x)). Pewnie dlatego jest tak ma=B3o materia=B3=F3w na ten
> temat. W dodatku - nie ma si=EA co ok=B3amywa=E6 - 95% zaawansowanych
> korzystaj=B1cych to Mac + Linux (je=B6li nie jeszcze wi=EAcej). Windows si=
> =EA
> do takich rzeczy nie nadaje.
>
Node do moich zastosowań idealny bo lżejszy niż śniadanko anorektyczki
no i wiekszość klientów, tych mniejszych, to tylko win ruterek
i sieć gotowa.
>
> >
> > W NodeJS nareszcie mo=BFemy mie=E6 ca=B3=B1 aplikacj=EA w jednym pliku,
> > lub tworzy=E6 sobie w=B3asne biblioteki a tak=BFe korzysta=E6 z cudzych
> > skrypt=F3w =B6ci=B1ganych prosto z netu.
>
> Czy masz mo=BFe na my=B6li hermetyzacj=EA modu=B3=F3w? Wzgl=EAdn=B1, tak
BT=
> W. Modu=B3y
> to najwi=EAksza nowo=B6=E6 jak=B1 wprowadzi=B3 dla mnie Node. Istniej=B1,
j=
> e=B6li
> si=EA nie myl=EA, od dawna (np. w RingoJS) i s=B1 ustandaryzowane przez
> CommonJS. Rozwi=B1zuj=B1 praktycznie wszystkie te problemy, kt=F3re ma
> przegl=B1darkowy JS i dla mnie s=B1 pewnego rodzaju =B6w. Graalem.
>
Co do reszty.
No poprostu w php wywołujesz inne pliki .php, które tracą wartości
zmiennych trzeba je dawać np w url lub posługiwac się sysyjnymi.
W JS już nie ma tego problemu wartości zmiennych są cały czas
dostępne i dzięki tak prostej komunikacji jest ich łatwa wymiana.
Nie ma problemu pobrania z JS do PHP i odwrotnie.
Moduły są fajne bo to jak w C mogą być includowane
ale ja lubię mieć całą aplikację (czyli program dla klienta)
w jednym pliku i tu w JS chyba się da a w php to wiem, że nie.
Na razie obczajam tego Node i jednak wersja win ma niedociągnięcia
tekstowo nienaganny ale nie pokazuje obrazków.
Tu mój tescik:
KOD:
// www
var http = require('http');
var fs = require('fs');
var image = fs.readFileSync(__dirname + '\\f1.jpg');
console.log("image.length = " + image.length); // czy widzi obrazek
http.createServer
(
function (request, response)
{
response.writeHead(200, {'Content-Type':'text/html'});
response.write("<DOCTYPE html><html><body>
<h1><hr>body 1...</h1>
<img src='C:\\Node\\f1.jpg'>
<hr></body></html>\n");
response.end("koniec... path="+__dirname); // pokazuje ścieżkę
}
).listen(8080);
console.log('Moj serwer dziala pod http://127.0.0.1:8080/...');
END KOD.
W konsoli jest pokazane, że obrazek jest dostępny
bo jest jego wiekość 12kb
konsola:
C:\Node>node node-01.js
image.length = 11959
Moj serwer dziala pod http://127.0.0.1:8080/...
..a w przeglądarce mamy kwadracik z ikonką obrazka ale nie obrazek
(tak jaby był niedostepny). Poprostu w "Temporary internet files"
go nie ma, tak jakby nie był ściągany z serwerka.
body 1 [x] (imitacja ikonki)
------------------
koniec... path=C:\Node
> Pytanie jednak, czy Node w por=F3wnaniu z innymi platformami daje
> rad=EA :) I dlatego warto wpa=B6=E6 na imprez=EA DevMeetings (ja jak zawsze
> b=EAd=EA :P), bo dopiero maj=B1c przed oczami liczby, mo=BFna co=B6 m=F3wi=
> =E6 o tej
> technologii. Do tej pory mamy hype, kt=F3ry tworzy wizerunek Node'a jako
> zbawcy wszech=B6wiata - pora zweryfikowa=E6 plotki :).
>
Najpierw niech ta wersja dla win dobrze zafunkcjonuje a potem
już w miarę jedzenia apetyt będzie rósł i liczby nabiorą wtedy
znaczenia. Na razie podoba mi się.
Andrzej.
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Re: Wydajność Node.JS kontra reszta świata
Author: aaaa
Date: Mon, 29 Aug 2011 11:04
Date: Mon, 29 Aug 2011 11:04
18 lines
2280 bytes
2280 bytes
> No poprostu w php wywołujesz inne pliki .php, które tracą wartości > zmiennych trzeba je dawać np w url lub posługiwac się sysyjnymi. > W JS już nie ma tego problemu wartości zmiennych są cały czas > dostępne i dzięki tak prostej komunikacji jest ich łatwa wymiana. > Nie ma problemu pobrania z JS do PHP i odwrotnie. W PHP masz GET, POST, cookie, sesje, bazy danych, pliki, więc wybór spory. Pisząc z użyciem Node masz zachowywane zmienne pomiędzy odświeżeniami strony? > Moduły są fajne bo to jak w C mogą być includowane > ale ja lubię mieć całą aplikację (czyli program dla klienta) > w jednym pliku i tu w JS chyba się da a w php to wiem, że nie. Cały program może być w jednym pliku PHP. -- A
Re: Wydajność Node.JS kontra reszta świata
Author: NKAB -
Date: Tue, 30 Aug 2011 06:10
Date: Tue, 30 Aug 2011 06:10
25 lines
1841 bytes
1841 bytes
aaaa <aaaa@aaaaaaaaaaaaaaaaaaa.com> napisał(a): > W PHP masz GET, POST, cookie, sesje, bazy danych, pliki, więc wybór spory. > Pisząc z użyciem Node masz zachowywane zmienne pomiędzy odświeżeniami > strony? > W Node podejrzewam, że nie muszę odświerzać strony bo to produkt lepszy od ajaxa. Na razie Noda widzę jako doskonałego serwerka dla domu lub malutkiej firmy, która chce mieć kontakt poprzez www lub komórkę. Jeśli serwerek stanie się powszechny to mój projekt reformy służby zdrowia poszerzy się o karty pacjenta w domu i w magistracie. Nie będzie już fałszerstw kart przez lekarza a i pogotowie będzie wiedzało na co pacjent jest uczulony lub co mu dolega. Andrzej. -- Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Re: Wydajność Node.JS kontra reszta świata
Author: Piotrek Reinmar Koszuliński
Date: Tue, 30 Aug 2011 08:43
Date: Tue, 30 Aug 2011 08:43
22 lines
2961 bytes
2961 bytes
On 29 Sie, 13:04, "aaaa" <a...@aaaaaaaaaaaaaaaaaaa.com> wrote: > > No poprostu w php wywołujesz inne pliki .php, które tracą wartości > > zmiennych trzeba je dawać np w url lub posługiwac się sysyjnymi. > > W JS już nie ma tego problemu wartości zmiennych są cały czas > > dostępne i dzięki tak prostej komunikacji jest ich łatwa wymiana. > > Nie ma problemu pobrania z JS do PHP i odwrotnie. > > W PHP masz GET, POST, cookie, sesje, bazy danych, pliki, więc wybór spory. > Pisząc z użyciem Node masz zachowywane zmienne pomiędzy odświeżeniami > strony? > W Node też masz GET, POST, cookie, sesje, bazy danych, pliki i jeszcze dużo więcej. Dużo rzeczy, które w PHP w ogóle nie wiem czy da się zrobić, a na pewno nie tak łatwo. Np. serwer do streamingu, do websocketów, wystawić pełne REST-owe API itp itd. Musisz pamiętać, że o ile PHP może być ograniczony (zależy też na czym go postawić), bo jest językiem stworzonym pod serwowanie stron, o tyle Node nie został w ogóle w ten sposób zaprojektowany. Jest stosunkowo niskopoziomową nakładką na system, którą ogranicza jedynie... system. W dodatku - PHP jest najwolniejszym z testowanych zazwyczaj środowisk (bo mówimy tu też o serwerze) - polecam choćby http://devcamps.pl
Re: Wydajność Node.JS kontra reszta świata
Author: aaaa
Date: Tue, 30 Aug 2011 13:42
Date: Tue, 30 Aug 2011 13:42
22 lines
2059 bytes
2059 bytes
Użytkownik "NKAB -" <nkab.WYTNIJ@gazeta.pl> napisał > W Node podejrzewam, że nie muszę odświerzać strony bo to > produkt lepszy od ajaxa. Bez ajaksa i bez odswiezania to nie masz dostepu np. do bazy danych na serwerze. > Na razie Noda widzę jako doskonałego serwerka dla domu > lub malutkiej firmy, która chce mieć kontakt poprzez www > lub komórkę. WampServer, 5 kliknięć "Dalej" i firma ma prawdziwy serwer z MySQL, Apache i PHP. Więc ten argument raczej słaby jest. Ogolnie jednak widze, ze projekt jest bardzo ciekawy, tylko wydaje sie jeszcze malo "dojrzaly" (podobno nie dziala za dobrze pod win). Od razu uprzedzam- nie, nie chce stawiac serwera pod Win, tylko na nim testowac. -- A
Re: Wydajność Node.JS kontra reszta świata
Author: NKAB -
Date: Wed, 31 Aug 2011 06:41
Date: Wed, 31 Aug 2011 06:41
70 lines
3864 bytes
3864 bytes
Piotrek Reinmar Koszuliński <pkoszulinski@gmail.com> napisał(a): > On 29 Sie, 13:04, "aaaa" <a...@aaaaaaaaaaaaaaaaaaa.com> wrote: > > > No poprostu w php wywo=B3ujesz inne pliki .php, kt=F3re trac=B1 warto= > =B6ci > > > zmiennych trzeba je dawa=E6 np w url lub pos=B3ugiwac si=EA sysyjnymi. > > > W JS ju=BF nie ma tego problemu warto=B6ci zmiennych s=B1 ca=B3y czas > > > dost=EApne i dzi=EAki tak prostej komunikacji jest ich =B3atwa wymiana. > > > Nie ma problemu pobrania z JS do PHP i odwrotnie. > > > > W PHP masz GET, POST, cookie, sesje, bazy danych, pliki, wi=EAc wyb=F3r s= > pory. > > Pisz=B1c z u=BFyciem Node masz zachowywane zmienne pomi=EAdzy od=B6wie=BF= > eniami > > strony? > > > > W Node te=BF masz GET, POST, cookie, sesje, bazy danych, pliki i jeszcze > du=BFo wi=EAcej. Du=BFo rzeczy, kt=F3re w PHP w og=F3le nie wiem czy da si= > =EA > zrobi=E6, a na pewno nie tak =B3atwo. Np. serwer do streamingu, do > websocket=F3w, wystawi=E6 pe=B3ne REST-owe API itp itd. Musisz pami=EAta=E6= > , =BFe > o ile PHP mo=BFe by=E6 ograniczony (zale=BFy te=BF na czym go postawi=E6), = > bo > jest j=EAzykiem stworzonym pod serwowanie stron, o tyle Node nie zosta=B3 > w og=F3le w ten spos=F3b zaprojektowany. Jest stosunkowo niskopoziomow=B1 > nak=B3adk=B1 na system, kt=F3r=B1 ogranicza jedynie... system. W dodatku - = > PHP > jest najwolniejszym z testowanych zazwyczaj =B6rodowisk (bo m=F3wimy tu > te=BF o serwerze) - polecam cho=E6by http://devcamps.pl Wiem, że brałeś udział w DevMeetingach i wiesz wiecej na temat Noda. Tak jak ja zrozumiałem to Node wykorzystuje to co oferuje Ajax z tym, że ta komunikacja jest sprawniejsza w obie strony. I naważniejszy atut Noda to to, że kontrola jakichś tam zmian jest możliwa zarówno na sarewerze jak i na kliencie. Czyli, może być tak, że aplikacja na serwerze kontroluje jakieś tam zmiany czy to w pliku czy to na jakimś porcie i tylko wówczas gdy wykryje taką zmianę serwer wysyła do przegladarki odpowiednio spreparowane info. Teraz wiadomo, z inicjatywą przesłania info wychodzi przeglądarka i jak nastawimy timer na 1 sek. to jest tu niepotrzebny ruch w sieci, bo kontrolujemy coś co nie jest nam potrzebne bo się nie zmienia. Prosty przykład chata. Ktos pisze długą odpowiedź a oczekujący na nią ciągle pyta serwer i otrzymuje pakiety niepotrzebnych info. W Node to na serwerze ta kontrola może się odbywać i serwer wysyła info do przeglądarki w momencie jego nadejścia. Jeśli źle to zrozumiałem to będę musiał sobie wymazać z przodu jedynkę, bo dopadł mnie kryzys wieku średniego. Andrzej. -- Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads