Alnatik.com
Notre rôle :
- Conception UI/UX (Tests)
- Code Drupal
- Optimisations MariaDB & Nginx
L'expérience
Alnatik (الناطق) : un terme arabe pour parler ou "Le locuteur", est un agrégateur RSS expérimental qui s'appuie sur de multiples sources d'actualités pour agréger et catégoriser le contenu. Le défi était connu dès le départ : la taille de la base de données augmentera très rapidement, et nous devrons optimiser l'architecture d'hébergement, mais surtout MariaDB et Drupal.
Limites de Drupal et Maria DB
Après 60 jours du lancement, la taille de la base de données a atteint 4 giga-octets, et Drupal a commencé à afficher des temps de chargement significatifs (de 4 à 6 secondes pour la page d'accueil), nous avons donc décidé de désactiver certains modules (Syslog était très gourmand en SQL et en mémoire !)
Toujours en cours d'exécution
Notre équipe a soumis MariaDB à des tests rigoureux, puis nous avons décidé de le peaufiner davantage pour qu'il puisse tirer pleinement parti d'un modeste processeur 4 cœurs et de 16 Go de RAM.
My.cnf :
- innodb_buffer_pool_instances = 24
- innodb_buffer_pool_size = 24G
- innodb_log_file_size = 1G
- innodb_thread_concurrency = 16
- query_cache_limit = 4M
- query_cache_size = 96M
- key_buffer_size = 64M
Même si la taille de la base de données est maintenant de 59 Go, le site Web se charge encore assez rapidement pour passer certains tests de vitesse, le résultat est assez bon et la prochaine étape est encore plus excitante : convertir tout le contenu de la base de données vers une base NoSQL comme MongoDB dans un proche avenir.