NodeJS

Momenteel superhip: NodeJS servers. Say what? NodeJS is eigenlijk gewoon Javascript (wat normaal in je browser draait) op de server. En voor je je afvraagt "waarom zou ik": Javascript kan wat dingen die talen als PHP niet kunnen en vice versa trouwens, dus meestal gebruik je wel een combinatie van beiden. En de belangrijkste daarvan is dat Javascript niet zoals bijvoorbeeld PHP "bovenaan begint en de code doorloopt tot het eind, en dan een pagina teruggeeft", maar continue draait en reageert op "events". Een event kan vanalles zijn ("data opgevraagd", "bericht geplaatst", "bestelling voltooid" etc.), dat hangt van jouw implementatie af. Voor realtime-achtige dingen is dat dus veel efficienter!

...in cominatie met Dnode PHP...

Al je code (laten) herschrijven naar Javascript is natuurlijk niet chill en duur enzo, en daarnaast heeft Javascript ook wel de nodige limitaties (vooral qua objecten en classes, maar ook qua namespacing en andere toolkits). Dnode is een techniek om je NodeJS server te laten praten met andere talen, in ons geval meestal PHP. Kort gezegd draaien we naast NodeJS ook een Dnode server voor je, die opdrachten accepteert en ze uitvoert in vertrouwd PHP, wat echt is ontworpen voor op de server. De Dnode server geeft uiteindelijk weer een Javascript resultaat terug aan NodeJS, die het naar de bezoeker stuurt.

...in combinatie met socket.io...

En hier wordt het pas echt leuk. socket.io is een onwijs goeie implementatie van Web Sockets, die realtime communicatie mogelijk maken met browsers. Kort uitgelegd: bezoekers A en B zitten allebei op site X. Bezoeker A laat een reactie achter. De browser van bezoeker B is geinstrueerd om hiernaar te luisteren, en NodeJS/Dnode/socket.io ontvangt het bericht van A, en stuurt een update naar B. Bezoeker B ziet nu, zonder dat ze hoeft te verversen, het bericht verschijnen! Het standaard voorbeeld hiervan is "een chat", maar we kunnen samen vast nog wel 1000 hippe ideeen bedenken. Neem gerust vrijblijvend contact met ons op om te kijken wat de mogelijkheden zouden kunnen zijn voor jouw site.