• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта

Express.js-совместимый веб-сервер с нативным ядром для операционных систем семейства Unix

ФИО студента: Хайдаров Артём Альбертович

Руководитель: Брейман Александр Давидович

Кампус/факультет: Факультет компьютерных наук

Программа: Программная инженерия (Бакалавриат)

Год защиты: 2020

Все существующие на данный момент времени интегрируемые веб-серверы для использования в приложениях для Node.js написаны на языке JavaScript, ключевым в экосистеме данной программной платформы, что позволяет уменьшить издержки по поддержке и обслуживанию. Приверженность данному подходу является, без сомнений, разумной и обоснованной в контексте использования изоморфных программных компонентов веб-приложений, к примеру, инструментов шаблонизации, исполняемых на подготовленных данных. Однако, производительность операций подготовки и преобразования большого количества данных в нужный для потребителя формат, как правило, низка по причине издержек интерпретатора, что подвергает сомнению повсеместное использование данного подхода. Худшая производительность по причине издержек интерпретатора не является проблемой для веб-приложений небольшого масштаба ввиду их незначительности. Однако, для приложений большого размера данные издержки существенны. Поэтому, необходима иная концепция строения веб-серверных приложений, исполняемых на платформе Node.js, для решения проблем медленного исполнения тяжелой бизнес-логики в некоторых случаях путем вынесения в нативные динамически загружаемые библиотеки. В данной работе представлено описаны детали реализации, принципы и особенности взаимодействия логических областей интегрируемого веб-серверного программного комплекса с нативным ядром для платформы Node.js, интерфейсно совместимого с базовыми компонентами и механиками использования серверного фреймворка Express.js, самого популярного из существующих для платформы Node.js. Также рассмотрены преимущества данного продукта над основными конкурирующими программными продуктами, их особенности и различия. Данная работа содержит 42 страницы, 3 главы, 4 иллюстрации, 13 источников, 4 приложения. Ключевые слова — веб; сервер; http; middleware; Express.js; Node.js; native addons; C++; JavaScript; libuv; V8; Event Loop.

Выпускные квалификационные работы (ВКР) в НИУ ВШЭ выполняют все студенты в соответствии с университетским Положением и Правилами, определенными каждой образовательной программой.

Аннотации всех ВКР в обязательном порядке публикуются в свободном доступе на корпоративном портале НИУ ВШЭ.

Полный текст ВКР размещается в свободном доступе на портале НИУ ВШЭ только при наличии согласия студента – автора (правообладателя) работы либо, в случае выполнения работы коллективом студентов, при наличии согласия всех соавторов (правообладателей) работы. ВКР после размещения на портале НИУ ВШЭ приобретает статус электронной публикации.

ВКР являются объектами авторских прав, на их использование распространяются ограничения, предусмотренные законодательством Российской Федерации об интеллектуальной собственности.

В случае использования ВКР, в том числе путем цитирования, указание имени автора и источника заимствования обязательно.

Реестр дипломов НИУ ВШЭ