Le coût des index inutiles

On vous a tout le temps dit et redit que les index étaient indispensables pour les performances en lecture d’une base de données et vous avez eu droit à des exemples spectaculaires où les temps de réponses sont divisés par 10 000 ou par 1 000 000 rien qu’en ajoutant un index judicieux. Bien. On vous a également prévenu que chaque index posé dégrade les écritures et qu’il ne faut donc pas en abuser. Mais vous a-t-on déjà montré quel type de dégradation en écriture on peut attendre quand on ajoute un index ? C’est ce dont nous allons parler dans cet article.

Prenons une table InnoDB toute simple :


CREATE TABLE (
id int(11) NOT NULL AUTO_INCREMENT,
col_a varchar(30) NOT NULL DEFAULT '',
col_b varchar(30) NOT NULL DEFAULT '',
col_c varchar(30) NOT NULL DEFAULT '',
PRIMARY KEY (id)
) ENGINE=InnoDB;

et testons l’influence des index …

[Lire plus]
Sécuriser son serveur Apache

Lors de la réalisation d'un projet web, celui-ci tourne la majorité du temps sur un serveur Apache. Il vous permet entre autre de faire tourner PHP ou encore d'autres langages et MySQL ou bases de données.
Cependant lors de la mise en ligne aux internautes, des fichiers peuvent être déployés que vous auriez voulu éviter. David Dallet montre sur son blog comment bloquer l'accès aux fichiers de sauvegardes et aux fichiers temporaires qui sont une mine d'informations pour certains spécialistes de l'informatique.
L'article explique certains points, comme :

  • Qu'est ce qu'un fichier de sauvegarde
  • Pourquoi limiter les accès des fichiers
  • Protections « de base »
  • En cas de problèmes
  • Protection conseillée


  •   …
[Lire plus]
Tutoriaux pour aide mémoire

Le site Web3mantra a regroupé plus de 30 tutoriaux qui sont utiles d'avoir à porter de mains. Même si le titre de l'article original est destiné pour les débutants, je trouve que certains points peuvent être utilisés par l'ensemble des développeurs ou développeuses.
Ces aides mémoires concernent :

  • L'affichage du PHPinfo
  • L'installation d'un environnement AMP (Apache MySQL PHP)
  • Manipulation des images (découpes, redimensions...)
  • L'utilisation des tableaux
  • Les manipulations CSS / jQuery
  • La récupération des problèmes
  • Les connexions
  • Les emails
  • La gestion des erreurs
  • Les sessions
  • Scanner un dossier
  • Les calculateurs
  • etc


[Lire plus]
Timetrack : timesheet et facturation en ligne

Timetrack est une application en ligne destinée à simplifier la gestion de vos timesheets et vous permettre de créer vos factures en quelques clics. 
Quelques points forts :

  • Encodage de la timesheet via un système de Drag&Drop; 
  • Rapidité de création des factures; 
  • Encodage des données via des tables éditables; 
  • Précision via son système de tracker; 
  • Support iCalendar (édition Timesheet via un calendrier externe); 
  • - Rapports précis (exportables PDF et XLS). 


L'application est écrite en PHP (Zend Framework). La base de données est MySQL. InnoDB est le moteur utilisé. 
Pour l'interface, beaucoup d'Ajax (jQuery) mais aussi EditableGrid publié sous licence GPL. 
Timetrack a été développé par la société Webismymind qui a également développé …

[Lire plus]
Salon Solutions Linux : J – 4

Dans quelques jours va se dérouler le salon solutions linux (10 au 12 mai 2011) , pour sa 13ème édition au CNIT - Paris la défense. 
De nombreux acteurs de l'open source seront présents, avec de nombreuses animations sur leurs stands, conférences, etc.
Et un pavillon de l'Open Source dédié à la Tunisie.  
Bien sur, un village associatif est aussi présent permettant de montrer les différentes forces de la communauté .
Les technologies seront bien sur représentées, au niveau des langages comme PHP, des systèmes d'exploitations (ubuntu), des bases de données MySQL, PostgreSQL...
Alors n'hésitez à venir nous rencontrer autour de PHP, sur le stand de l'AFUP (Association Françaises des Utilisateurs de PHP)


