Научная работа оу во «юуиуиЭ»




Скачать 0.74 Mb.
Название Научная работа оу во «юуиуиЭ»
страница 4/11
Тип Научная работа
rykovodstvo.ru > Руководство эксплуатация > Научная работа
1   2   3   4   5   6   7   8   9   10   11

1.4 Выбор средств проектирования и средств создания информационных систем

1.4.1 Обоснование выбора платформы для разработки


Так как система аудита веб-приложений подразумевает под собой наличие серверных утилит, которые будут проводить непосредственно аудит сайта, для построения архитектуры системы был использован сервис-ориентированный подход или так называемая сервис-ориентированная архитектура (SOA).

Джерими Уэстерман дает следующее определение сервис-ориентированной архитектуре: это парадигма, предназначенная для проектирования, разработки и управления дискретных единиц логики (сервисов) в вычислительной среде. Применение этого подхода требует от разработчиков проектирования приложений как набора сервисов, даже если преимущества такого решения сразу неочевидны. Разработчики должны «выйти за границы» своих приложений и подумать, как воспользоваться уже существующими сервисами, или изучить, как их сервисы могут быть использованы их коллегами [18].

Основная идея сервис-ориентированной архитектуры состоит в том, чтобы инкапсулировать функциональности крупномодульных приложений в службах, которые распространяются по сети. Такие службы должны взаимодействовать и сами договариваться между собой с помощью стандартных интерфейсов, позволяющих им прозрачно работать на поле разнообразных платформ и между границами организаций, что открывает возможность создания динамичных виртуальных организаций. Можно определить архитектуру SOA как слабосвязанную архитектуру с набором компонент, достаточно «гранулированных» для использования клиентами. Доступ к компонентам осуществляется через сеть в соответствии с политикой, точно определённой этими компонентами. Хотя большинство определений SOA предписывают при её реализации использование именно веб-служб, тем не менее, SOA можно реализовать, используя любую основанную на службах технологию.

Разработка подобных архитектур стала закономерным результатом эволюционного процесса, начавшегося в 80-е годы с первых попыток построения распределённых систем на основе объектно-ориентированных моделей. Некоторое время назад появились распределённые системы следующего поколения, базирующиеся на двухкомпонентных моделях .Net и J2EE. Они суммировали унаследованные от предшественников свойства, а их гранулярность увеличилась в связи с добавлением объектов, названных «компонентами». Таким образом, распределённые системы стали более гибкими, и была обеспечена возможность выполнения транзакционных операций [16].

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

В качестве языка программирования для разработки пользовательской панели системы был выбран язык программирования PHP и фреймворк Phalcon. Для разработки серверных служб был выбран язык Go.

1.4.1.1 Язык программирования PHP


PHP (PHP: Hypertext Preprocessor) – язык сценариев общего назначения, наиболее популярный язык для разработки веб-приложений. PHP лежит в основе миллионов динамических веб-приложений. Широкий набор возможностей, понятный синтаксис и поддержка различных операционных систем и веб-серверов сделали его идеальным языком как для быстрой разработки несложных веб-сайтов, так и для кропотливой и методичной работы над сложными веб-системами. Одной из главных причин успеха PHP как языка веб-сценариев стало то, что он изначально задумывался как инструмент обработки HTML-форм и создания веб страниц. Это сразу сделало PHP весьма дружественной средой разработки для сети Интернет. Кроме того, PHP – полиглот. PHP может общаться с большим количеством баз данных и знает многочисленные протоколы Интернета. PHP упрощает анализ данных браузера и может выполнять HTTP-запросы.

1.4.1.2 Фреймворк Phalcon


Phalcon – это полнофункциональный PHP-фреймворк написанный на языке C, на данный момент этот фреймворк является самым быстрым PHP-фреймворком (результаты тестирования скорости PHP фреймворков представлены на рисунке 9).



Рисунок 9 – Результаты тестирования скорости PHP фреймворков

