Существует ли достаточно универсальная архитектура, чтобы ее можно было развернуть либо на облачном сервере, либо на выделенном (или VPS) сервере с минимальными изменениями? Очевидно, что в конфигурацию будут внесены изменения, но я бы предпочел, чтобы оставшаяся часть приложения работала согласованно, сохраняя одну поддерживаемую кодовую базу.
Приложение будет ASP.NET и / или ASP.MVC. Моя среда разработки - VS 2010. Облако может быть или не быть Azure. Выделенный или VPS будет Win Server 2008. Вероятно.
Это не публичный сайт. Я имею в виду веб-приложение, которое будет отдельным развертыванием для каждого клиента. Некоторые клиенты будут небольшими, некоторые предпочитают, чтобы приложение запускалось в локальной интрасети, а не в Интернете. Другие клиенты могут предпочесть облачный подход для решения черного ящика. Приложение может работать в течение нескольких часов или может работать бесконечно, это зависит от клиента и проекта. За исключением сценариев развертывания, приложения были бы более или менее идентичными.
Как вы можете видеть из тегов, я предполагаю, что основанная на сообщениях архитектура является, вероятно, наиболее универсальной, но я также привык быть неправым в этом.
Все предложения и указатели приветствуются в отношении общих архитектур, а также конкретных решений.