MochiWeb не масштабируется сам, насколько я понимаю. Это быстрая, крошечная серверная библиотека, которая может обрабатывать тысячи запросов в секунду. То, как он это делает, не имеет ничего общего с «масштабируемостью» (кроме корректировки количества mochiweb_acceptor
s, которые слушают в любой момент времени).
Что вы получаете с MochiWeb - это надежная библиотека веб-сервера и функции масштабируемости Erlang. Если вы хотите запустить один сервер MochiWeb, при поступлении запроса вы все равно можете перенести работу по обработке этого запроса на любую машину, какую захотите, благодаря инфраструктуре распределенных узлов Erlang и дешевой передаче сообщений. Если вы хотите запустить несколько серверов MochiWeb, вы можете поместить их за балансировщиком нагрузки и использовать распределенные функции mnesia для синхронизации данных сеанса между компьютерами.
Дело в том, что MochiWeb маленький и быстрый (достаточно) . Erlang - это мощный инструмент для масштабирования.
Если вы создадите свое собственное серверное решение, вы, вероятно, сможете достичь или превзойти эффективность и «масштабируемость» MochiWeb «из коробки». Но тогда вам придется переосмыслить все, о чем они уже думали, и вам придется самим испытать это в бою.