Phalcon предлагает MVC (Model-View-Controller Модель-Вид-Контроллер) архитектуру для реализации пользовательского интерфейса. Архитектура MVC делит программное приложение на три взаимосвязанных части, отделяя внутреннюю информацию, вывод и полученную информацию от пользователя. Центральный компонент, называемый моделью, включает данные приложения, бизнес логику, правила и функции. Представление — отвечает за отображение информации (визуализацию). Часто в качестве представления выступает форма (окно) с графическими элементами. Контроллер — обеспечивает связь между пользователем и системой: контролирует ввод данных пользователем и использует модель и представление для реализации необходимой реакции. Это дает не только понятный и удобный интерфейс, а также делает возможным несколько представлений одной и той же информации, например, такой как гистограмма и табличный вид для бухгалтеров. Собственный язык запросов Phalcon - (PHQL) Phalcon Query Language делает взаимодействие с базой данных более выразительным и прозрачным. PHQL может быть интегрирован с моделями и легко определять и использовать отношения между таблицами. Это особенно полезно для обработки сложных запросов без особых усилий.

1.4.1.3 Язык программирования Go


Разработка языка Go началась в 2007 году как внутренний проект компании Google. Оригинальная архитектура языка была разработана Робертом Гризмером (Robert Griesemer) и корифеями операционной системы Unix – Робом Пайком (Rob Pike) и Кеном Томпсоном (Ken Thompson). 10 ноября 2009 года были опубликованы исходные тексты реализации языка Go под либеральной открытой лицензией. Развитие языка Go продолжается группой разработчиков из компании Google, в состав которой входят основатели языка, а также Расс Кокс (Russ Cox), Эндрю Джерранд (Andrew Gerrand), Ян Ланс Тейлор (Ian Lance Taylor) и многие другие. Разработка ведется с использованием открытой модели, благодаря чему в процессе участвуют многие разработчики со всего мира, порой настолько известные и уважаемые, что им предоставлены те же привилегии доступа к репозиторию с исходными текстами, что и специалистам из компании Google.

Go – один из самых удивительных языков, появившихся в последние 15 лет, и первый, нацеленный на программистов и компьютеры XXI века. Go проектировался с прицелом на эффективное масштабирование, благодаря чему его можно использовать для создания очень больших приложений и компиляции даже очень больших программ за секунды на единственном компьютере. Молниеносная скорость компиляции обеспечивается отчасти простотой синтаксического анализа программ на этом языке, но главным образом благодаря особенностям управления зависимостям.

Язык Go имеет очень простой и понятный синтаксис, в котором отсутствуют сложные и замысловатые конструкции, характерные для более старых языков, таких как C++ (появившегося в 1983 году) или Java (появившегося в 1995 году). И относится к категории языков со строгой статической типизацией, что многими программистами считается важным условием для разработки крупных программ. Однако система типов данных в языке Go не слишком обременительна благодаря поддержке синтаксиса объявления переменных одновременно с их инициализацией (когда компилятор определяет тип автоматически, избавляя от необходимости явно указывать его) и наличию мощного и удобного механизма динамической типизации.

Первоначально Go задумывался как язык системного программирования с высокой скоростью компиляции для разработки высокомасштабируемых программ, которые могли бы использовать преимущества распределенных систем и многоядерных компьютеров. В настоящее время область применения языка Go стала значительно шире первоначальной концепции, и сейчас он используется как высокопроизводительный язык программирования общего назначения.

1.4.1.4 MySQL


MySQL – свободная реляционная система управления базами данных (СУБД) разработанная Майклом Видениусом в 1995 году. С 2010 года данная СУБД разрабатывается компанией Oracle. Из основных особенностей данной СУБД можно выделить:

  • простое управление таблицей, включая работу с ключами и полями;

  • гибкая система привилегий и паролей;

  • многопоточность;

  • поддержка различных числовых типов;

  • записи фиксированной и переменной длины;

  • оптимизация связей;

  • все поля имеют значение по умолчанию. INSERT можно использовать на любом подмножестве полей;

  • псевдонимы применимы как к таблицам, так и к отдельным колонкам в таблице;

  • и другие.

1.4.1.5 Elasticsearch


Elasticsearch – это платформа для распределенного поиска и анализа данных в режиме реального времени. На данный момент Elasticsearch предоставляет наиболее мощные возможности для полнотекстового поиска, которые доступны в проектах с открытым исходным кодом. Данная платформа построена на базе поискового движка Apache Lucene и используется такими компаниями как Facebook, Microsoft, Cisco, Uber, The New York Times, Mozilla, eBay - все они используют Elasticsearch благодаря простоте, мощности и масштабируемости. Elasticsearch поддерживает операции REST, что позволяет применять методы HTTP (GET, POST, PUT, DELETE и т.д.) в сочетании с HTTP URI для доступа к движку из любого приложения.

