Originally published on Habr

После многочисленных обсуждений был создан черновик спецификации на проксирование и автошардинг в Tarantool/Box.

Общая идея состоит в том, что для скрытия наличия шардинга от пользователя на локальном хосте приложения (PHP/Perl/etc) поднимается прокси, которая маршрутизирует запросы на шарды и умеет найти нужный ключ при решардинге.

Сам решардинг производится с помощью Lua на самих шардах. При этом прокси переносит наиболее горячие ключи на новые шарды при доступе к ним, что должно снизить нагрузку на систему во время решардинга.

Полная спецификация размещена на github wiki.

Было бы крайне полезно обсудить спецификацию на предмет потенциальных проблем, неучтённых ситуаций и удобства использования, прежде чем её реализовывать.