Kom ihåg mig?
Home Menu

Menu


Fördel med NodeJS(websockets)

Ämnesverktyg Visningsalternativ
Oläst 2013-07-11, 14:30 #1
Anaxa Anaxa är inte uppkopplad
Medlem
 
Reg.datum: Jun 2013
Inlägg: 58
Anaxa Anaxa är inte uppkopplad
Medlem
 
Reg.datum: Jun 2013
Inlägg: 58
Standard Fördel med NodeJS(websockets)

Jag är mycket grön på detta område men jag skulle vilja sätta mig in i det efter jag hört massa personer säga att det är så bra och smidigt och revolutionerande och massa såna där "bra" saker. Men jag har inte hört något om vart man kan tillämpa det. Visst man kan göra en snygg chatt eller ett coolt spel men jag skulle vilja utveckla större projekt i det.
Men är det inte då enklare att bara göra det i ett vanligare programmeringsspråk typ som PHP eller Python? Eller är inte den här tekniken gjord för sånt? Är det bara gjord för typ spel och interaktiva saker?
Anaxa är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-07-11, 14:44 #2
tartareandesire tartareandesire är inte uppkopplad
Supermoderator
 
Reg.datum: Jan 2004
Inlägg: 11 585
tartareandesire tartareandesire är inte uppkopplad
Supermoderator
 
Reg.datum: Jan 2004
Inlägg: 11 585
Det är lätt att göra något liknande i PHP eller andra programmeringsspråk men däremot så får du snabbt problem att skala realtids-applikationer av olika slag. Det är främst där node.js är användbart. Här är en bra artikel att läsa:

http://mashable.com/2011/03/09/node-js/
__________________
Full-stack developer, free for smaller assignments
tartareandesire är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-07-11, 16:57 #3
leonards avatar
leonard leonard är inte uppkopplad
Medlem
 
Reg.datum: Mar 2013
Inlägg: 190
leonard leonard är inte uppkopplad
Medlem
leonards avatar
 
Reg.datum: Mar 2013
Inlägg: 190
node.js är väl även känt för att smidigt sätt kunna behandla data (nu pratar jag inte om olika variabeltyper osv) - eller har jag fel här?
leonard är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-07-11, 22:12 #4
lunarmyss avatar
lunarmys lunarmys är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Apr 2006
Inlägg: 633
lunarmys lunarmys är inte uppkopplad
Mycket flitig postare
lunarmyss avatar
 
Reg.datum: Apr 2006
Inlägg: 633
http://ask.slashdot.org/story/13/07/...the-enterprise kanske kan vara relevant
lunarmys är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-07-12, 10:27 #5
Westmans avatar
Westman Westman är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Jun 2004
Inlägg: 4 021
Westman Westman är inte uppkopplad
Klarade millennium-buggen
Westmans avatar
 
Reg.datum: Jun 2004
Inlägg: 4 021
Websockets är utmärkt för att göra multiplatform-client-server-applikationer där klienterna slipper polla servern efter svar på t.ex. en förfrågan. Några exempel på webbaserade applikationer som inte är simpla chattar och som jag har varit med att utveckla helt eller delvis: passerkortssystem, ärendehanteringssystem, långtidsarkiv (elektroniska dokument).

EDIT: Största fördelen är att datatrafiken minskar till ett minimum och att det sker exakt när det finns tillgängligt utan fördröjning. Bara det data som behövs skickas (= inga omladdningar av hela webbsidor osv.)
Westman är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-07-12, 12:01 #6
Nerix Nerix är inte uppkopplad
Flitig postare
 
Reg.datum: Oct 2010
Inlägg: 398
Nerix Nerix är inte uppkopplad
Flitig postare
 
Reg.datum: Oct 2010
Inlägg: 398
En WS-server kan byggas i princip alla språk som har stöd för trådar, då exkluderat PHP. Node har dock fördelen att köras på V8-motorn, som gör minnesanvändningen till ungefär 60% av samma implementerning i te.x Ruby.
Nerix är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-07-17, 09:07 #7
Anaxa Anaxa är inte uppkopplad
Medlem
 
Reg.datum: Jun 2013
Inlägg: 58
Anaxa Anaxa är inte uppkopplad
Medlem
 
Reg.datum: Jun 2013
Inlägg: 58
Så om NodeJS har stöd för multithreading så kan man köra en process i bakgrunden i en annan thread sen kör alla klienterns polling i andra threads? Än så länge så ser övergången till NodeJS lite suddig ut för mig.
Anaxa är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-07-22, 08:56 #8
Clarence Clarence är inte uppkopplad
Administratör
 
Reg.datum: Jan 2003
Inlägg: 1 974
Clarence Clarence är inte uppkopplad
Administratör
 
Reg.datum: Jan 2003
Inlägg: 1 974
Fördelen är att det är väldigt lätt att använda event-baserad programmering med node.js vilket gör den till ett väldigt lämpligt val för websockets apps. Du har en applikationsloop och det är lätt att lägga allt det tunga bearbetandet (disk IO, externa anrop, push till klienten) asynkront.

Event-baserade (i motsats till trådbaserade) lösningar gör allt som oftast jobbet effektivare när du har många anslutna klienter men framförallt gör det utvecklarens situation desto mindre komplicerad (och komplexitet är största hotet mot snabb utvecklingstakt).

Lite mer om event-loopen och node.js: http://blog.mixu.net/2011/02/01/unde...js-event-loop/

Vill du hellre utforska websockets kan du skriva en implementation i vilket språk som helst, inklusive PHP. Det gör inte att språken är lämpliga för det ...

Den enda stora nackdelen eller specialfallet med node.js när du ska skala är att en applikationsprocess bara använder en core och när du vill använda fler cores startar du fler processer och måste på något sätt se till att kommunikationen mellan processerna sker smärtfritt (dock ej alltid man ens behöver någon kommunikation där).
Clarence är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 16:24.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017