In the Brave New World of cloud computing, fault tolerance is king. Fault tolerance at all levels - the platform, how and where the data is stored, the services and APIs that are used, and even the ability to recover from bugs ("features"?) in the code. This emphasis has resulted in the growing use of actor programming over object-oriented programming, and in particular, the growing influence of Erlang wherever Reliability and Scalability are prized.
This talk will explore the reason why Erlang is particularly suited for Cloud Applications and Services, and why it should be the basis for your App's infrastructure
In the Brave New World of cloud computing, fault tolerance is king. Fault tolerance at all levels - the platform, how and where the data is stored, the services and APIs that are used, and even the ability to recover from bugs ("features"?) in the code. This emphasis has resulted in the growing use of actor programming over object-oriented programming, and in particular, the growing influence of Erlang wherever Reliability and Scalability are prized.
This talk will explore the reason why Erlang is particularly suited for Cloud Applications and Services, and why it should be the basis for your App's infrastructure
Imagine that you have tens of millions of endpoints, each of which is sending you a constant stream of data - to the tunes of petabytes per second. You also have millions of uses who want to monitor and administer them. And don't forget all the historical reports that these users insist upon all the time. And imagine that this these users and endpoints are distributed all over the world.
This pretty much describes our environment - one that we've implemented with not just Riak, but also ElasticSearch, *and* Cassandra (because why go with one, when you can have all three!) - with Erlang tying all the moving pieces together.
Join me as I show you how we successfully drink from this firehose of data without spilling a drop.
Erlang begins and ends with Fault Tolerance.
Fault Tolerance is - formally! - baked into the very genes of Erlang/OTP - something that ends up being amazingly useful when you are building any kind of system. Remember, your clients (and co-workers!) will find new ways to break things, ways that you could never have imagined in your wildest dreams.
This, this is the reason to use Erlang. Once you get it, it completely changes the way you approach development, and you will find yourself writing "erlang" in whatever language you happen to be using (Mind you, writing tail-recursive code in java is a recipe for disaster, but thats another story…)
In this talk, I'll get into this buddha-nature of Erlang/OTP, pointing out how the various features of the language tie together into one seamless Fault Tolerant whole. It'll probably run 45 minutes or so, not counting questions…
VoIP applications and the Cloud - Where gen_fsm really shines
Aptela provides hosted communications services for small business. Our - entirely cloud based - platform includes complex call routing, messaging, web-portals, mobile apps, PSTN/SIP access, and a coffee-grinder attachment. At peak, we handle dozens of calls (and an infinity of HTTP requests) per second
These complex calling services work thanks to the magic of gen_fsm, a behavior which is frequently overlooked at best, and ignored at worst. In the first part of the talk, I'll describe our architecture, with gen_fsm's critical role in it as the focus. The second part will delve into the specifics of how this behavior can help build out complex calling services, with examples culled from some of Aptela's cooler (or crazier?) features
Peak load, and burst-y traffic are problem spaces which are often (and tragically) confused for each other, invariably to the detriment of both ops and users. While peak-load is all about capacity management, in a burst-y situation, you might have to prioritize - or even drop! - requests. Knowing which requests to process, and how to actually process them is the world of Active Queue Management (AQM). While AQM has long been exclusively in the domain of the TCP/IP crowd, it has been slowly making its way into the world of cloud-services, albeit with much (faulty!) wheel-reinventing.
Join me as I take you through the world of Active Queue Management, back-pressure, load-ramping, and tactical avoidance, things that most people should be architecting into their services, but aren't.
People like to communicate the way *they* want to, not the way they are *made* to. Furthermore, employees now expect access to consumer class "usable" technologies in their business environments - "Consumer Grade" trumps "Business Grade" 10 times out of 10.
This is the world of Communications In The Cloud, where the synchronous modalities of Voice and Text meet the asynchronous modalities of Email, SMS, IM, Twitter, and the like. These modalities can - poorly - emulate each other, but genuine innovation and value is provided by services that can seamlessly move across these synchronous and asynchronous channels as users' needs change.
Presentación de la conferencia de Irènes Dupuis y Antonio Perdomo en el curso Planificación y Ordenación del espacio rural de Canarias en la Universidad Ambiental de La Palma 2009
Imagine that you have tens of millions of endpoints, each of which is sending you a constant stream of data - to the tunes of petabytes per second. You also have millions of uses who want to monitor and administer them. And don't forget all the historical reports that these users insist upon all the time. And imagine that this these users and endpoints are distributed all over the world.
This pretty much describes our environment - one that we've implemented with not just Riak, but also ElasticSearch, *and* Cassandra (because why go with one, when you can have all three!) - with Erlang tying all the moving pieces together.
Join me as I show you how we successfully drink from this firehose of data without spilling a drop.
Erlang begins and ends with Fault Tolerance.
Fault Tolerance is - formally! - baked into the very genes of Erlang/OTP - something that ends up being amazingly useful when you are building any kind of system. Remember, your clients (and co-workers!) will find new ways to break things, ways that you could never have imagined in your wildest dreams.
This, this is the reason to use Erlang. Once you get it, it completely changes the way you approach development, and you will find yourself writing "erlang" in whatever language you happen to be using (Mind you, writing tail-recursive code in java is a recipe for disaster, but thats another story…)
In this talk, I'll get into this buddha-nature of Erlang/OTP, pointing out how the various features of the language tie together into one seamless Fault Tolerant whole. It'll probably run 45 minutes or so, not counting questions…
VoIP applications and the Cloud - Where gen_fsm really shines
Aptela provides hosted communications services for small business. Our - entirely cloud based - platform includes complex call routing, messaging, web-portals, mobile apps, PSTN/SIP access, and a coffee-grinder attachment. At peak, we handle dozens of calls (and an infinity of HTTP requests) per second
These complex calling services work thanks to the magic of gen_fsm, a behavior which is frequently overlooked at best, and ignored at worst. In the first part of the talk, I'll describe our architecture, with gen_fsm's critical role in it as the focus. The second part will delve into the specifics of how this behavior can help build out complex calling services, with examples culled from some of Aptela's cooler (or crazier?) features
Peak load, and burst-y traffic are problem spaces which are often (and tragically) confused for each other, invariably to the detriment of both ops and users. While peak-load is all about capacity management, in a burst-y situation, you might have to prioritize - or even drop! - requests. Knowing which requests to process, and how to actually process them is the world of Active Queue Management (AQM). While AQM has long been exclusively in the domain of the TCP/IP crowd, it has been slowly making its way into the world of cloud-services, albeit with much (faulty!) wheel-reinventing.
Join me as I take you through the world of Active Queue Management, back-pressure, load-ramping, and tactical avoidance, things that most people should be architecting into their services, but aren't.
People like to communicate the way *they* want to, not the way they are *made* to. Furthermore, employees now expect access to consumer class "usable" technologies in their business environments - "Consumer Grade" trumps "Business Grade" 10 times out of 10.
This is the world of Communications In The Cloud, where the synchronous modalities of Voice and Text meet the asynchronous modalities of Email, SMS, IM, Twitter, and the like. These modalities can - poorly - emulate each other, but genuine innovation and value is provided by services that can seamlessly move across these synchronous and asynchronous channels as users' needs change.
Presentación de la conferencia de Irènes Dupuis y Antonio Perdomo en el curso Planificación y Ordenación del espacio rural de Canarias en la Universidad Ambiental de La Palma 2009