2017-01-04 3 views
5

Привет Я нахожусь на ранней стадии выбора рамки для проекта для проекта, который я собираюсь начать. Насколько я знаю, Орлеан должен был помочь проявителю столько боли, насколько это возможно, ценой некоторой производительности. В Akka.net я знаю, что размер актера составляет 400 байтов. Если я прав, и вам нужно перейти на низкий уровень, чтобы обрабатывать соединения с кластерами и вещи, которые управляются orleans, но принесут вам отличную производительность.Akka.net vs Orleans performance

Только метрики производительности я нашел вокруг Интернета для Orleans являются:

Используя X-Large виртуальных машин (8 ядер ЦП/14 ГБ ОЗУ) на Microsoft Azure, с одного бункера в VM:

Зерно обрабатывает не более 1000 запросов в секунду. Силос будет обрабатывать максимум 10 000 запросов в секунду. Силос будет содержать 100 000 активных зерен.

И Akka.net в главном page:

50 млн тзд/сек на одной машине. Малый объем памяти; ~ 2,5 миллиона актеров на ГБ кучи.

Я хотел бы знать, какие машины были использованы в сценарии Akka.net и как они выполняют зерна против актера (с точки зрения запросов в секунду, и сколько зерна/актеров вы можете поместиться в ГБ RAM более или менее) и сколько вес зерна в памяти.

С кавычками из Орлеана и Akka.net выглядит как Akka.net работает намного лучше, но я хотел бы получить дальнейшее сравнение как с точки зрения производительности.

Я нашел это Akka.Net VS MS Orleans Comparison и Orleans and Akka Actors: A Comparison, но не затрагивает вопрос об исполнении.

Спасибо!

+4

Я думаю, вы обнаружите, что, как и во всех распределенных вычислениях, производительность зависит от множества факторов, и ваша логика приложения, вероятно, является основной. Я предпочитаю подход Орлеана, потому что я разработчик, и я не хочу управлять каждой деталью, но это только мое мнение. Постройте прототипы с использованием обоих подходов и посмотрите, что лучше всего работает. –

+3

Как уже сказал @DanWilson, эталонные тесты основаны на множестве факторов, поэтому сравнивать их трудно. Хотя Akka .NET, вероятно, быстрее, он также намного ниже. Что касается распределенных вычислений, простота масштабирования и разработки часто намного важнее, чем сырая вычислительная мощность. Я бы предпочел сэкономить много месяцев работы разработчиков за счет дополнительной производительности, которая мне никогда не понадобится. – Gigi

ответ

11

В Akka.net сообщаются локальные сообщения, в основном вызовы функций. В Орлеане мы сообщаем о удаленных сообщениях, RPC. Это основное различие. Есть и другие различия.

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