Catégories

MySQL: Calcul des volumes de données avec la base information_schema

MySQL (depuis la version 5.0.2) fournit une base de données « virtuelle » contenant des informations intéressantes sur les bases existantes (définitions, tailles, statistiques, …): information_schema.

Son schéma est dénormalisé; cette base permet donc de trouver facilement les informations, sans jointure.

Voici quelques requêtes en rapport avec la taille des données et indexes que j’utilise régulièrement pour identifier ce qui consomme de la place.

[Lire la suite...]

KeepAlive TCP avec Apache HTTPd « mod_proxy »

Un pare-feu entre votre frontal GNU/Linux / Apache HTTPd (avec mod_proxy) et votre serveur applicatif (par exemple Apache Tomcat), coupe les connexions HTTP ou AJP inactives au bout d’un certain temps ? Une solution consiste à activer le TCP keep alive; voici une petite explication:

[Lire la suite...]

Manipulation des dates de photos JPEG avec Exiv2

Vous avez des photos JPEG et vous être dans l’une des situations suivantes:

  • vous voulez renommer vos photos suivants les dates/heures de prise de vue (pratique pour éviter les doublons une fois que le compteur de l’APN a fait le tour).
  • certaines photos ne sont pas à la bonne heure, voir à la bonne date ? (exemple: oubli du passage à l’heure d’été/hiver sur l’APN)
  • vous avez plusieurs APN et souhaitez regrouper leurs photos dans un même répertoire, triés par date/heure

Alors exiv2 va vous simplifier la vie. Cet outil en ligne de commande permet de faire et d’automatiser ces opérations (et bien d’autres…)

[Lire la suite...]

Charger un tableau associatif depuis un fichier en Perl

Vous faites des scripts Perl, et vous trouvez pratique l’organisation des tableaux associatifs (%hash) pour gérer de la configuration ?

Voici un moyen simple et rapide de gérer cette configuration dans un fichier externe, sans avoir à indiquer le nom de votre tableau associatif dans ce fichier.

[Lire la suite...]

Parallélisation facile en Perl

Comment paralléliser facilement des traitements en utilisant Perl ?

Il suffit d’utiliser le module « Parallel::ForkManager ». Celui-ci créé des processus qui traitent indépendamment les itérations d’une boucle, tout en restant limité au nombre de processus spécifié.

[Lire la suite...]