Аз работя на уеб сайт на Django (на Apache)разположени на екземпляр от EC2. Понастоящем тя използва единствен пример за MySQL, но в идеалния случай бих искал да има клъстер. Моля, консултирайте се относно плюсовете и минусите на следните възможности, както и списък на други, ако има такива:
MySQL Cluster: Ако разгръщам MySQL на няколко екземпляра на EBS, все още се нуждая от дял, за да има разпределен клъстер. Всяко решение за това?
Касандра: Как се поставя Касандра с EC2? Също така, ако използвам Cassandra в момента, използвам ли способността да използвам Django Models или мога да напиша приставка за Django?
RDS: Поддържат ли RDS клъстерите? Досега намерих само документация за архитектурата Master-Slave.
Благодаря,
-Sid
Отговори:
0 за отговор № 1MySQL клъстер: не сте сигурни какво имате предвид чрез разделянето. Ще ви трябват най-малко три случая: 1 управление и 2 възли за данни. MySQL клъстерът е база данни в паметта, така че ще трябва да разполагате с големи памети за възли за данни. Проверете MySQL Cluster docs за оценка на капацитета. Също така, MySQL Cluster се нуждае от високоскоростни взаимосвързани връзки с ниска честотна лента за постигане на най-добри резултати. EC2 не е най-добрата среда за него.
Касандра: трябва да работи добре - http://wiki.apache.org/cassandra/Cassandra%20EC2
RDS: RDS не поддържа клъстерите. Високата наличност не е лесна с EC2, тъй като не осигурява пълен достъп до мрежови функции като излъчване / предаване на множество канали, поглъщане на ARP и т.н. Някои хора постигат напредък: http://www.mysqlperformanceblog.com/2010/06/17/high-availability-for-mysql-on-amazon-ec2-part-1-intro/
Само за отбелязване: MySQL Cluster и Cassandra са различни решения от MySQL. Ще трябва да преосмислите как приложението ви съхранява и получава достъп до данните, ако решите да направите превключването.
1 за отговор № 2
MariaDB 10 ще работи перфектно за тази настройка.
Също така използвахме Percona MySQL клъстер на 4 възела в рамките на EC2 в продължение на 2 години и той е работил безупречно.