www.samag.ru
Журнал «БИТ. Бизнес&Информационные технологии»      
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Журнал "Системный администратор"
Журнал «БИТ»
Подписка
Архив номеров
Где купить
Авторам
Рекламодателям
Контакты
   

  Опросы
  Статьи

Интеграция Open Source-решений  

Open Source в облачной среде

Облачные решения становятся всё более популярными в мире. Компании стремятся использовать их для

 Читать далее...

Автоматизация  

Нейросеть вам в руки! Как использовать ИИ для автоматизации задач

Использование ИИ для автоматизации задач помогает компании получить конкурентное преимущество, поскольку объединение

 Читать далее...

Рынок труда  

Специалист по этическому ИИ, инженер по квантовым вычислениям или аналитик по метавселенной?

Новые тенденции в развитии ИТ могут привести к возникновению новых специальностей в

 Читать далее...

Книжная полка  

Учитесь убеждать и побеждать

Издательство «БХВ», как всегда, порадовало своих читателей хорошими книжными новинками. Кроме популярных

 Читать далее...

Сетевая инфраструктура  

Как удаленная работа меняет подход к сетевой инфраструктуре?

С увеличением числа сотрудников, работающих из дома, организации сталкиваются с необходимостью создания

 Читать далее...

Мониторинг  

Какой мониторинг нужен сегодня?

По мнению экспертов ГК InfoWatch, действия сотрудников – самая распространенная причина инцидентов

 Читать далее...

Книжная полка  

Руководство для тех, кто увлечен ИИ, программированием. И дизайном

Накануне лета издательство «БХВ» выпустило книжные новинки, от которых любителям чтения будет

 Читать далее...

Мобильные приложения  

Искусственный интеллект в мобильных приложениях: возможности и перспективы

Обзор современных применений ИИ в мобильных приложениях, анализ перспектив развития этой технологии,

 Читать далее...

ИТ-образование  

Как сделать ИТ-образование эффективным?

Эксперты ИТ-отрасли отвечают на вопросы «СА». Обсуждаем ключевые аспекты для улучшения образовательных

 Читать далее...

Work-life balance  

Как айтишнику найти баланс между работой и личной жизнью?

Обсуждаем инструменты для эффективного управления временем, снижения уровня стресса и достижения гармонии. На

 Читать далее...

Книжная полка  

Всё самое нужное – под одной обложкой

Отличительная черта книжных новинок, выпущенных недавно издательством «БХВ» – это их универсальность. Не просто

 Читать далее...

ИТ-инфраструктура  

Системы мониторинга ИТ-инфраструктуры-2025

Без мониторинга ИТ-инфраструктуры не обходится ни одна компания, хотя бы потому, что

 Читать далее...

Открытое ПО  

Безопасность Open Source: рискуем или контролируем?

Компания «Кросс технолоджис» изучила, как используется ПО с открытым кодом в компаниях

 Читать далее...

Работа с нейросетью  

Скажи, есть ли у тебя AI, и я скажу, кто ты

Недавно сервис по поиску работы SuperJob выяснил, что каждый второй россиянин уже

 Читать далее...

1001 и 1 книга  
19.03.2018г.
Просмотров: 9486
Комментарии: 0
Машинное обучение с использованием библиотеки Н2О

 Читать далее...

12.03.2018г.
Просмотров: 9708
Комментарии: 0
Особенности киберпреступлений в России: инструменты нападения и защита информации

 Читать далее...

12.03.2018г.
Просмотров: 7131
Комментарии: 0
Глубокое обучение с точки зрения практика

 Читать далее...

12.03.2018г.
Просмотров: 4450
Комментарии: 0
Изучаем pandas

 Читать далее...

12.03.2018г.
Просмотров: 5247
Комментарии: 0
Программирование на языке Rust (Цветное издание)

 Читать далее...

19.12.2017г.
Просмотров: 5243
Комментарии: 0
Глубокое обучение

 Читать далее...

19.12.2017г.
Просмотров: 7911
Комментарии: 0
Анализ социальных медиа на Python

 Читать далее...

19.12.2017г.
Просмотров: 4606
Комментарии: 0
Основы блокчейна

 Читать далее...

19.12.2017г.
Просмотров: 4860
Комментарии: 0
Java 9. Полный обзор нововведений

 Читать далее...

16.02.2017г.
Просмотров: 8871
Комментарии: 0
Опоздавших не бывает, или книга о стеке

 Читать далее...

17.05.2016г.
Просмотров: 12304
Комментарии: 0
Теория вычислений для программистов

 Читать далее...

30.03.2015г.
Просмотров: 13872
Комментарии: 0
От математики к обобщенному программированию

 Читать далее...

18.02.2014г.
Просмотров: 15643
Комментарии: 0
Рецензия на книгу «Читаем Тьюринга»

 Читать далее...

13.02.2014г.
Просмотров: 10503
Комментарии: 0
Читайте, размышляйте, действуйте

 Читать далее...

12.02.2014г.
Просмотров: 8526
Комментарии: 0
Рисуем наши мысли

 Читать далее...

10.02.2014г.
Просмотров: 6755
Комментарии: 4
Страна в цифрах

 Читать далее...

18.12.2013г.
Просмотров: 5901
Комментарии: 0
Большие данные меняют нашу жизнь

 Читать далее...

18.12.2013г.
Просмотров: 4778
Комментарии: 0
Компьютерные технологии – корень зла для точки роста

 Читать далее...

04.12.2013г.
Просмотров: 4473
Комментарии: 0
Паутина в облаках

 Читать далее...

03.12.2013г.
Просмотров: 4690
Комментарии: 1
Рецензия на книгу «MongoDB в действии»

 Читать далее...

Друзья сайта  

 ASP NET MVC. Веб-приложения самостоятельного размещения

Архив номеров / 2014 / Выпуск №10 (143) / ASP NET MVC. Веб-приложения самостоятельного размещения

Рубрика: Разработка /  Веб-технологии

Михаил Ушаков МИХАИЛ УШАКОВ, Уральский федеральный университет, разработчик электронной аппаратуры и программного обеспечения для ядерной гаммарезонансной спектроскопии, um.nix.user@gmail.com

ASP NET MVC
Веб-приложения самостоятельного размещения

Веб-сервер, не требующий инсталляции, управляемый из кода C# с возможностью размещения ранее созданных проектов веб-сервисов? Это легко!

Обычно считается, что веб-приложения могут быть запущены только в рамках другого процесса – веб-сервера, например, Apache, nginx или IIS, или же на контейнере сервлетов, если речь идет о Java. Часто веб-серверы обладают богатым набором возможностей и, как следствие, большим набором конфигурационных файлов. Несмотря на то что настройка файлов конфигурации не является чем-то нетривиальным, но все же она нудное и трудоемкое занятие. Однако для решения некоторых задач инсталлируемые веб-серверы или запускаемые через командную строку не всегда подходят.

Например, когда необходимо на CI-сервере (сервер непрерывной интеграции) запустить тесты веб-сервиса с реальными запросами. В этом случае хотелось бы иметь возможность с легкостью переносить сборку проекта с одного сервера на другой без инсталляции и утомительной настройки дополнительного программного обеспечения.

Благодаря поддержке технологии самостоятельного размещения (self-hosted) в одном процессе можно запустить веб-сервер и развернуть веб-сервисы для тестирования реакции сервиса на запросы. Также эта технология может быть использована для удаленного взаимодействия с Windows-службой, консольным приложением.

В этой статье будет рассмотрено, как организовать self-hosted-размещение веб-сервисов в различных .NET-проектах. Также хотелось бы отметить, что на базе self-hosted-технологии было реализовано интеграционное тестирование программных продуктов, разрабатываемых в компании ООО «НПО «САПФИР» и ориентированных для автоматизации задач бюджетного процесса.

Особенности развертывания ASP NET веб-приложений

Классическое ASP NET MVC-приложение является ориентированным на развертывание на веб-сервере IIS. Оно включает в себя файл Global.asax, в котором определяют класс, наследующий от System.Web.HttpApplication. В этом классе конфигурируются отдельные компоненты MVC для необходимого поведения при обработке запросов. За маршрутизацию передачи HTTP-запросов определенным обработчикам отвечает класс Router.

HTTP-обработчики тесно связаны с веб-сервером IIS (см. рис. 1), они используют классы HttpHandler и HttpContext для доступа к параметрам запроса и ответа. Отчасти такое неудобство произошло благодаря наследию от ASP NET Web Forms и использованию этих компонент повсеместно в MVC.

Рисунок 1. Схема обработки HTTP-запросов ASP NET MVC веб-приложения

Рисунок 1. Схема обработки HTTP-запросов ASP NET MVC веб-приложения

Таким образом, едва ли можно представить себе полноценное использование ASP NET как Open Source-проекта ввиду того, что размещать его можно только на IIS веб-сервере. В результате классическое ASP NET-приложение не может быть самостоятельно развертываемым (self-hosted).

Следующим шагом эволюции ASP NET стала разработка Web API. В нем компоненты System.Web используются не напрямую, а через адаптеры, также была устранена зависимость от IIS HTTP-обработчиков (HttpHandler) благодаря реализации слоя адаптеров (см. рис. 2). Данный подход позволит избавиться от IIS зависимости, а Web API можно рассматривать в рамках Owin (Open Web Interface).

Рисунок 2. Схема обработки HTTP-запросов ASP NET MVC Web API веб-приложения

Рисунок 2. Схема обработки HTTP-запросов ASP NET MVC Web API веб-приложения

Также в Web API имеется слой, отвечающий за размещение (см. рис. 3), предусматривающий как возможность размещения на веб-сервере (web-hosted), так и самостоятельное в рамках Windows-процесса (self-hosted).

Рисунок 3. Структурная схема слоя размещения (hosting) Web API-приложения

Рисунок 3. Структурная схема слоя размещения (hosting) Web API-приложения

Статью целиком читайте в журнале «Системный администратор», №10 за 2014 г. на страницах 63-67.

PDF-версию данного номера можно приобрести в нашем магазине.


Комментарии отсутствуют

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-45
E-mail: sa@samag.ru