scénario est simple à décrire, mais pourrait avoir une réponse complexe:MySQL: comment assurer l'intégrité dans l'architecture lecture multiple ne
Imaginez un cas où vous avez une écriture seule base de données MySQL. Ensuite, vous avez environ 5 ou 6 bases de données en lecture seule. La base de données d'écriture a un compte pour un inventaire particulier. Vous avez des centaines de milliers d'utilisateurs qui claquent sur cet article en particulier, mais seulement en quantité limitée. Pour l'amour de l'argument, disons 10 éléments.
Quelle est la meilleure façon de s'assurer que seulement 10 articles sont vendus? S'il y a même un delta de 200 ms entre le moment où les esclaves en lecture seule sont mis à jour, l'intégrité du compte ne peut-elle pas disparaître, et donc vendre un inventaire que vous n'avez pas?
Comment pourriez-vous résoudre/mettre à l'échelle ce problème?
Inventaire allant en dessous de zéro est commun dans la réalité - le truc est en rupture de stock. En tant qu'entreprise, n'accepteriez-vous vraiment $ que parce que vous n'avez pas l'article en main? ;) –
Plus ou moins c'est un problème avec ma question plus que tout. J'ai juste inventé un scénario hypothétique dont je voulais en savoir plus. – randombits
@OMG Poneys: tout dépend de l'activité. Si l'article est rare et en rupture de stock et s'il y a des délais de livraison, vous ne voudrez peut-être pas risquer d'accepter $ :) –