Каковы ограничения, если таковые имеются, при размещении службы WCF на лазуре

Я написал службу WCF, и я хочу разместить ее в лазури. Когда я
написал эту услугу, у меня не было в голове, что я собираюсь
принять ее на лазури.

Каждое приложение, даже служба WCF, использует ресурсы
платформы. Когда я говорю ресурс, я имею в виду что угодно:

<Литий> память </литий> <Литий> процессор
</литий>
2. Ручка файла
3. API-интерфейсы низкого уровня (pinvoke)
4. Объекты Com.
5. розетки </литий>
6. .Net BCL API (да, я даже рассматриваю это как ресурс)
7. Базы данных
8. etc..etc .. (все, что не является кодом, который я
написал)

Гипотетический пример: если служба, например, регистрируется на
диске «H», она может работать на моем компьютере (поскольку у меня
есть диск «H»), но, вероятно, он не будет работать в облаке. То же
самое для Drive 'C' или любой буквы диска, я даже не знаю, как
файловая система просматривается с точки зрения обслуживания. Это
всего лишь один пример.

Другой гипотетический пример: я могу вырвать из службы некоторый
метод winapi в nt.dll, он будет работать на моем компьютере. Но я
думаю, что это не сработает на облаке.

**My question is : How can I know what kind of resources
can be used on the cloud and how resources are used when writing to
the cloud? What are the "rules" to follow? Also Is there any
"Smart" Compiler that can ensure that my service is compatible with
the cloud platform**

Я буду рад получить подробное объяснение или ссылку на эту
книгу. Я попытался найти какую-то информацию по googling, но не
нашел ничего, что бы покрывало ее достаточно хорошо.

Как только я получу детали, я смогу сделать незаметный перенос
на мою службу (если вообще потребуется).

Ограничения зависят от того, как вы размещаете свою службу
WCF:

1. Веб-сайты Windows Azure: это модель общедоступного хостинга.
Если вы разворачиваете свою службу WCF на веб-сайте, вам необходимо
принять это во внимание. Это означает, что у вас будет ограниченный
доступ к диску, ограниченный доступ к API-интерфейсам низкого
уровня, нет возможности использовать собственные библиотеки,
...
2. Windows Azure Web/Working Roles (PAAS): ваше приложение будет
развернуто в виртуальной машине Windows Server 2008/2012. Поэтому,
если вы хотите, вы можете использовать все функциональные
возможности, которые вы будете использовать на обычной виртуальной
машине (все «ресурсы», которые вы упомянули в своем вопросе).
Единственное, о чем следует помнить, это то, что эти виртуальные
машины не являются постоянными (что означает, что все данные,
которые вы храните на них, могут потеряться) и что балансировщик
нагрузки не является липким (может быть проблемой, если вы
используете сеансы WCF). Тот факт, что эти машины не являются
постоянными, также означает, что вы не можете установить сервер баз
данных на них надежно, но вы можете использовать внешнюю базу
данных, такую как SQL Azure. Преимущество этого решения в том,
что машины поддерживаются контроллером Fabric, поэтому вы нажимаете
свой пакет услуг (приложение) на Windows Azure, а остальная часть
развертывания выполняется для вас.
3. Виртуальные машины Windows Azure (IAAS): вы получаете машину,
как в роли Web/Worker, которая позволяет вам использовать все
«ресурсы», но с еще большим контролем. Машины устойчивы, то есть
все, что вы храните на них, сохраняется в хранилище Blob (если
машина выходит из строя, вы не теряете данные, хранящиеся на диске
ОС и дисках данных). Это ближайшая альтернатива локальному
развертыванию, но это также добавляет дополнительную работу. Вам
будет необходимо управлять развертываниями на всех серверах,
обрабатывать обновления для системы безопасности ... Но в этом
случае вы можете установить свою собственную базу данных на машине.
Имейте в виду, что и здесь балансировка нагрузки не является
липкой, что может повлиять на функции, такие как сеанс WCF.



Вы можете следовать приведенному ниже руководству по
использованию WCF в Windows Azure.

1. Deciding whether to run a WCF service in a web or worker
role

WCF services can be hosted in either a web role or a worker
role. Which type of role you decide to use depends on the type of
WCF service you are writing
2. Running a WCF service in a web role

A WCF service that is set up for deployment to a Windows Azure
web role uses the same setup and configuration as a WCF service
hosted in IIS on on-premise servers.
3. Understanding WCF Security in Windows Azure

The security concerns for hosting a WCF service on Windows Azure
is the same as those you encounter hosting the service in
on-premise servers
4. Troubleshooting WCF in Windows Azure

You can troubleshoot performance issues for WCF services in
Windows Azure using the same techniques that you use with WCF
services hosted on-premise servers

Для получения дополнительной информации проверьте [**Руководство по использованию WCF в Windows
Azure Here </сильный>**](https://msdn.microsoft.com/en-us/library/windowsazure/hh848261.aspx)

**Надеюсь, это поможет вам.**