Written by

Après plu­sieurs mois de déve­lop­pe­ment et un retard à l’al­lu­mage, la nou­velle archi­tec­ture est désor­mais en pro­duc­tion sur tous les comptes depuis quelques jours :D

Ce billet ne ren­tre­ra pas dans les détails tech­niques de cette nou­velle archi­tec­ture, pour la simple et bonne rai­son que j’ai don­né une confé­rence abor­dant lar­ge­ment le sujet aux DjangoCong. Cette der­nière sera dis­po­nible sous peu en vidéo – nous l’an­non­ce­rons sur le blog – et per­met­tra alors aux curieux d’en savoir plus sur l’en­vers du décor.

Concrètement, cette archi­tec­ture ajoute une sou­plesse qui va nous per­mettre, au fil des semaines et des mois pro­chains, de consi­dé­ra­ble­ment étof­fer les fonc­tion­na­li­tés que nous pro­po­sons. Dans un pre­mier temps, vous béné­fi­ciez déjà d’un ajout impor­tant : vous avez désor­mais accès aux logs d’er­reur et d’ac­cès en temps réel. Deux fichiers, error.log et access.log, sont acces­sibles dans ~/admin/log/.

Si les logs d’ac­cès sont un petit bonus, les logs d’er­reur sont en revanche une avan­cée consi­dé­rable : vous pour­rez désor­mais savoir plus pré­ci­sé­ment pour­quoi votre appli­ca­tion ne démarre pas, sans avoir à nous sol­li­ci­ter (mais nous res­tons bien enten­du à votre dis­po­si­tion, cela ne change évi­dem­ment pas).

Mais le meilleur reste à venir, et les vraies nou­veau­tés arri­ve­ront pro­gres­si­ve­ment. Le sup­port du SSL, par exemple, qui est déjà dis­po­nible en beta (ceux qui en ont un besoin urgent peuvent nous contac­ter). Le sup­port de nou­velles tech­no­lo­gies, éga­le­ment (WSGI, Passenger, lan­gages exo­tiques comme Erlang ou OCaml, etc.).

Nous avons pro­fi­té du pas­sage à cette nou­velle archi­tec­ture pour mettre à jour le ser­veur HTTP prin­ci­pal. Cela signi­fie de meilleures per­for­mances, mais aus­si la sup­pres­sion du redé­mar­rage régu­lier de vos appli­ca­tions, ce qui entrai­nait un temps de latence désa­gréable au pre­mier accès.

Dernière évo­lu­tion récente, sans rap­port avec la nou­velle archi­tec­ture HTTP : les mails sont désor­mais sto­ckés sur un ser­veur à part, auto­nome. Cela veut dire qu’il y a une totale étan­chéi­té entre nos ser­vices HTTP et mail : si un ser­veur HTTP devait avoir un sou­ci, cela n’im­pac­te­rait plus les mails comme c’é­tait le cas jus­qu’à pré­sent. Par ailleurs, les len­teurs qui pou­vaient être visibles en IMAP devraient être éliminées.

Ces évo­lu­tions sont un véri­table tour­nant dans l’his­toire (tech­nique) d’al­ways­da­ta. Nous avons com­men­cé à y réflé­chir dès 2008, et le déve­lop­pe­ment a mobi­li­sé toutes nos res­sources au cours des der­niers mois. Maintenant que cela est der­rière nous, nous allons vrai­ment pou­voir vous (et nous) réga­ler avec des fonc­tion­na­li­tés concrètes.

Un grand mer­ci, enfin, à tous ceux qui nous ont aidés : en par­ti­ci­pant au beta-test, en remon­tant des bugs par­fois obs­curs, ou tout sim­ple­ment en se mon­tant patients et confiants. Champagne¹ ! :)

¹ avec modé­ra­tion.Après plu­sieurs mois de déve­lop­pe­ment et un retard à l’al­lu­mage, la nou­velle archi­tec­ture est désor­mais en pro­duc­tion sur tous les comptes depuis quelques jours :D

Ce billet ne ren­tre­ra pas dans les détails tech­niques de cette nou­velle archi­tec­ture, pour la simple et bonne rai­son que j’ai don­né une confé­rence abor­dant lar­ge­ment le sujet aux DjangoCong. Cette der­nière sera dis­po­nible sous peu en vidéo – nous l’an­non­ce­rons sur le blog – et per­met­tra alors aux curieux d’en savoir plus sur l’en­vers du décor.

Concrètement, cette archi­tec­ture ajoute une sou­plesse qui va nous per­mettre, au fil des semaines et des mois pro­chains, de consi­dé­ra­ble­ment étof­fer les fonc­tion­na­li­tés que nous pro­po­sons. Dans un pre­mier temps, vous béné­fi­ciez déjà d’un ajout impor­tant : vous avez désor­mais accès aux logs d’er­reur et d’ac­cès en temps réel. Deux fichiers, error.log et access.log, sont acces­sibles dans ~/admin/log/.

Si les logs d’ac­cès sont un petit bonus, les logs d’er­reur sont en revanche une avan­cée consi­dé­rable : vous pour­rez désor­mais savoir plus pré­ci­sé­ment pour­quoi votre appli­ca­tion ne démarre pas, sans avoir à nous sol­li­ci­ter (mais nous res­tons bien enten­du à votre dis­po­si­tion, cela ne change évi­dem­ment pas).

Mais le meilleur reste à venir, et les vraies nou­veau­tés arri­ve­ront pro­gres­si­ve­ment. Le sup­port du SSL, par exemple, qui est déjà dis­po­nible en beta (ceux qui en ont un besoin urgent peuvent nous contac­ter). Le sup­port de nou­velles tech­no­lo­gies, éga­le­ment (WSGI, Passenger, lan­gages exo­tiques comme Erlang ou OCaml, etc.).

Nous avons pro­fi­té du pas­sage à cette nou­velle archi­tec­ture pour mettre à jour le ser­veur HTTP prin­ci­pal. Cela signi­fie de meilleures per­for­mances, mais aus­si la sup­pres­sion du redé­mar­rage régu­lier de vos appli­ca­tions, ce qui entrai­nait un temps de latence désa­gréable au pre­mier accès.

Dernière évo­lu­tion récente, sans rap­port avec la nou­velle archi­tec­ture HTTP : les mails sont désor­mais sto­ckés sur un ser­veur à part, auto­nome. Cela veut dire qu’il y a une totale étan­chéi­té entre nos ser­vices HTTP et mail : si un ser­veur HTTP devait avoir un sou­ci, cela n’im­pac­te­rait plus les mails comme c’é­tait le cas jus­qu’à pré­sent. Par ailleurs, les len­teurs qui pou­vaient être visibles en IMAP devraient être éliminées.

Ces évo­lu­tions sont un véri­table tour­nant dans l’his­toire (tech­nique) d’al­ways­da­ta. Nous avons com­men­cé à y réflé­chir dès 2008, et le déve­lop­pe­ment a mobi­li­sé toutes nos res­sources au cours des der­niers mois. Maintenant que cela est der­rière nous, nous allons vrai­ment pou­voir vous (et nous) réga­ler avec des fonc­tion­na­li­tés concrètes.

Un grand mer­ci, enfin, à tous ceux qui nous ont aidés : en par­ti­ci­pant au beta-test, en remon­tant des bugs par­fois obs­curs, ou tout sim­ple­ment en se mon­tant patients et confiants. Champagne¹ ! :)

¹ avec modération.