This post originated from an RSS feed registered with Ruby Buzz
by Obie Fernandez.
Original Post: Writing massively scalable software
Feed Title: Obie On Rails (Has It Been 9 Years Already?)
Feed URL: http://jroller.com/obie/feed/entries/rss
Feed Description: Obie Fernandez talks about life as a technologist, mostly as ramblings about software development and consulting. Nowadays it's pretty much all about Ruby and Ruby on Rails.
Erlang is a functional, dynamically typed language with built-in support for concurrency. It was specifically designed by Ericsson for telecommunications applications such as controlling a switch or converting protocols, and thus is particularly suitable for building distributed, soft real-time concurrent systems.
Applications written in Erlang are often composed of hundreds or thousands of lightweight processes communicating via message passing. Context switching between Erlang processes is typically one or two orders of magnitude cheaper than switching between threads in a C program.
Don't know much about Erlang (and most likely I won't anytime soon), but it does strike me as another example of where smart people are choosing to use the right language for the job rather than blindly going with Java (or other mainstream languages) and consequently needing to figure out all the hard stuff for themselves. Oh, and it's also an example of where open-source, proven technology beats the pants off of commercial vendor solutions costing millions.
When simulating 27,000 poker games on my laptop I found that I had about 136,000 players and close to 800,000 processes in total.