Решил попробовать небольшой проект, который достаточно давно оставался только идеей. Для реализации выбрал Erlang. Как мне показалось он неплохо подходит для comet-like фич и относительно легкой масштабируемости.
Единственным непонятным моментом для меня остается выбор СУБД. Специфика проекта не предполагает никаких sql извратов, только упорядоченные списки с возможностью селекта интервала и простой key-value.
Как кандидаты рассматриваются Mnesia, Redis и MySql.
MySql мне хорошо знаком, однако не до конца понятно насколько хорошей идеей является его использование в связке с Erlang, особенно учитывая ненужность sql как такового.
Redis'ом не пользовался, но казалось бы он отлично подходит, правда не до конца ясно как он ведет себя, когда данных сильно больше чем оперативной памяти.
Mnesia тоже кажется привлекательным вариантом. К плюсам его можно отнести исключительную «нативность» Erlang, но насколько мне показалось, он возможно уж слишком навороченный для моих относительно примитивных задач, ну и плюс туториалов и квикстартов нагуглить практически невозможно.
Можно так же взглянуть на проект hovercraft для использования CouchDB в обход HTTP протокола, если требуется локальный доступ и, тем самым, избавившись от накладных расходов на транспорт.
Главный вопрос: «а что вы хотите делать дальше с этим приложением?». Если просто поиграться «сферическим конем в вакууме» — то добавьте Casandra, HBase и SQLite — будет еще интереснее :)
Если вы хотите, чтобы из этого что-то вышло, то берите серьезные инструменты, думайте, что дальше будете делать с данными, с чем будете интегрировать их. Очень хорошо, когда есть нормальное удобное хранилище, к которому можно что-то подключать и полноценно работать. Если нет — то все это вы будете писать руками.
Я бы взял PostgreSQL, отличное проверенное решение, и epgsql, который поддерживает асинхронный механизм уведомлений — самое оно для эрланга.
Еще рекомендую как вариант рассмотреть mongoDB. Очень удобное и быстрое хранилище. У нас вполне успешно работало в связке с Erlang'ом в одном проекте. И, кстати, недавно вышел официальный erlang-драйвер от разработчиков mongoDB.