Тип работы:
Предмет:
Язык работы:


Создание масштабируемой и отказоустойчивой системы передачи пакетов данных

Работа №189558

Тип работы

Дипломные работы, ВКР

Предмет

информатика

Объем работы39
Год сдачи2018
Стоимость4390 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
11
Не подходит работа?

Узнай цену на написание


Реферат
Введение 5
1 Основные понятия 7
2 Отказоустойчивость и масштабируемость системы 9
2.1 Средства автоматического или автоматизированного запуска 9
2.1.1 Cron-лаунчер 10
2.1.2 Лаунчер на основе межпроцессорного взаимодействия 11
2.2 Надежный сетевой протокол 15
2.2.1 Транспортный протокол 16
2.2.2 Прикладной протокол 16
2.3 Разделение логики сервера на независимые части 20
2.3.1 Определение основных задач системы 20
2.3.2 Объединение задач в группы для определения компонент 21
2.4 Горизонтальное масштабирование 25
2.5 Взаимодействие компонент системы 27
2.5.1 Алгоритмы подключения сервера коммуникации к системе 28
2.5.2 Алгоритмы подключения сервера комнат к системе 31
2.5.3 Алгоритм подключения сервера комнат и сервера коммуникации к системе
после потери соединения с главным сервером 34
Заключение 36
Список использованных источников и литературы 37


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

Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


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



1. Linux man page - pipe(2) [Электронный ресурс] - URL:https://linux.die.net/man/2/pipe (дата обращения: 2018).
2. Vixie P. Linux man page - crontab(5) [Электронный ресурс]. URL: https://linux.die.net/manZ5/crontab (дата обращения: 2018).
3. Уильям С. UNIX: взаимодействие процессов [Электронный ресурс] // С. Уильям, Д. Солнышков. - М.: Изд-во Питер, 2003. - 569 с. - URL: https://www.e-reading.club/book.php?book=148368 (дата обращения: 2018).
4. Remnant S. J. Linux man page - init(8) [Электронный ресурс] - URL: https:// linux.die.net/man/8/init (дата обращения: 2018).
5. Linux man page - fork(2) [Электронный ресурс] - URL: https://linux.die.net/manZ2/fork (дата обращения: 2018).
6. Linux man page - popen(3) [Электронный ресурс] - URL: http://man7.Org/linux/man-pages/man3/popen.3.html (дата обращения: 2018).



Работу высылаем на протяжении 30 минут после оплаты.



Подобные работы


©2025 Cервис помощи студентам в выполнении работ