А как Вы добавите в ваш шардинг новые ноды? Что будите делать, если
нагрузка на одну из нод окажется существенно больше нагрузки на любую
другую?

Вот поэтому я не доверяю очевидным пятиминутным решениям, сделанным
самостоятельно, и ищу готовые, проверенные временем. Конечно, если такие
есть.

6 марта 2012 г. 0:56 пользователь Alexandr Gomoliako <[email protected]>написал:

> On Mon, Mar 5, 2012 at 3:33 AM, Alexandr Alexeev <[email protected]>
> wrote:
> > Как я понял, этот модуль представляет собой уровень абстракции над
> репликами
> > и шардингами. В гугле можно найти упоминания DBIx::DBCluster, но его нет
> ни
> > на CPAN, ни на metacpan. Не знает ли уважаемый All, что с ним случилось и
> > есть ли ему замена?
>
> Шардинг можно за 5 минут сделать самому. Например:
>
> # Список нод для шард от 0 до F
> %SHARDS = ( '0' => ['192.168.0.2:8000'], ...  'f' => ['192.168.0.2:8001']
> );
>
> $key = '/hello';
> $nodes = $SHARDS{ substr md5_hex($key), 0, 1 };
>
> Можно и по репликам сразу распределить, если надо:
>
> $node = $nodes->[ hex (substr md5_hex($key), 9, 1) % @$nodes ];
>
> Я не думаю, что кто-то осмелится надеяться на чужие модули для этого :)
> Да и о фейловере надо самому заботиться, особенно, если блокирующее
> приложение. Ему же надо как-то узнать, что какая-то нода упала.
> --
> Moscow.pm mailing list
> [email protected] | http://moscow.pm.org
>



-- 
С уважением, Александр
Личный блог: http://eax.me/
Мой форум: http://it-talk.org/
Мой Twitter: http://twitter.com/afiskon
-- 
Moscow.pm mailing list
[email protected] | http://moscow.pm.org

Ответить