LISBON 10-12
APRIL 2014
LISBON 10-12
APRIL 2014

Edit your talk

Talks > Elegant asynchronous, stateful applications in node

Status

This talk has been approved for this year's edition. Check the calendar for more information.

Language

English

Abstract

Writing code that runs continuously on one thread, but which supports potentially many hundreds or thousands of concurrent requests means you have to structure your application very carefully. State is the enemy here, especially in the context of wanting to write performant, non-blocking asynchronous code.

In my talk, I'd like to present where state comes from in HTTP-centric applications, some common gotchas around where state is mutated and retained in node, how this can provide a source of fun and fascinating race conditions for all the family, and discuss techniques which can be used to mitigate the horror of all this, in an idiomatic, scalable and easily abstracted way.

I'm going to touch on:
- how call stacks are unwound
- differences between sync and async code (deferred calls)
- how to leverage domains to capture errors gracefully across async boundaries
- implications for performance
- do a whirlwind cruise through browserify & npm for frontend

..and.. discuss our use of a new, under-development node package, continuation local storage, which will be the focus of the talk after establishing the context.

Any questions, please feel free to ask below!

Proposal date

2013-11-16 23:56:02

Rate & Comment

You can use this section to optionally comment on this talk (comments are public). Your comment is saved when you press the "comment" button at the bottom. Your thumb decision is private, no one will see it. You can change thumb decision at any time later, the last submission will prevail. You can post as many comments as you want.

You need to be registered and logged in to comment or rate this talk proposal.

Comments

David Dias
on , said:

NODE! :D

$geekfactor 0x6

João Ricardo Lourenço
on , said:

Sounds just about brilliant.

$geekfactor 0x0

Igor Antunes
on , said:

This talks seems very interesting :p You got my upvote xD

$geekfactor 0x0

António Pedro Oliveira Cunha Santos
on , said:

Looks interesint + Dan Peddle, you got my upvote.

Hope to see this talk!

$geekfactor 0x0

Rui Grandão Rocha
on , said:

This seems a really interesting talk i hope to see it :)

$geekfactor 0x0

David Silva
on , said:

Looking forward to know more about this subject.

$geekfactor 0x0

Pedro Daniel Pinto Duarte
on , said:

Upvoted :)

$geekfactor 0x0

Pedro Carmona
on , said:

nice

$geekfactor 0x0

João Barata Oliveira
on , said:

Seems like a cool talk! Upvoted!

$geekfactor 0x0

João Henriques
on , said:

I'm upvoating this! Didn't find any other node talks this year.

Everyone deserves the opportunity to learn how to use node.js :)

$geekfactor 0x0

José Ribeiro
on , said:

I hope Dan delivers what he is promising, because this looks like an awesome talk!

$geekfactor 0x0

Pedro Miguel Costa Maia
on , said:

awesome talk, Up ;)

$geekfactor 0x0

Marin Todorov
on , said:

yup, sounds like fun :]

$geekfactor 0x0

Miao Sun
on , said:

new stuff to learn, great!

$geekfactor 0x0

Pedro Costa
on , said:

Computer says yes!!!

$geekfactor 0x0

Pedro Costa
on , said:

Computer says yes!!!

$geekfactor 0x0

Raul Bravo
on , said:

seems to be interesting.. node.js is gaining some reputation lately, so it should be useful to learn new suff ;)

$geekfactor 0x0

Rui Bernardo
on , said:

yes! this is "the talk"
this is a interesting talk!

$geekfactor 0x0

Miao Sun
on , said:

upvoted (forgot to upvote last time)

$geekfactor 0x0

Andre Duarte
on , said:

Definitely yes! See you there!

$geekfactor 0x0

Tiago Sintra
on , said:

Node is revolutionizing the Web concepts, so I'm interested to know more.

$geekfactor 0x0

Mário Gago
on , said:

Did you "nodice"?

$geekfactor 0x0

João Salada
on , said:

Really looking forward to this talk. Currently, I am developing some web sytems at my company and we are facing problems in dealing exactly with state and and asynchronous requirements!

$geekfactor 0x0

Dan Peddle
on , said:

Hey Joao! Yes, it's a super interesting thing to look at. I presented a version of this talk at a hacker news meetup last week here in Berlin, and it seemed to go down well. So, also looking forward to doing this talk at CB with a bit more time in hand.

But - keep in mind I'm only going to be looking at node - I guess other languages and environments will have their own idiomatic ways of handling this.

$geekfactor 0x0

You must log-in in order to comment this.