WaDaWeDo

WaDaWeDo est un nouveau type de projet réalisé en PHP / MySQL / jQuery et distribué gratuitement. Son but est de vous permettre de partager un agenda et d'évènements sur Facebook.
Ce nouveau projet vous permet de
Créer des événements évolués et les partager avec vos amis ou le monde entier
Gérer votre agenda personnel grâce aux événements privés
Consulter l’agenda public de vos amis et commenter ou rejoindre leur événements
Trouver des événements publics proche de chez vous et les rejoindre
waDaWeDo est accessible de 2 façons : soit directement par le site web, soit par votre compte facebook. Comme ceci vous pourrez bénéficier de cet agenda.

SMI 0.9.9w

SMI, signifie Services Maintenance Interventions, réalisé en PHP et MySQL, et distribué en GPL.
Le but de celui-ci, est la gestion et le suivi de Service Après Vente (SAV) de clients. Bien sur, il peut être utiliser pour des activités administratives ou industrielles. C'est pourquoi, on pourrait le classer dans la famille des GMAO (Gestion de Maintenance Assistée par Ordinateur).
Cette nouvelle version apporte des correctifs de bugs, mais aussi de nombreuses améliorations et nouveautés comme :

  • La gestion des droits utilisateurs
  • La gestion des niveaux d'urgence
  • Les devises
  • Améliorations des plannings
  • Module de RSS
  • Evolutions des fiches de suivies
  • etc



[Lire plus]
Index spatiaux

Derick Rethans a publié le 3ème article de la série « Index spatiaux », qui correspond à découvrir la meilleure façon d'interroger et de stocker des données à distance pour l'ensemble des bases de données.
Le Premier article aborde une présentation générale autour des distances de communication. Ce point d'introduction est important à connaître pour mieux comprendre la suite de cette série d'articles.
Le deuxième article montre l'importation des données dans SQLite pour l'interrogation des données géographiques.
L'article d'aujourd'hui sera orienté MySQL et il explique comment effectuer la même opération que précédemment. Il montre une façon de déterminer les calculs et les résultats obtenus en utilisant cette manière de communication.
Enfin, l'article suivant sera destiné pour la base de données PostgreSQL.

  •   …
[Lire plus]
Google Summer of Code 2011 : la liste

La septième édition du Google Summer of code (GSoC) vient de dévoiler la liste des participants. Plus de 1116 projets ont été retenus, en hausse par rapport à l'an passé de plus de 25 %.
La liste des postulants a été publiée sur le site officiel de GSOC avec leur mentor. Les projets sélectionnés touchent de nombreux langages et technologies, comme :

  • Les langages PHP, Python...
  • Les CMS avec Drupal, Typo 3, Wordpress
  • Les projets Open Source
  • Des EDI avec Eclipse
  • Des interfaces de bases de données : PHPmyAdmin pour MySQL


Les résultats seront dévoilés fin août 2011

Architecture de référence MySQL pour infrastructure Web évolutive (28 Apr 2011)

MySQL est déployé dans 9 des 10 sites Web les plus consultés, y compris Google, Facebook et YouTube. Ceci donne à MySQL un aperçu unique de la manière de concevoir des architectures fondées sur des bases de données pour fournir des services de haut niveau moins onéreux, moins exposés aux risques et moins complexes.

Dans ce séminaire Web, nous présentons une série d'architectures de référence pour des sites Web de petite, moyenne et grande taille. Vous découvrirez les composants communs à la plupart des sites Web, y compris la gestion des sessions, l'authentification, le commerce électronique et la gestion de contenu. Les architectures et les topologies de déploiement optimales sont définies sur la base des exigences de taille et de disponibilité pour chaque environnement. Nous aborderons également les exigences propres aux applications des grands réseaux sociaux.