Я собираюсь ответить на № 5 сначала, потому что это является самым важным для меня.
5
. Что еще независимый поставщик программного обеспечения может сделать для улучшения их возможностей одобрения их программного обеспечения?
Вещью номер один, к которой можно сделать, является тестирование логотипа Windows передачи. "Разработанный для Windows" (или независимо от того, что они называют его в эти дни) программа тестирует много функций программы и системных взаимодействий, которые, если записано согласно правилам, уменьшают работу для меня и гарантируют уровень устойчивости и удобства использования для пользователей.
Вот ответы на остальную часть Ваших вопросов в порядке:
Много "Облачных вычислений" просто продает жаргон для VPS - уверенный, что это является растяжимым, но будет требоваться время простоя, и миграции между узлами обычно влияют на производительность сервера и заканчиваются во время простоя. Кроме того, Apache по умолчанию, конфигурация PHP и MySQL из поля для основанных на Redhat систем бесполезна для маленьких оконечных систем и потребует тонкой настройки.
Вдобавок ко всему, не забывайте, что "Облако" основано на реальном диске, или SAN так будет обычно иметь медленнее, чем средние записи на диск и чтения поэтому, если Ваше приложение будет использовать диск много, на это можно было бы повлиять.
Если Вы написали свой код способом, который легко масштабируем (например, имея функции, которые возвращают текущую базу данных для записи в и возможно другая для чтения из), я рекомендовал бы начать с одним выделенным сервером и видеть, насколько хороший это для Вас. Если Вы находите, что Ваша пропускная способность стоит Вам много, пойдите для Amazon S3 для хранения пропускной способности, видео и т.д. Если Вы находите, что Ваша база данных вызывает узкое место, пойдите для Ведущего устройства-> Ведомая репликация между 2 или больше серверами (пишущий в одно единственное, читая от любого другого). Если Вы находите, что Ваш сервер работает медленно, и это не база данных, считайте выравнивание нагрузки веб-сайтом. Если Вы находите загрузки сайта медленными несмотря на сервер, отвечающий быстро (из-за содержания), рассматриваете CDN.
Необходимо смочь прибавить любую из этих вещей впоследствии, если код достаточно гибок, если это не Вы, должен начать делать это гибким перед волнением о масштабировании.
Прежде, чем реконструировать Ваше целое приложение, чтобы попытаться вписаться в облачную модель я предложил бы переместить Ваши видеофайлы и файлы изображений к Сети доставки контента. Используя CDN обладает многими преимуществами, при этом основной - это, он удаляет нагрузку сервиса большие файлы с Вашего сервера. Для многих приложений, с помощью CDN поможет Вам масштабироваться 10-100 раз вне того, что Вы получили бы от обслуживания Вашего содержания от выделенного сервера. Если у Вас все еще есть проблемы производительности затем, Вы, возможно, должны посмотреть на более быстрый сервер или горизонтальное решение для масштабирования.