Since I’m on an Erlang kick recently, I thought I’d share with you Zotonic, an open source content management system built with Erlang and PostgreSQL. It’s not a new project, it’s been around for a couple years now. It’s up to release 0.6.0. Its admin UI looks a lot like WordPress, but it claims to be 10 times faster than PHP-based CMSes.
It features a templating system is similar to Django, an MVC system and support for websockets and comet.
In an interview with Poking Around Erlang, Zotonic lead architect Marc Worrell explains his reasons for creating an Erlang-based CMS:
In the past years I was confronted with two developments: real time web with xmpp publish/subscribe and Comet-like connections on the one side and on the other a quick evolution of hardware into multicore CPUs. The technologies we were using did not match both developments.
When checking what could support both the software requirements and hardware developments I re-discovered Erlang.
The basic requirements we set were:
1. Support of Ajax and Comet (Websockets).
2. Can withstand a storm of requests for a small set of pages (known as the slashdot effect).
3. Integration of xmpp: publish/subscribe.
4. Easy templating system for front end designers.
5. Rich and flexible data model, extensible by editors.
6. Easy to maintain and extend by programmers.
7. Efficient enough to serve a fairly large and popular website from a single server.
8. Serve many sites from the same server.
He also notes that he’s not worried about using an RDBMS. “For read performance there is not really a problem. We do have quite aggressive caching, keeping the data where it is needed instead where it is stored. So we mostly hit the database for queries, not for reads.”
Zotonic uses code from the Nitrogen Web framework for Erlang and the HTTP libraries WebMachine and MochiWeb.
You can find another interview with Worrell here.
0 Responses
Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.