Cyruss life

Aller au contenu | Aller au menu | Aller à la recherche

vendredi, juillet 2 2010

Optimisation PHP : Skyrock : 3 milliards de pages servies par mois !

Sur ce document la migration de skyrock est présenté.

Le projet en chiffres :

  • 7 baies hébergées, totalisant une cinquantaine de serveurs
  • 11 To utiles de Skyblogs stockés, soit 40 To de capacité
  • 4.7 millions de Skyblogs(1) le poids moyen d'un Skyblog étant 2,5 Mo
  • 4.1 millions de visites par jour(2)
  • 2 millions de navigateurs uniques par jour(2)
  • 3 milliards de pages servies par mois(2), soit environ 100 millions de pages vues par jour(2), soit des pics de consommation qui dépassent les 2 gigabits/seconde

Un autre article sur le sujet présente l'architecture de skyrock.

Je vais essayer de les contacter pour un retour d'expérience au forum PHP

mardi, avril 20 2010

Gotan Project 3.0

jeudi, mars 11 2010

PHP Hautes Performances - Conférence de Rasmus @ confoo

Il y a quelques jours Rasmus annonçait sur Twitter qu'il avait retravaillé sa conférence sur l'optimisation des performances de PHP. J'ai déjà assisté deux fois aux anciennes versions donc par curiosité je suis allé voir.

Ce que j'aime bien dans l'approche de Rasmus c'est qu'elle est très concrète. On commence par une application installée de façon basique sur une architecture basique. On fait des tirs de charges pour mesurer les performances puis on améliore et à chaque fois on relance les tirs de charges et on constate les changements.

J'ai donc été voir avec interet la nouvelle version de la conférence de Rasmus que vous pouvez trouver ici :

http://talks.php.net/show/confoo10

Pour ceux qui connaissent c'est grossomodo la même chose sauf qu'il fait des tests sur HipHop ;) Pour les autres je dirais que ce n'est pas la meilleur mouture de la série mais vous devriez quand même y trouver votre compte.

Cyruss

lundi, février 22 2010

PHP Hautes Performances - Coté MySQL avec le site 24h00

Dernièrement je vous ait parlé du site netlog qui sert jusqu'à 5 milliards de pages vues par mois basé sur une architecture LAMP. La particularité de cette application était d'avoir un très fort ratio en lecture / écriture (entre 1.4 et 1) et donc la solution résidait dans la mise en place de sharding sur la base MySQL.

L'application de 24h00 fait que la problématique d'écriture est moindre donc une réplication MySQL est plus adaptée. Le site Haute disponibilité vous présente avec un peu plus de détail l'architecture mise en place.

La réplication est une bonne solution pour gérer la scalabilité en lecture.

mardi, février 16 2010

PHP Hautes Performances - Coté MySQL avec l'exemple de Netlog

Rendre une application LAMP performante implique d'optimiser plusieurs éléments. En travaillant sur le sujet entre autres dans le cadre de nos formations PHP Tuning, j'ai été amené à consulter le retour d'expérience de Netlog par l'un de ses responsable Jurriaan Persyn.

Netlog est un réseau social de plus de 60 millions de jeunes en Europe.

Cette présentation est issue de l'édition 2009 du FOSDEM et est intéressante en terme d'optimisation de performance car on y voit une application dont le ratio lecture/écriture est très fort (entre 1.4 et 1) et avec des volumétries de l'ordre de 3000 requêtes par seconde durant les pics d'activités et près de 5 milliards de pages vues par mois.

On découvre dans ce retour les différentes approches utilisées pour optimiser les performances. Dans le cadre de Netlog le goulot d'étranglement se situe aux bornes de MySQL. Les pistes de la réplication sont évoquées mais le ratio lecture / écriture les mets rapidement hors jeu, se trouve alors l'alternative du sharding (fragmentation).

http://www.jurriaanpersyn.com/archives/2009/02/12/database-sharding-at-netlog-with-mysql-and-php/

mardi, janvier 5 2010

Certification Expert Talend

J'ai obtenu ma certification Talend :)


Talend est vraiment un bon outil de travail pour manipuler les données. Certainement le meilleur ETL Open Source à ce jour.

mercredi, décembre 30 2009

Sauvez MySQL !

La base de données MySQL est en réel danger depuis son rachat par Oracle. Les promesses de maintien données par Oracle sont une promesse de dupe. Il est urgent d'agir pour soutenir une alternative viable. La prochaine dead line est le 4 Janvier, agissez sinon vous le regretterez plus tard.

Prenez 5minutes et signez la pétition !!!

Faites passer le message c'est extrêmement important !

vendredi, novembre 13 2009

Plus besoin de la Zend Platform avec APM et Pinba ?

Je suis à la conférence "Monitoring d'applications/environnements PHP : APM et Pinba " du forum PHP.

Patrick Allaert et Davide Mendolia présentent deux outils qui ont l'air intéréssants ;

  • APM (Alternative PHP Monitor )
  • Pinba

Ces deux outils permettent de faciliter le monitoring de ses applications PHP.

Alternative PHP Monitor (APM) : extension PHP non-intrusive permettant la capture de divers évènements, tels que les erreurs et lenteurs d'exécution. Pour l'installer : http://code.google.com/p/peclapm/wiki/Install

Pinba : extension PHP permettant la collecte en base de données d'informations relatives à l'exploitation de vos applications en production. De multiples rapports peuvent ensuite être élaborés pour fournir des statistiques, notamment de temps d'exécution sur des parties de codes.

Je suis dessus pour essayer de l'installer mais impossible de faire du svn d'ici. On aurait bloqué les ports

Pour ce que j'en vois des démos les bases sont posées, les informations sont visibles facilement avec APM mais pour Pinba tout est stocké dans des tables et il n'y a pas encore de visuel d'affichage créé. Un beau potentiel, je pense que des retours et contributions seront bienvenus.

En direct du forum PHP

vendredi, novembre 6 2009

Concours : Gagnez le livre PHP5 Avancé !

Sur un site j'ai vu qu'il y avait un super concours pour gagner un livre "PHP 5 avancé".

livre PHP

Allez y et gagnez cette bible de la programmation PHP !!!! Une bonne initiative soutenue par les auteurs du livre :)

Le Communiqué de Presse !

le 01 Novembre 2009 – Du 01/11/2009 au 30/11/2009, TitaXium et son équipe de développeurs offrent la possibilité de gagner le livre « PHP5 Avancé - 5éme édition » de Eric Daspet et Cyril Pierre de Geyer aux éditions Eyrolles.

Pour participer au concours faites un lien vers le site http://methylbro.titaxium.org/ sur votre site, votre blog ou votre page perso, et laissez un commentaire avec un lien pointant vers la page de votre site sur laquelle vous avez fait le lien sur le billet suivant : http://methylbro.titaxium.org/post/2009/11/01/concours-gagnez-le-livre-php5-avance

Le gagnant sera tiré au sort parmi les participants ; et recevra sont cadeau directement chez lui.

mardi, octobre 27 2009

[12 et 13/11/2009] Forum PHP 2009 : en vidéo

Le forum PHP 2009 aura lieu les 12 et 13 novembre 2009 à la Cité des Sciences et de l'Industrie de Paris (Porte de la villette - Paris 19ème) : un événement incontournable expliqué par Xavier Gorse, président de l'AFUP :


Introduction au Forum PHP 2009 !

Cette année, Le Forum PHP accueillera pour la première fois en France, Michael "Monty" Widenius, le créateur de MySQL qui a quitté SUN pour lancer un fork nommé MariaDB ! Mais aussi des conférenciers tels que Damien Seguy, Michael Chaize, Olivier Dasini, Julien Pauli, Zoe Slattery (PHP Women), Johannes Schluter (PHP), etc.

Les temps forts:

  • Une journée consacrée à MySQL grâce à la participation de l'association LeMug
  • La présentation de Michael "Monty" Widenius, le créateur de MySQL qui a quitté SUN pour lancer un fork nommé MariaDB
  • Les meilleurs experts PHP nationaux et internationaux sur de nombreux sujets
  • Une salle spécialement dédiée à la découverte de projets Open Source Francophones

Un événement à ne pas manquer !!

mercredi, octobre 7 2009

Livre blanc : "industrialisez PHP"

Mes collègues chez AlterWay, Jean-marc Fontaine et Damien Seguy ont fait un superbe travail dans l'écriture d'un livre blanc sur l'industrialisation PHP. Je le relaie donc ici :)

Next step coté business on travaille avec Damien à faire une formation industrialiser PHP chez Anaska. Cette formation sera une évolution de la formation PHP bonnes pratiques je pense.


En près de 15 ans, PHP a conquis la plupart des entreprises. Au début utilisé pour des projets annexes, il est aujourd’hui au cœur du SI.

Les projets se complexifient, les délais se raccourcissent : il est temps d’industrialiser les processus de développement.

Ce Livre Blanc dresse un état de l’art des outils et méthodes qui permettent aujourd’hui d’industrialiser ses développements PHP.

URL : http://www.alterway.fr/publications/livre-blanc-industrialisation-php

  • Auteurs : Damien Seguy, Jean-Marc Fontaine
  • Editeur : Alter Way
  • Langue : Français
  • Publication : 2009

mercredi, septembre 30 2009

Free, voleurs !

En Juillet j'ai hésité à prendre Free comme fournisseur d'accès car ils ont une box qui est mieux que celles des concurrents.
Du coup j'ai fait une demande en ligne (avec fourniture des informations bancaires) avant de changer d'avis (pour l'offre ideo de Bbox, bien moins cher au total) et de leur envoyer un message pour leur demander d'annuler ma demande.

J'ai reçu de la part de leur support un message m'indiquant qu'il me suffisait de ne pas réceptionner la freeBox. Je me suis exécuté.

Il y a deux semaines en regardant mon relevé de compte je m'aperçois que je suis débité de 29.9 € par free ! J'envoie un message à leur support pour demander le remboursement. Ils me répondent que ma ligne est active malgré que je n'ai ni freebox ni rien d'actif chez moi (et vu que la Bbox fonctionne c'est qu'ils sont pas activé dessus).

Free a un support de merde et une gestion des flux client pourri. J'ai fait opposition et maintenant j'attends un remboursement qui j'en suis sur sera long à venir....

Comme quoi free c'est bien tant que t'as pas de soucis, pour le reste c'est vraiment des nazes...

jeudi, septembre 24 2009

Une cour d'Appel condamne pour non respect de la licence GNU GPL

Vu sur Solutions Logiciels

Le 16 septembre 2009, la cour d'Appel de Paris, dans un arrêt qui fera jurisprudence 1, a reconnu coupable la société Edu4 2 pour ne pas avoir fourni à son client l'AFPA 3 les sources du Logiciel Libre VNC 4 et pour avoir supprimé le texte de la licence GNU GPL 5. L'auteur de VNC n'était pas impliqué : l'AFPA a fait valoir ses droits en tant qu'utilisateur de Logiciel Libre.

Les faits remontent au début de l'année 2000, lorsque l'AFPA lance un appel d'offre d'un montant de plusieurs millions d'euros pour renouveler l'équipement de ses salles de formation. La société Edu4 remporte le marché public. Durant l'été 2001, lors de la recette de la première phase du marché, l'AFPA découvre que le Logiciel Libre VNC est utilisé pour permettre aux formateurs de prendre le contrôle du poste des élèves. Malgré des demandes répétées et l'intermédiation de la FSF France, Edu4 refuse de fournir les sources modifiés de VNC. L'AFPA introduit alors une action en justice. En 2002, Edu4 fournit des sources mais qui ne correspondent pas à la version de VNC livrée en 2001. La FSF France, partie sachante, découvre ensuite que Edu4 a également modifié les notices de droit d'auteur, prétendant être l'auteur de VNC, et supprimé le texte de la licence GNU GPL. La bataille juridique va se prolonger plusieurs années.

La décision de la cour d'Appel est historique car elle reconnaît judiciairement que lors de la redistribution d'un logiciel sous licence GNU GPL les sources correspondantes doivent être accessibles 6. Cette obligation, pivot légal de la "gauche d'auteur" (aussi appelée copyleft en anglais) 7 - l'utilisateur a besoin de la forme source pour enrichir ce qu'il reçoit et le transmettre à son tour -, est enfin reconnue comme telle. Plus remarquable encore, l'auteur du logiciel VNC n'a pas été sollicité pour être partie au procès. Cela bouscule l'idée que seul l'auteur d'un Logiciel Libre peut faire respecter la licence 8. Tout comme l'AFPA a réclamé les sources de VNC à Edu4, chaque utilisateur de Logiciel Libre peut adresser la même demande à son fournisseur.

lundi, septembre 21 2009

12 et 13 novembre : 9ème édition du Forum PHP

Ces 12 et 13 Novembre le Forum PHP réunira quelques grands experts internationaux du monde PHP, qui viendront échanger autour des problématiques phares du langage open source. L’occasion de faire le point sur les évolutions fonctionnelle et technique, communautaire et entreprise de PHP.

Cette 9ème édition sera axée sur le couple PHP/MySQL, avec 8 conférences dédiées.

LEMUG.fr, l’association francophone des utilisateurs de MySQL et partenaire de l’événement animera 3 conférences.

Le Forum PHP accueillera en exclusivité et pour la première fois en France, Michael "Monty" Widenius, le créateur de MySQL. Suite au rachat de MySQL AB dont il était le co-fondateur, Monty a créé l’Open Database Alliance, un consortium et un lieu d’échanges pour tous les acteurs de l’écosystème de la base de données.

L’édition 2009 sera l’opportunité d’aborder l’industrialisation, la professionnalisation et la maturation du langage PHP avec une formule qui fait son succès chaque année : des conférences animées par les meilleurs experts internationaux des retours d’expérience issus des grands comptes des ateliers pratiques

... :: FOCUS PROGRAMME - À NE PAS MANQUER ::...

Conférences

  • « MariaDB the future of MySQL » - Michael "Monty" Widenius, le père de MySQL
  • « Oui, PHP est industriel ! » - Damien Seguy, Alter Way Consulting
  • « PHP and MySQL : a good match » - Johannes Schlüter, Sun Microsystems. Johannes est responsable de la publication de la version 5.3 de PHP.

Témoignages utilisateurs

Réplication MySQL, WAT TV Migration de J2EE vers PHP, M6 Web Ultimedia et Jukebo 2.0, Digiteka Retour d’expérience, Orange

En savoir plus : http://afup.org/pages/forumphp2009/

jeudi, juin 25 2009

Ma conférence PHP Optimisation sur PHPDays

Depuis le temps que je voulais le faire c'est en cours, j'ai prit le temps qu'il faut et je travaille sur une conférence PHP Optimisation pour les PHPDays le 7 Juillet projet.

L'idée est simple, chaque participant récupère une machine virtuelle avec une application PHP. Avec Julien Paulli nous présentons les différents outils de mesure et de charge (http_load, siege, ab, top, ...) et nous prenons le pouls de notre application en la stressant avec un jeu de test défini de façon logique. Notre application est censé répondre à 600 requêtes par seconde. Damned l'application génère 100 requêtes par seconde.

Vient ensuite les premières actions d'optimisation, on regarde du coté de la base de données et de la configuration associée. Allez hop on passe à 200 req / s.

Traçons un peut les requêtes HTTP et les retours d'apache / PHP. Humm et si on mettait un système de cache ? Allons voir du coté d'APC. Et hop une augmentation de performances !

Damn il reste 100 requêtes seconde à gratter ... la suite aux PHPDays :D (de quoi me laisser le temps de trouver)

mardi, juin 16 2009

Je déménage à Paris !

Bon le titre est un peu trompeur, je ne change pas totalement de localisation, je passe du Pré St Gervais (40m de Paris) à Paris Intra muros : Montmartre.

Du coup je fais mes cartons tranquillement et je me rends compte que ma vie se résume à beaucoup de livres et de BD... Damned va falloir motiver les potes pour déménager tout ça :)

