Umstieg zu node.js?
lima-city → Forum → Die eigene Homepage → HTML, CSS & Javascript
ahnung
anfrage
anwendung
apache
code
effizienz
eigener server
fehler
grenze
http
laufen
performance
problem
sagen
server
service
sprache
stellen
tausend
url
-
Hallo
Ich habe in der Vergangenheit eigentlich schon viel über node.js gelesen, aber mich nie richtig informiert. Damit kann man ja JavaScript serverseitig laufen lassen. Jetzt bin ich aber auf einen Blogartikel gestossen, weshalb mein Interesse geweckt wurde.
http://dandirks.com/ - My take on a poll service:
Die Performance scheint ja viel besser zu sein. Wenn ich also vor habe, Anwendungen zu scripten mit vielen Datenbank anfragen, würde es sich lohnen das mit nodejs zu machen? Bzw wird ja nicht auf Lima-City unterstützt, oder? Konnte über die Suche nichts finden. Dann müsste ich das alles im localhost einrichten und mir später einen (bezahlten) Hoster suchen, der das unterstützt, richtig?
I was curious to create a poll service based on the incredibly fast and efficient node.js. I really like node.js, and it has been my focus of programming over the last while. The poll service is backed by a redis data store, which is stored entirely in memory and can handle astronomical numbers of requests per second (think 40,000 - 50,000 requests per second for only one server).
Scheint alles recht aufwendig, was meint ihr dazu?
Beitrag zuletzt geändert: 10.6.2014 17:37:06 von c143 -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Ich nutze node auf meinem PC, um meine Web-Projekte mit http://gruntjs.com/ zu bauen (viele jsons => 1 json; stylus => css; jade => html; alles minimieren & einen server laufen lassen, um das ganze anzusehen), gibt auch noch andere Anwendungen, die man damit realisieren kann, aber aufgrund der Sprache steht natürlich Webzeug im Vordergrund.
Node ist unter anderem deswegen so beliebt, weil sich frontend-devs nicht mehr mit 2 (oder mehr) Sprachen auseinander setzen müssen, allerdings scheint ruby on rails noch ein bisschen beliebter zu sein, wenn es darum geht, eine Seite auszuliefern.
Vereinfacht ist das gar nicht so anders als apache + php, du hast einen Server, der den Code parst, uU. ausführt und das Ergebnis an den Client sendet, nur kannst du eine andere Sprache nutzen, um den Code im Hintergrund zu realisieren.
Zur Effizienz kann ich leider nichts sagen. Ein eigenes kleines CMS mit Node habe ich noch nicht ausprobiert, habe bisher nur vorgefertigte Software genutzt.
PS: https://uberspace.de ist ein Webhoster für alles mögliche, Node, Rails, Apache, dein eigener Server etc. Falls du mal etwas damit online stellen willst.
-
tchab schrieb:
Nicht direkt. Der Grosse Unterschied ist, dass der Server alles lädt, nur auf Anfragen wartet und dann etwas zurück sendet.
Vereinfacht ist das gar nicht so anders als apache + php, du hast einen Server, der den Code parst, uU. ausführt und das Ergebnis an den Client sendet.
Mir geht es nicht darum, dass ich alles in der gleichen Sprache schreiben kann, und allgemein nicht um Einfachheit, da wär mir PHP lieber, da ich das schon kenne. Mir geht es rein darum, dass es besser läuft, und darum ist node.js so beliebt.
Das Beispiel von Strawpoll: Die Seite wird hauptsächlich für Streams genutzt. Also z.B. jemand mit 20k views macht ne Umfrage, was er als nächstes machen soll und 5'000 Leute besuchen die Seite innerhalb von wenigen Minuten. Wie wär das mit PHP? Nicht total überlastet?
Ich frage rein darum, was die beste Möglichkeit wäre. Für eine einfache Webseite wär das ja völliger Quatsch, aber bei dem genannten Beispiel ist es was Anderes.
tchab schrieb:
Darauf bin ich gestern wegen deinem Tip-Script gestossen. Habe ich mir schon notiert, danke. :-)
PS: https://uberspace.de ist ein Webhoster für alles mögliche, Node, Rails, Apache, dein eigener Server etc. Falls du mal etwas damit online stellen willst.
-
Ich nutze NodeJS für private Projekte, schreibe unter anderem ein Server Framework für NodeJS, und arbeite auch im Beruf damit, und rundum lässt sich sagen: Wenn du Ahnung von Javascript hast, und damit Ahnung von dem Javascript Prozessablauf, dann ist NodeJS echt ewig geil.
Es ist sehr schnell, sehr effizient, und bietet extrem viele Probleme wenn man keine Ahnung von Javascript hat
Unterstützt wird es von nicht vielen Hosts, an sich ist mir kein freier Host bekannt, jedoch kann man mit NodeJS wirklich sehr gut arbeiten.
Generell kann ich allerdings nicht sagen, ob NodeJS besser als PHP ist, aber "besser" geht an sich sowieso nicht. Du musst auch einiges mehr verstehen, weil du auch einige mehr Fehler machen kannst. Aber wenn du damit Übung hast ist es wundervoll :)
Liebe Grüße -
Mit JavaScript habe ich mich eigentlich die meiste Zeit beschäftigt. Ich denke das wird schon gehen. Mir geht es auch nicht darum, etwas neues lernen zu müssen, das ist ja eigentlich auch was Gutes, mir geht es eher darum, ob ich es brauche oder nicht.
Deshalb eigentlich eine ganz einfache, aber wichtige Frage: Als Beispiel ein Chat oder wie schon genannt strawpoll.me. Bei beiden werden viele Datenbankanfragen gemacht. Allgemein laufen da eigentlich nur Funktionen ab, und das mit extrem vielen Aufrufen, davon ausgegangen, dass die Seite von vielen benutzt wird.
Wenn ich das mit PHP löse, stosse ich doch an Grenzen, oder nicht? Da müsste ich gleich schon nen guten Webspace finden, um dies zu handhaben. Mit node.js könne ich das lösen, und z.B. billig bei uberspace hosten. Verstehe ich das richtig?
Die Frage ist eher an die gerichtet, die viel Erfahrung mit PHP haben, und mir Grenzen nennen können. Z.B. bei strawpoll.me sind es oft tausende innerhalb einer Minute. Dann beruhigt sich das ganze wieder, und sobald eine neue Umfrage von einer Person erstellt wird, die sie an viele Leute teilt, kommen wieder tausende von Anfragen auf einen Schlag.
Lohnt es sich bei Web Apps also? Webseiten mit kleinen einfachen Funktionen sind ja kein Problem. -
Ich habe auch mit PHP Erfahrung, und davon wohl auch genug^^
Prinzipiell, wenn du einen Chat machen willst, oder du willst einen streaming-Dienst, ist das mit NodeJS sehr schnell und einfach umgesetzt. Auch viele Datenbankabfragen sind prinzipiell kein Problem, da, wenn der Non-Blocking Mechanismus richtig genutzt wird, er eine imense Effizienz hat. Das hängt aber von dir ab.
Prinzipiell ist für alles was IO betrifft NodeJS schneller, aber es kommt ganz stark auf dich drauf an. Wenn du das Asynchrone Non-Blocking-Prinzip nicht richtig umsetzt, ist es sehr langsam. Wenn du nicht erkennst, welche Teile der Applikation du in C auslagern solltest (oder allgemein in einen Thread), kannst du ganz schnell den ganzen Server zum stehen bringen.
Solange du keine Fehler machst, ist NodeJS vermutlich schneller und Ressourceneffizienter als PHP. Wenn du allerdings einen Fehler machst, ist die ganze Performance sofort für den KOMPLETTEN Server kaputt. Bei PHP ist es wesendlich schwerer solche Fehler zu machen.
Wenn du RICHTIGE WebApps schreibst, also nicht nur Webseiten deren HTML vom Server generiert wird, sondern ein HTML5-Programm, ist NodeJS eindeutig lernenswert. Für reines Datendurchleiten als REST-Server ist NodeJS geschaffen worden. Irre schnell, irre gut, und wenn DU es gut anfängst auch sehr effizient.
Liebe Grüße -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage