Розробка клієнт-серверної системи зберігання, пошуку та відтворення музичних файлів та зображень
| dc.contributor.author | Лахно, Вячеслав Андрійович | |
| dc.contributor.author | Lakhno, Viacheslav A. | |
| dc.date.accessioned | 2026-09-24T07:59:03Z | |
| dc.date.available | 2026-09-24T07:59:03Z | |
| dc.date.issued | 2026 | |
| dc.description | Лахно В. А. Розробка клієнт-серверної системи зберігання, пошуку та відтворення музичних файлів та зображень: бакалаврська робота: спеціальність 123 «Комп'ютерна інженерія». Запоріжжя: НУ «Запорізька політехніка», 2026. 79 c. | |
| dc.description.abstract | UK: Об’єкт розробки – клієнт-серверна система зберігання, пошуку та відтворення музичних файлів і зображень. Мета проєкту – розробка системи, що забезпечує надійне зберігання, ефективний пошук та потокове відтворення музичних файлів і зображень користувача через зручний веб-інтерфейс із можливістю масштабування і захисту приватних даних. У процесі розробки було проведено порівняльний аналіз провідних медіасерверів (Plex Media Server, Jellyfin, Emby) та сформовано перелік функціональних і нефункціональних вимог до системи. Спроєктовано тришарову клієнт-серверну архітектуру з розділенням на рівні представлення, бізнес-логіки та доступу до даних із використанням нотації UML (Use Case, компонентна, послідовності, розгортання). Розроблено структуру реляційної бази даних PostgreSQL 16 з вісьмома таблицями для зберігання метаданих музичних файлів та зображень із підтримкою повнотекстового пошуку засобами TSVECTOR. Серверну частину реалізовано на Node.js 20 та Express.js 4 із побудовою REST API, модулями індексації ID3-тегів і EXIF, а також потоковою передачею аудіо через HTTP Range-запити. Клієнтську частину розроблено на React 18 та Tailwind CSS з адаптивним інтерфейсом, музичним плеєром, галереєю зображень і повнотекстовим пошуком. Налаштовано Nginx як зворотний проксі, реалізовано механізми безпеки на основі JWT-автентифікації та TLS-шифрування. Проведено функціональне та навантажувальне тестування системи з використанням Apache JMeter і окреме тестування модуля потокового відтворення аудіо. У результаті створено клієнт-серверну систему, що забезпечує організацію персонального медіасховища з якісним пошуком, потоковим відтворенням та захистом приватних даних користувача. EN: The subject of the development is a client-server system for the storage, search, and playback of music files and images. The aim of the project is to develop a system that ensures reliable storage, efficient search, and streaming playback of the user’s music files and images through a convenient web interface with scalability and protection of private data. During the development process, a comparative analysis of leading media servers (Plex Media Server, Jellyfin, Emby) was carried out, and a list of functional and non-functional requirements for the system was formed. A three-tier client-server architecture was designed with separation into presentation, business logic, and data access layers using UML notation (Use Case, component, sequence, deployment diagrams). A relational database structure was developed on PostgreSQL 16 with eight tables for storing metadata of music files and images, supporting full-text search via TSVECTOR. The server side was implemented on Node.js 20 and Express.js 4 with a REST API, modules for indexing ID3 tags and EXIF data, and audio streaming via HTTP Range requests. The client side was developed on React 18 and Tailwind CSS with a responsive interface, music player, image gallery, and full-text search. Nginx was configured as a reverse proxy, and security mechanisms based on JWT authentication and TLS encryption were implemented. Functional and load testing of the system was carried out using Apache JMeter, along with separate testing of the audio streaming module. As a result, a client-server system has been created that ensures the organization of a personal media storage with high-quality search, streaming playback, and protection of the user’s private data. | |
| dc.identifier.uri | https://eir.zp.edu.ua/handle/123456789/31521 | |
| dc.language.iso | uk | |
| dc.publisher | Національний університет «Запорізька політехніка» | |
| dc.subject | Client-server system | |
| dc.subject | Media server | |
| dc.subject | Multimedia storage | |
| dc.subject | Клієнт-серверна система | |
| dc.subject | Медіасервер | |
| dc.subject | Зберігання мультимедіа | |
| dc.title | Розробка клієнт-серверної системи зберігання, пошуку та відтворення музичних файлів та зображень | |
| dc.title.alternative | Development of a client-server system for storage, search, and playback of music files and images | |
| dc.type | Master thesis |