Варианты хостинга ASP.NET (C#)

Скотт Митчелл

Скачать в формате PDF

ASP.NET веб-приложения обычно предназначены, создаются и тестируются в локальной среде разработки и должны быть развернуты в рабочей среде после его готовности к выпуску. В этом руководстве представлен обзор процесса развертывания и вводная информация по данной серии руководств.

Введение

Веб-приложения обычно предназначены, создаются и тестируются в среде разработки, доступной только программистам, работающим на сайте. После того как приложение будет готово к выпуску, оно перемещается в рабочую среду, где сайт может быть доступен всем пользователям в Интернете. Этот процесс развертывания представляет ряд проблем:

  • Рабочая среда должна существовать и правильно настраиваться перед развертыванием приложения ASP.NET; Кроме того, рабочая среда должна поддерживаться в актуальном состоянии с помощью последних исправлений безопасности.
  • Правильный набор файлов разметки, файлов кода и файлов поддержки должен быть скопирован из среды разработки в рабочую среду. Для приложений, управляемых данными, это может потребовать копирования схемы базы данных и (или) данных.
  • Между двумя средами могут быть различия в конфигурации. Строка подключения к базе данных или почтовый сервер, используемый в среде разработки, скорее всего, будет отличаться от рабочей среды. Кроме того, поведение приложения может зависеть от среды. Например, при возникновении ошибки при разработке сведения об ошибке можно отобразить на экране, но при возникновении ошибки в рабочей среде должна отображаться пользовательская страница ошибок, а также сведения об ошибке, отправленные разработчикам.

Чтобы избежать первой проблемы - настройки и обслуживания производственной среды - многие частные лица и предприятия передают на аутсорсинг свои производственные среды поставщикам веб-хостинга. Поставщик веб-размещения — это компания, управляющая рабочей средой от вашего имени. Есть множество поставщиков веб-узлов, каждый из которых имеет различные цены и уровни обслуживания; В разделе "Поиск поставщика веб-узлов" приведены советы по поиску такого поставщика услуг.

Это первый в серии руководств, в которых рассматривается этапы развертывания веб-приложения ASP.NET в рабочей среде, управляемой поставщиком веб-узла. В течение этих уроков мы рассмотрим следующее:

  • Какие файлы необходимо развернуть для веб-хостинг-провайдера.
  • Средства для упрощения процесса развертывания.
  • Развертывание базы данных.
  • Советы по развертыванию базы данных, которая использует поставщика членства и ролей на основе SQL, а также способы имитации средства администрирования веб-сайтов в рабочей среде.
  • Стратегии плавного обновления базы данных в рабочей среде с изменениями, внесенными во время разработки.
  • Методы ведения журнала ошибок, возникающих в рабочей среде, и способы уведомления разработчиков о возникновении ошибки.

Эти учебники предназначены для того, чтобы быть краткими и предоставить пошаговые инструкции с большим количеством снимков экрана, чтобы провести процесс визуально. В этом руководстве содержатся общие сведения о процессе развертывания ASP.NET и рекомендациях по поиску поставщика веб-хостинга. Давайте приступим!

Обзор процесса развертывания ASP.NET

В краткой части развертывание приложения ASP.NET включает в себя следующие три шага:

  1. Настройте веб-приложение, веб-сервер и базу данных в рабочей среде.
  2. Синхронизация ASP.NET страниц, файлов кода, сборок в папке Bin и файлов поддержки, связанных с HTML, таких как CSS и Файлы JavaScript.
  3. Синхронизация схемы базы данных и (или) данных.

Сведения о конфигурации веб-приложения обычно находятся в Web.config файле и включают строки подключения к базе данных, условия обработки ошибок, правила перезаписи URL-адресов и сведения о сервере электронной почты. Часто эти сведения отличаются для приложения в разработке и одного и того же приложения в рабочей среде. Например, при разработке приложения лучше всего использовать базу данных разработки, чтобы не тестироваться на рабочую базу данных. В результате строки подключения к базе данных обычно отличаются между приложениями разработки и рабочей среды. Из-за этих различий часть развертывания включает внесение изменений в сведения о конфигурации веб-приложения.

Помимо изменений конфигурации веб-приложения, шаг 1 также может влечь за собой конфигурацию веб-сервера и базы данных. Например, если страница ASP.NET создает или удаляет файлы из каталога на веб-сервере, то веб-сервер должен быть настроен для разрешения этих изменений файловой системы. Аналогичным образом могут быть параметры разрешения или проверки подлинности, которые необходимо сделать в базе данных.

Шаг 2 включает синхронизацию набора важных ASP.NET страниц и файлов поддержки между средами разработки и рабочей среды. Конкретный набор файлов, связанных с ASP.NET, которые должны быть синхронизированы между двумя средами, зависит от типа проекта, созданного в Visual Studio, что обсуждается в следующем руководстве, Определение, какие файлы необходимо развернуть. Третий и четвертый учебники — развертывание сайта с помощью FTP и развертывание сайта с помощью Visual Studio — рассматривают различные средства и методы синхронизации этих файлов.

При создании приложений, управляемых данными, обычно используются две базы данных: одна для разработки и одна в рабочей среде. Во время разработки схема базы данных разработки может быть изменена, чтобы включить новые таблицы, столбцы, хранимые процедуры и триггеры, или можно изменить, чтобы удалить или переименовать существующие объекты базы данных. Между временем внесения этих изменений и временем, когда приложение развертывается в рабочей среде, разработка и рабочие базы данных не синхронизируются. Эта асинхронная синхронизация должна быть исправлена во время процесса развертывания. Эти проблемы будут рассмотрены в будущих руководствах.

Поиск поставщика веб-хостинга

ASP.NET приложения можно развернуть на любом веб-сервере, на котором установлена платформа .NET Framework и службы IIS. Вы можете разместить сайт с личного компьютера, если у вас есть широкополосное подключение к Интернету и как настроить маршрутизатор для разрешения входящих веб-запросов. Вы также можете разместить сайт с компьютера в интрасети, так как многие компании делают. Главное внимание в этих руководствах уделяется размещению вашего веб-сайта с поставщиком услуг веб-хостинга.

Замечание

IIS — это веб-сервер корпоративного уровня Майкрософт. Он поставляется с выпусками Windows, не являющихся домашними, такими как Windows Server 2008 и некоторые выпуски Windows Vista. Не нужно устанавливать службы IIS для обслуживания ASP.NET приложений в среде разработки, так как Visual Studio включает веб-сервер разработки ASP.NET. Однако веб-сервер разработки ASP.NET принимает только локальные подключения и поэтому не может использоваться в рабочей среде.

Прежде чем развернуть сайт в поставщике веб-узлов, необходимо сначала решить, с какой компанией следует заниматься бизнесом. В Marketplace есть бесчисленное количество компаний веб-хостинга; Поиск "компании веб-хостинга" возвращает более пяти миллионов результатов. Как вы найдете тот, который подходит для вас? Ваша любимая поисковая система — хорошее место для начала, как и сайты TopHosts и HostCritique, которые сравнивают и сопоставляют различных хостинг-провайдеров. Я также советую спрашивать своих коллег и коллег по любым рекомендациям; Вы также можете попросить рекомендации на открытом форуме размещения здесь на форумах ASP.NET.

Компании веб-хостинга обычно предлагают общие планы размещения и выделенные планы размещения. При использовании общего хостинга один веб-сервер хостит десятки, если не сотни различных веб-сайтов. С выделенным сервером вы арендуете компьютер у компании, которая обслуживает только ваш сайт. Общий план размещения может включать поддержку ASP.NET страниц, возможность работать с базами данных Microsoft Access, 5 ГБ дискового пространства и 100 ГБ ежемесячного трафика пропускной способности за 9,95 долл. США в месяц. Другой общий план размещения может включать поддержку ASP.NET страниц, доступ к серверу базы данных Microsoft SQL Server 2008, 10 ГБ дискового пространства и 250 ГБ ежемесячного трафика пропускной способности за 19,95 долл. США в месяц. Выделенные планы размещения обычно гораздо дороже, стоимостью несколько сотен долларов в месяц, но предлагают более высокую производительность и больше контроля, чем общие варианты размещения. Какой план вы выбираете, зависит от бюджета, сколько трафика ваш веб-сайт получает, а также необходимые функции.

При выборе поставщика веб-узлов следует учитывать два важных вопроса: обслуживание клиентов и качество обслуживания. Если у вас есть вопрос или проблема конфигурации, сколько времени требуется от отправки вашей проблемы в службу поддержки веб-узла до получения ответа? Насколько надежными являются услуги компании? Часто ли у них возникают сбои базы данных? Как часто их почтовый сервер переходит в автономный режим? Вы всегда можете попросить компанию предоставить подробные сведения об их доступности и узнать о своей политике обслуживания клиентов, но более уверенный способ заключается в том, чтобы обратиться к отзыву текущих и прошлых клиентов, которые можно сделать через онлайн-форумы, новостные группы и списки электронной почты.

Замечание

Некоторые компании веб-хостинга концентрируют свой бизнес на определенном стеке технологий, таких как .NET или LAMP (Linux, Apache, MySQL и PHP), поэтому убедитесь, что выбранная вами компания размещает ASP.NET приложения. Кроме того, убедитесь, что они поддерживают версию ASP.NET, которую вы используете для создания приложения. И если вы создаете приложение на основе данных, убедитесь, что веб-узел предлагает тот же сервер базы данных и версию, которую вы используете.

Сводка

ASP.NET веб-приложения обычно разрабатываются, создаются и тестируются в локальной среде разработки. Когда версия будет готова к выпуску, она перемещается в рабочую среду. Хотя можно разместить ASP.NET веб-сайты на личном компьютере или на серверах в вашей компании, многие предприятия и частные лица предпочитают аутсорсинг своего размещения поставщику веб-узлов.

В этом руководстве рассматриваются шаги по развертыванию приложения ASP.NET в поставщике веб-узлов, изучая распространенные проблемы. В этом руководстве представлен общий обзор процесса развертывания ASP.NET и приведены советы по поиску подходящего поставщика веб-узла. В следующем руководстве рассматривается, какие файлы, связанные с ASP.NET, нужно скопировать в рабочую среду при развертывании веб-сайта.

Счастливое программирование!

Особое спасибо...

Эта серия учебников была проверена многими полезными рецензентами. Ведущий рецензент этого руководства — Тереса Мерфи. Хотите просмотреть мои предстоящие статьи MSDN? Если да, напишите мне на mitchell@4GuysFromRolla.com.