dimanche, mai 31 2009

Sortie de odtPHP v0.9 : Générez des documents OpenOffice avec PHP

La bibliothèque PHP : odtPHP vient de sortir en v0.9.

Cette bibliothèque permet de générer des fichiers OpenOffice avec PHP en se basant sur des fichiers odt modèle.

Le système est simple, il consiste à mettre des "tags" dans vos fichiers OpenDocument (par exemple {titre} ) qui seront automatiquement remplacés lors du parsing de PHP.

Fonctionnalités supportées :

  • Gestion des balises simples ;
  • Ajout d'images ;
  • Gestion de boucles ;
  • Gestion de tableaux.

Liens

La version 0.9 est la dernière version avant la v1.0 et contient les améliorations suivantes :

  • Fix : Possibilité d'ajouter des images à l'intérieur des boucles ;
  • Add: Possibilité d'insérer plusieurs segments à l'intérieur d'un autre ;
  • Possibilité de répéter des lignes de tableaux ;
  • Ajout de nouveaux tutoriels afin de montrer les nouvelles fonctionnalités de la bibliothèque ;
  • Les retours chariots sont désormais pris en compte correctement dans le document généré ;
  • Appeler la fonction saveToDisk() sans paramètre ne génère plus d'erreur PHP ;
  • saveToDisk() lance maintenant une exception lorsque la méthode tente d'écraser un fichier dont on n'a pas les droits en écriture ;
  • Un 4ème paramètre optionnel ajouté à la méthode setVar() permet de gérer des données encodées en UTF-8.

