Как настроить Windows Azure на несколько ролей сотрудников в одном экземпляре? Является ли это возможным?Несколько рабочих ролей в одном экземпляре
ответ
Я думаю, вы неправильно поняли, что такое рабочая роль. Роли Web и рабочих являются виртуальными машинами Windows Server, основное отличие которых заключается в том, что в роли веб-роли работает IIS. У вас может быть несколько экземпляров каждого.
В самом деле нет такой вещи, как «множественные роли работников в одном экземпляре». Подумайте о роли рабочего в качестве шаблона для вашей виртуальной машины: сценарии запуска и код обработки событий для обработки таких сообщений, как запуск и завершение работы, а также код, который вы пишете, который упаковывается и запускается внутри виртуальной машины.
С OnStart()
или Run()
вы можете запускать практически любой код, который вы хотите. Удалите несколько потоков, запустите код сервера (например, Tomcat) и т. Д. Независимо от того, какой код у вас будет запущен в каждом экземпляре. По мере того как вы масштабируетесь до нескольких экземпляров, этот же шаблон виртуальной машины используется для каждого из этих экземпляров.
См. Также this answer, где я расскажу немного подробнее.
Как Давид, упомянутый в его ответе, вы можете запускать несколько потоков. Один из моих клиентов сделал это, используя класс ThreadedRoleEntryPoint.
Этот класс позволяет использовать несколько классов точек входа работника роль (даже из нескольких сборок) и запускать их в одной и той же роли:
public override void Run()
{
Trace.TraceInformation("WebRole::Run begin", "Information");
List<WorkerEntryPoint> workers = new List<WorkerEntryPoint>();
workers.Add(new Worker1());
workers.Add(new Worker2());
base.Run(workers.ToArray());
Trace.TraceInformation("WebRole::Run end", "Information");
}
Преимущество здесь в том, что вы могли бы начать с малого и работать весь рабочий роли (а не рабочие роли, но назовем их процессами или рабочими) в одной роли (которую вы фактически развертываете).
Затем, когда ваш бизнес начнет расти, вы можете начать использовать выделенные роли, что означает, что на роль рабочего будет выполняться как минимум 1 экземпляр. И когда это должно произойти, влияние на ваш код будет минимальным, поскольку рабочие передали ThreadedRoleEntryPoint наследовать из WorkerEntryPoint, который очень похож на класс RoleEntryPoint.
Да, вы можете. Вот шаблон проектирования http://www.31a2ba2a-b718-11dc-8314-0800200c9a66.com/2010/12/running-multiple-threads-on-windows.html
- 1. Несколько ролей на одном экземпляре в Windows Azure
- 2. несколько графиков в одном экземпляре
- 3. Назначение ролей в многостраничном экземпляре Magento
- 4. Показать несколько ролей в одном столбце TableView
- 5. vim: несколько «сеансов» в одном экземпляре?
- 6. Развертывание нескольких ролей в Интернете и ролей рабочих на одном облачном сервисе для облачных сервисов
- 7. Как создать таблицу рабочих ролей
- 8. Laravel несколько ролей на одном маршруте
- 9. Несколько приложений на одном экземпляре JBoss
- 10. Django несколько сайтов на одном экземпляре
- 11. Основные данные, добавляющие несколько элементов в Entity в одном экземпляре
- 12. прототип в одном экземпляре функций
- 13. Несколько пользователей mysql для разных ролей в одном db
- 14. Несколько ролей в 'User.IsInRole'
- 15. Можете ли вы загружать несколько контейнеров ECS в одном экземпляре?
- 16. Несколько IP-адресов в одном экземпляре Google Compute Engine
- 17. Python Selenium запускает несколько тестов в одном экземпляре браузера?
- 18. Несколько сеансов в одном экземпляре с использованием PHP?
- 19. Несколько контейнеров-докеров в одном экземпляре EC2 через AWS ECS
- 20. Зарегистрируйте несколько интерфейсов, которые имеют явную реализацию в одном экземпляре
- 21. Как настроить несколько репозиториев в одном экземпляре Alfresco?
- 22. Несколько ролей delayed_jobs с Capistrano?
- 23. TinyIoC: Регистрация нескольких интерфейсов в одном экземпляре
- 24. Число процессов в одном экземпляре JVM
- 25. Развернуть несколько приложений asp.net на одном экземпляре EC2 AWS
- 26. Модальное окно, открывающееся несколько раз на одном экземпляре запроса
- 27. Несколько веб-сайтов на одном экземпляре Windows Azure Web Sites
- 28. Django как выбрать несколько столбцов на одном экземпляре модели
- 29. Несколько приложений на одном экземпляре tomcat и postgres?
- 30. Как запустить несколько приложений на одном экземпляре EC2