Use enter or right arrow for next slide, left arrow for previous slide.

Programiranje strežnikov za real-time internet

Janko Metelko, REFAKTOR d.o.o.

qwikislide ;)

Kaj si bomo pogledali?

kodo strežnika v treh paradigmah

  • Events/Callbacks: node.js
  • Coroutines: Lua
  • Actors/Message passing/FP: Erlang
  • opravičujem se za tujke

    koda bo dostopna na http://jankom-code.posterous.com

    WARNING: Programmer`s Art Ahead!

    Kaj je strežnik?

    Program na katerega se odjemalci povežejo. Običajno preko TCP socketov.


    Strežnik za Real-time?

    Veliko dolgotrajnih in hkratnih povezav z odjemalci.

    Pristop 1 process/thread na povezavo se tu ne obnese.

    .. začnimo ..

    Kaj točno dela naš program?

    Razpošilja sporočila med svojimi odjemalci.


    Demo

    Rezerva


    Eventi/Callbacki: node.js

    Kaj je node.js

  • framework/engine za asinhron networking
  • googlov V8 javascript engine

  • Coroutine: Lua+LuaSocket

    Kaj je Lua

  • minimalističen, hiter, dinamičen, emeddable jezik
  • coroutines, tail call optimisation, closures ..


  • Actors/MP/FP: Erlang

    Kaj je Erlang

  • dinamičen funkcijski jezik s poudarkom na hkratnosti (concurrency)
  • Actors, message passing, single assignment


  • Primerjajmo


    Vprašanja

    «back revision 17/17 made 11-Mar-2010/13:23:18