1.4.1.6 Nsq


Nsq — платформа, реализующая систему обмена сообщениями между компонентами программной системы (сервисами) в реальном времени по HTTP протоколу. Nsq позволяет реализовать распределенную, децентрализованную топологию системы без единой точки отказа, что способствует отказоустойчивости и высокой доступности системы.
1   2   3   4   5   6   7   8   9   10   11

Похожие:

Научная работа оу во «юуиуиЭ» icon Научная работа оу во «юуиуиЭ»
Необходимости проведения и экономическое значение внутрихозяйственного землеустройства
Научная работа оу во «юуиуиЭ» icon Научная работа оу во «юуиуиЭ»
Анализ состояния исследуемого вопроса в конкретной области науки или технологии 6
Научная работа оу во «юуиуиЭ» icon Итоги научная деятельность
Научная работа в вузе ведется по 51 научному направлению. В 2014/2015 гг научные исследования проводились в приоритетных областях...
Научная работа оу во «юуиуиЭ» icon Научная работа велась по следующим 20 направлениям
Экономика – 06. 41, 06. 61, 06. 01. 45, 06. 01. 79, 06. 03. 07, 06. 09. 00, 06. 43. 00, 06. 51. 00, 06. 51. 51, 06. 61. 33, 06. 75,...
Научная работа оу во «юуиуиЭ» icon №7 Научная деятельность кафедры
...
Научная работа оу во «юуиуиЭ» icon Научная концепция реэкспозиции музея истории спбгэту «лэти» Выпускная...
Краткий обзор истории университетских музеев
Научная работа оу во «юуиуиЭ» icon Нир научная исследовательская работа
Федеральное государственное автономное образовательное учреждение высшего образования «Уральский федеральный университет имени первого...
Научная работа оу во «юуиуиЭ» icon Научная работа Дибиров Гаджи Шарапович
Вклад населения горных районов Дагестана в победу над фашистской Германией во время Великой Отечественной войны (1941-1945 гг.)
Научная работа оу во «юуиуиЭ» icon Общеуниверситетская экспертная комиссия по распределению внутренних грантов в спбГУ
Тема: Научная работа студента спбгу признана лучшей на конференции по протяженным дефектам в полупроводниках
Научная работа оу во «юуиуиЭ» icon Научная работа 78 научных публикаций, из них 48 статей и 1 монография...
Российский государственный гуманитарный университет (рггу), Институт лингвистики (Лингвист, специализация – арабский язык)
Научная работа оу во «юуиуиЭ» icon Лабораторная работа 1 4 лабораторная работа 2 13 лабораторная работа...
Интернете разнообразную информацию – описательную, графическую, картографическую и пр. При разработке сайтов необходимо уметь работать...
Научная работа оу во «юуиуиЭ» icon Российской цивилизации Сборник материалов I межвузовской научной...
А43 материалов I межвузовской научной конференции 29 мая 2008 г. Саратов: Изд-во «Научная книга», 2009. 171 с
Научная работа оу во «юуиуиЭ» icon Научная работа на тему: Использование мобильных технологий в процессе...
Признать целесообразность применения инновационных и коммуникативных технологий, в нашем случае мобильных технологий – программ в...
Научная работа оу во «юуиуиЭ» icon Сборник материалов II межвузовской научной конференции (к 100-летию...
А43 материалов II межвузовской научной конференции 27 февраля 2009 г. Саратов: Изд-во «Научная книга», 2009. 200 с
Научная работа оу во «юуиуиЭ» icon Порядок ведения и оформления тетрадей по русскому языку и литературе
Например: Проверочная работа. Самостоятельная работа. Контрольная работа. Работа над ошибками. Изложение. Сочинение
Научная работа оу во «юуиуиЭ» icon Лабораторная работа №9 59 Лабораторная работа №10 72 Лабораторная...
Рабочая тетрадь для выполнения лабораторных работ по мдк. 03. 01. «Техническое обслуживание и ремонт компьютерных систем и комплексов»...

Руководство, инструкция по применению






При копировании материала укажите ссылку © 2024
контакты
rykovodstvo.ru
Поиск