У нас есть веб-роль .NET, размещенная в Windows Azure , которая обслуживает только REST API с помощью только нескольких веб-методов .
API довольно активно используется другими облачными приложениями (не браузерами). Каждый метод не имеет состояния, что обеспечивает прямое масштабирование и обычно взаимодействует с хранилищем BLOB-объектов или таблиц.
Тогда, в отличие от большинства классических API, количество данных , загруженных в API, обычно намного больше , чем данных , загруженных из API. Кроме того, размер среднего сообщения обычно также довольно велик (т.е. превышает 100 КБ).
Пока что мы используем WCF поверх форм ASP.NET с сообщениями POX (простой старый XML).Производительность внешнего интерфейса не очень хорошая, виноваты:
Мне интересно, какова наилучшая стратегия для достижения максимально возможной производительности внешнего интерфейса для уменьшения количества виртуальных машин, необходимых для поддержки рабочей нагрузки.
Возможные стратегии, которые я рассматриваю:
Проверял ли кто-нибудь различные альтернативы, чтобы максимально использовать каждую виртуальную машину Azure для такого использования?
Ps: Неявно ссылается на Lokad Forecasting API , но пытался сформулировать вопрос в более общей форме .