2017-09-17 1 views

Répondre

0

Il existe plusieurs façons de traiter des quantités massives de requêtes vers une base de données MySQL (ou toute autre base de données relationnelle/RDB). À partir d'un trafic croissant, vous pouvez utiliser la réplication qui permet à des machines supplémentaires d'envoyer en lecture seule (pas d'INSERT, UPDATE, DELETE, etc.) à partir d'une machine et d'écrire sur une seule machine "maître" (les réplicas en données écrites provenant de l'instance maître ou d'écriture autorisée, mais peuvent être légèrement en retard par rapport aux dernières données écrites pendant une courte période de temps). Oracle (propriétaire du projet MySQL) a un bon article à ce sujet (et mise à l'échelle PHP) ici: http://www.oracle.com/technetwork/articles/dsl/white-php-part1-355135.html

Une fois que votre application commence à prendre des demandes sur une échelle vraiment massive (comme Facebook, Google, etc. niveau), vous serez vouloir considérer d'autres stratégies telles que le clustering, l'utilisation de NoSQL (pour certaines fonctions telles que la recherche, l'analyse, la journalisation, la surveillance, etc.), le fractionnement des tables et des bases de données géographiques (si cela a du sens). Il y a un livre blanc de démarrage ici:

Vous pouvez également effectuer des recherches génériques pour "mise à l'échelle de MySQL" qui fournissent encore plus de résultats.

0

MariaDB 10+ est livré avec un cluster Galera qui vous permet d'avoir plusieurs serveurs MASTER et vous pouvez charger l'équilibre soit par IP ou via un périphérique.

En outre, le nombre de requêtes/seconde dépend de la vitesse à laquelle une écriture est terminée. Si vous disposez d'une écriture brute atomique simple, vous pouvez désactiver INDEXES sur la table réceptrice, ce qui permet à votre serveur de gérer le plus rapidement possible. Cette table brute peut par MyISAM et non InnoDB. C'est généralement jusqu'à 10 fois plus rapide en écriture. Avoir un autre processus lire les données brutes en vrac dans une autre table avec des index appropriés. Nous avons eu du succès avec jusqu'à 10K transactions/seconde de cette façon