Я использую службу saas, которая быстро растет. Клиентами являются веб-сайты электронной коммерции, и мы получаем каждый просмотр страницы на каждом из наших клиентских сайтов (в настоящее время 10 миллионов просмотров в день). Текущая архитектура - это фермы Mysql master / slave (запускаются с помощью scalr.net на EC2). Мы продолжаем добавлять новых клиентов в ферму, пока индексы не займут около 70% оперативной памяти, а затем открываем новую ферму для следующих клиентов.
Очевидно, что по мере нашего роста эта архитектура становится проблемой по двум причинам: 1) Как только клиент или несколько клиентов получают большой трафик на своих веб-сайтах, ферма, на которой они расположены, может стать узким местом. 2) в настоящее время у нас 4 фермы, но мы легко можем добраться до большого количества ферм, которые сложно поддерживать.
Какую стратегию вы бы порекомендовали, чтобы обеспечить рост в долгосрочной перспективе? Большая часть данных подходит для хранения ключей. У нас нет внешних ключей и небольшое количество соединений.
Спасибо!