Yakaz engineers share their tech knowledge and experience.

03/21/2011

We, at Yakaz, use Erlang to power several
services of Yakaz.com. We chose this language
for its scalability and reliability orientations: the website won't suffer
from a shutdown or a crash of a server, thanks to Erlang's failover
and distribution features. It even provides ways to upgrade a service
without stopping and restarting it! The latter is a particularily
valuable feature, because it allows us to prevent any service
disruption on Yakaz.com: users won't experience half-loaded
classifieds search results, loss of their chat session in the middle of
a conversation with a neighbour or scary messages from their browser
because the connection was closed unexpectedly.

To deploy those services on a production system running Debian, we rely on Debian's packaging
system. However, Erlang hot upgrade feature (sometimes called "live upgrade")
and common packaging systems don't integrate well, and we wanted it so
badly!

To solve this problem, we kept one simple package for each Erlang
application, like other official Debian packages. On top of this, we made
a meta-package which depends on the application packages. We used the
maintainer scripts of this meta-package to execute whatever was needed to
proceed with the hot upgrade. But we had to fight against some peculiarities
of the official Debian's Erlang packages, mainly:

Multiple versions of a single application can't coexist.

Files in Erlang root directory can't be modified by third-party packages
because they're overwritten by an Erlang packages update.

03/10/2011

It's been almost six years that Yakaz has been created. Many people joined the development team to improve the site and we hope you like it ! To cling to the ideal of an open web with open standards we favor the use and enhancement of opensource projects. In this context, our precious geeks want to publish some articles to comment on various technical subjects. Long gone are the incomprehensible pages of code that look like monitors from the Matrix movies. Now and every month, Yakaz Engineers will speak freely on some parts of their work and will try help the whole community on the web. We hope you will have much pleasure in reading these articles.

Feel free to respond and ask questions, our engineers will be there to assist !