Si vous utilisez le produit n'hésitez pas à nous en faire part.

lundi, mai 25 2009

Une semaine en formation PHP !

C'est moi qui la donne ! Ca commencait à me manquer et coup de bol cette semaine est la plus chargée de l'histoire d'Anaska avec près de 11 formations en parralèle donc il faut remettre les mains dans le cambouis pour moi et romain :)

C'est donc une semaine sous le soleil de la Défense, que demande le peuple ;) Enfin des journées de travail qui se terminent à 17h15 :) Dur la vie de formateur ...

jeudi, mai 14 2009

Installer Xdebug sur XAMPP / Ubuntu (9.04)

Remettant en place ma configuration de travail PHP sur Ubuntu j'ai commencé par télécharger XAMPP, un auto installeur de l'ensemble Apache, PHP et MySQL pour Linux.

Vu que je souhaite installer xDebug il me faudra faire appel à phpize donc je télécharge le pack commun et le pack développeur. L'installation est simple il suffit de taper les lignes de commande (sudo permet de faire les actions en tant que root ) :

sudo tar -xvzf xampp-linux-1.7.1.tar.gz -c /opt

sudo tar -xvzf xampp-linux-devel-1.7.1.tar.gz -c /opt

Je peux tester que tout s'est bien passé en lançant mon serveur :

sudo /opt/lampp/lampp start

Un petit tour de mon navigateur sur "http://localhost/" pour vérifier que tout tourne. exemple

Ok nickel je continue.

Par défaut mon ubuntu n'a pas "auto-conf" d'installé donc je l'ajoute via le "gestionnaire de paquet Synaptic".

Je souhaite débogguer mes applications donc j'aurais besoin de xDebug, je vais dans la rubrique obtain pour télécharger les sources que je copie sur mon bureau avant de les décompresser :

tar -xvzf xdebug-2.0.4.tgz

Je vais maintenant compiler une extension so que je pourrais associer à ma configuration actuelle :

sudo /opt/lampp/bin/phpize

phpize

Je me rends dans le répertoire créé lors de l'extract du fichier tar.gz de xdebug et je compile pour obtenir le xdebug.so

cd xdebug-2.0.4

sudo ./configure enable-xdebug with-php-config=/opt/lampp/bin/php-config

sudo make

Je déplace alors le fichier "xdebug.so" (généré dans ./modules/ ) dans le répertoire des extensions PHP de XAMPP :

sudo cp modules/xdebug.so /opt/lampp/lib/php/extensions

Il n'y a plus qu'a indiquer dans le fichier de configuration PHP (/opt/lampp/etc/php.ini) que je souhaite utiliser xdebug en ajoutant la ligne :

zend_extension=/opt/lampp/lib/php/extensions/xdebug.so

test-serveur-valide.jpg

Prochaine étape : configurer le debogueur de PDT

jeudi, avril 30 2009

6 et 7 Juillet. Formation spéciale pour industrialiser PHP !

Anaska - Alter Way Formation, l’organisme de formation dans lequel je travaille vient de lancer les PHP Days. Un nouveau concept de formation dédié à PHP :

  • Des formations sur de thèmes précis et d’actualité

Une seule session, en amphithéâtre, est organisée pour chaque PHP Day, l’objectif étant de traiter un des thèmes chaud de PHP (en opposition aux formations inter-entreprises qui sont, par définition, plus généralistes).

  • des sessions animées par plusieurs intervenants de renom

Chaque PHP Day est composé de plusieurs sessions, d’une demi-journée chacune, animées par des intervenants spécialistes du sujet et reconnus pour leur implication dans les communautés, l’écriture d’ouvrages ou la gestion de projets importants.

La première session de PHP Days intitulée “Industrialisez votre PHP!” se déroulera les 6 et 7 Juillet.

Au programme :

  • Environnement et procédures de développement
  • Utilisation d’un framework
  • Sécurité de vos développements
  • Optimisez vos performances

Côté intervenants, nous aurons Damien SEGUY, Cyril PIERRE de GEYER, Julien PAULI, Sarah HAIM et Jean-Marc FONTAINE. La session sera animée par votre humble serviteur.

Les inscriptions sont ouvertes et le nombre de places est limité, n’hésitez donc pas à réserver votre place dés maintenant.

- page 1 de 2