У меня наверняка есть компоненты Java, работающие в Azure с использованием рабочих ролей.
Стратегия, которую я принимаю, заключается в использовании AzureRunMe в качестве загрузчика для загрузки компонентов, необходимых для вашего приложения.
https://github.com/RobBlackwell/AzureRunMe
Вы по существу помещаете свои зависимости в zip-файлы, загружаете их в хранилище больших двоичных объектов, и AzureRunMe загружает их для вас при запуске компьютера. Вы пишете сценарий установки вашего приложения, которое AzureRunMe выполнит для вас (повышено при необходимости). После завершения сценария компьютер будет подключен к балансировщику нагрузки Azure и готов к работе.
Я бы рекомендовал SQL Azure вместо установки Oracle.
Вы можете использовать кэш памяти Azure вместо Memcached, возможно, это то, что вы могли бы рассмотреть в дальнейшем, и использовать Memcached изначально.
Стоит ли это того? Что ж, у PaaS есть свои преимущества, а именно Azure заботится о развертывании вашего приложения и исправлении ОС. SQL Azure (реляционная база данных как сервис) хорош тем, что вам не нужно выполнять некоторые другие действия по сопровождению.
Работа, необходимая для установки в Azure, будет аналогична той, что вам в любом случае придется выполнять в среде IaaS.