MS SQL Server
Microsoft SQLServer — система управления реляционными базами данных, разработаннаякорпорацией Microsoft. Основной используемый язык запросов — Transact-SQL,создан совместно Microsoft и Sybase. Transact-SQL является реализациейстандарта ANSI/ISO по структурированному языку запросов (SQL) с расширениями.Используется от небольших и средних по размеру баз данных до крупных баз данныхмасштаба предприятия, конкурирует с другими СУБД в этом сегменте рынка.
Microsoft SQLServer в качестве языка запросов использует версию SQL, получившую названиеTransact-SQL (сокращённо T-SQL), являющуюся реализацией SQL-92 (стандарт ISOдля SQL) с множественными расширениями. T-SQL позволяет использоватьдополнительный синтаксис для хранимых процедур и обеспечивает поддержкутранзакций (взаимодействие базы данных с управляющим приложением). MicrosoftSQL Server и Sybase ASE для взаимодействия с сетью используют протокол уровняприложения под названием TabularDataStream (TDS, протокол передачи табличныхданных). Протокол TDS также был реализован в проекте FreeTDS с целью обеспечитьразличным приложениям возможность взаимодействия с базами данных Microsoft SQLServer и Sybase. Microsoft SQL Server также поддерживаетOpenDatabaseConnectivity (ODBC) — интерфейс взаимодействия приложений с СУБД.Версия SQL Server 2005 обеспечивает возможность подключения пользователей черезвеб-сервисы, использующие протокол SOAP. Это позволяет клиентским программам,не предназначенным для Windows, кроссплатформенно соединяться с SQL Server.Microsoft также выпустила сертифицированный драйвер JDBC, позволяющийприложениям под управлением Java (таким как BEA и IBM WebSphere) соединяться сMicrosoft SQL Server 2000 и 2005.
SQL Serverподдерживает зеркалирование и кластеризацию баз данных. Кластер сервера SQL —это совокупность одинаково конфигурированных серверов; такая схема помогаетраспределить рабочую нагрузку между несколькими серверами. Все сервера имеютодно виртуальное имя, и данные распределяются по IP-адресам машин кластера втечение рабочего цикла. Также в случае отказа или сбоя на одном из серверовкластера доступен автоматический перенос нагрузки на другой сервер.
SQL Serverподдерживает избыточное дублирование данных по трем сценариям:
1. Снимок:Производится «снимок» базы данных, который сервер отправляет получателям.
2. Историяизменений: Все изменения базы данных непрерывно передаются пользователям.
3. Синхронизация сдругими серверами: Базы данных нескольких серверов синхронизируются междусобой. Изменения всех баз данных происходят независимо друг от друга на каждомсервере, а при синхронизации происходит сверка данных. Данный тип дублированияпредусматривает возможность разрешения противоречий между БД.
В SQL Serverвстроена поддержка .NET Framework. Благодаря этому, хранимые процедуры БД могутбыть написаны на любом языке платформы .NET, используя полный набор библиотек,доступных для .NET Framework, включая CommonTypeSystem (система обращения стипами данных в Microsoft .NET Framework). Однако, в отличие от другихпроцессов, .NET Framework, будучи базисной системой для SQL Server 2005,выделяет дополнительную память и выстраивает средства управления SQL Serverвместо того, чтобы использовать встроенные средства Windows. Это повышаетпроизводительность в сравнении с общими алгоритмами Windows, так как алгоритмыраспределения ресурсов специально настроены для использования в структурах SQLServer.
MS SQL Server Management Studio
SQL Server Management Studio — это утилита, входящая в состав Microsoft SQL Server 2005 и более поздние версии, для конфигурирования,менеджмента и администрирования всех компонентов Microsoft SQL Server. Утилита включает скрипт-редактор и графическуюпрограмму, которая работает с объектами и настройками сервера.
Главныминструментом SQL Server Management Studio является Object Explorer, которыйпозволяет пользователю просматривать, извлекать, и полностью управлятьобъектами сервера.
MS IIS
IIS (InternetInformation Services, до версии 5.1 — Internet Information Server) —проприетарный набор серверов для нескольких служб Интернета от компанииМайкрософт. IIS распространяется с операционными системами семейства WindowsNT.
Основнымкомпонентом IIS является веб-сервер, который позволяет размещать в Интернетесайты. IIS поддерживает протоколы HTTP, HTTPS, FTP, POP3, SMTP, NNTP.
Служба WWW всоставе IIS
Основнымкомпонентом IIS является веб-сервер — служба WWW (называемая также W3SVC),которая предоставляет клиентам доступ к сайтам по протоколам HTTP и, еслинастроено, HTTPS. Один сервер IIS может обслуживать несколько сайтов (IIS 6.0 ивыше). Каждый сайт имеет следующие атрибуты:
· IP-адрес сайта;
· TCP-порт, накотором служба WWW ожидает подключений к данному сайту;
· Заголовок узла(Host header name) — значение заголовка Host запроса HTTP, указывающее обычноDNS-имя сайта.
Таким образом,например, один сервер с одним IP-адресом может обслуживать на одном TCP-портунесколько сайтов. Для этого необходимо создать несколько DNS-записей,указывающих на IP-адрес сервера, и различать сайты по заголовкам узла.
Для каждого сайтауказывается домашний каталог — каталог в файловой системе сервера,соответствующий «корню» сайта. Например, если сайту www.example.com сопоставлендомашний каталог D:\example, то на запрос ресурса с адресомhttp://www.example.com/index.htm веб-сервер вернёт файл D:\example\index.htm.
Архитектураслужбы WWW
В IIS 6.0,доступном в составе систем Windows Server 2003, служба WWW претерпела серьёзныеизменения. Был добавлен новый режим обработки запросов, называемый режимомизоляции рабочих процессов (англ. Worker process isolation mode). В этом режимевсе веб-приложения, обслуживаемые сервером, работают в разных процессах, чтоповышает стабильность и безопасность системы. Кроме того, для приёма запросовHTTP был создан новый драйвер http.sys, который работает в режиме ядра, чтоускоряет обработку каждого запроса.
Все запросы кстатическому контенту, не требующие исполнения скриптов, исполняются самимhttp.sys в ядре, что сближает IIS с HTTP-серверами режима ядра.
При этом запросы кдинамическому контенту исполняются рабочим процессом и загруженными в егоадресное пространство модулями. С точки зрения пути исполнения запросов несуществует центрального процесса, что повышает надежность в случае краха,вызванного ошибкой в скрипте или ином модуле исполнения. Рабочие процессыавтоматически перезапускаются при падениях.
SSL поддерживаетсяотдельным процессом HTTP SSL, который служит мостом между TCP и http.sys.
Безопасность вслужбе WWW
Веб-сервер IISпредоставляет несколько способов разграничения доступа к сайтам ивеб-приложениям. Служба WWW в составе IIS отличается от других веб-серверовтем, что функции обеспечения безопасности в ней тесно интегрированы с системойWindows NT, на основе которой она работает. В частности, чтобы получить доступк защищённому ресурсу, посетитель должен ввести имя и пароль пользователя,существующего в системе Windows, на которой установлен IIS (или в доменеActiveDirectory, если сервер принадлежит к домену). После этого пользовательработает с сайтом так же, как если бы он выполнил интерактивный вход в систему насервере. К нему применяются установленные файловой системой NTFS разрешения надоступ к файлам и каталогам.
Эта особенностьIIS удобна для внутренних сайтов предприятий, однако практически неприменимадля открытых сайтов Интернета, где невозможно создавать пользователя Windowsдля каждого зарегистрированного посетителя сайта. Поэтому в последнем случаеразработчикам сайтов и веб-приложений обычно приходится использоватьсобственные механизмы ограничения доступа.
Определённыйпользователь Windows сопоставляется с каждым посетителем сайта даже в томслучае, когда ограничение доступа не требуется. Этот режим называется режимоманонимного доступа. В этом случае посетитель представляется на сервере какспециальный пользователь, имя которого обычно имеет формат IUSR_xxxx (где xxxx— имя компьютера, на котором установлен IIS, в седьмой версии этот специальныйпользователь не содержит имени компьютера, т.е. просто IUSR). Этомупользователю должен быть разрешён доступ к ресурсам, которые открыты анонимнымпосетителям.
Служба WWWподдерживает три основных метода аутентификации, то есть определения личностипользователя по имени и паролю:
· Базоваяаутентификация (basic authentication) — имя и пароль передаются по сетиоткрытым текстом.
· Сжатаяаутентификация (digest authentication) — пароль обрабатывается хеш-функциейперед отправкой по сети, что делает невозможным его прочтение в случаеперехвата злоумышленником.
· Встроеннаяаутентификация Windows (integrated Windows authentication) — выполняетсяпопытка входа на сервер с теми же учётными данными, под которыми работаетбраузер пользователя.
Реализациявеб-приложений для IIS
Веб-сервер IISподдерживает несколько различных технологий создания веб-приложений:
1. ASP.NET —разработанная Microsoft технология; для IIS это — основное на сегодняшний деньсредство создания веб-приложений и веб-служб. IIS 6.0 поставляется вместе соперационными системами, в которые также изначально входит .NET Framework, такчто поддержка ASP.NET как будто уже встроена в IIS 6.0; для более ранних версийнеобходимо отдельно загрузить и установить .NET Framework.