Оптимізація продуктивності в розподілених застосунках

dc.contributor.advisorКисельов, Геннадій Дмитрович
dc.contributor.authorМарченко, Ірина Юріївна
dc.date.accessioned2023-05-25T07:37:56Z
dc.date.available2023-05-25T07:37:56Z
dc.date.issued2021
dc.description.abstractМетою даної роботи було створення методики аналізу розподіленого застосунку, результатом застосування якої є рекомендації щодо оптимізації його продуктивності. Створена методика була використана для надання рекомендації щодо оптимізації реального розподіленого застосунку. З багатьох варіантів було обрано сайт Internet-магазину, власник якого лише нещодавно почав застосовувати цей канал продаж у своєму бізнесі. Розподілений за стосунок магазину було розроблено із застосуванням сучасних технологій, зокрема, з орієнтацією на можливість обслуговування, наряду з сайтом, мобільних додатків. Крім того, технічне завдання на розробку сайту вимагало великої кількості можливостей, які створюють додаткові зручності для користувачів сайту, а отже підвищують їх лояльність. Зокрема, це можливість оформлювати замовлення без попередньої реєстрації та надання персональних даних, потужний механізм інтелектуального пошуку товарів не тільки за назвою, але й за ключовими словами, велика кількість зображень високої якості. В результаті, питанням продуктивності всієї системи в цілому надавалося вкрай мало уваги, більше того, під час початкової експлуатації кількість користувачів була невеликою, що дозволяло застосунку справлятися з існуючим навантаженням. Однак з часом швидкість роботи системи почала зменшуватись, тому власник сайту поставив задачу з'ясувати, що саме і яким чином треба поліпшити в системі, щоб вирішити наявні проблеми з продуктивністю. В результаті було створено набір тестів продуктивності на основі системи тестування продуктивності Locust із застосуванням мови програмування Python. Такий набір сам по собі можна розглядати, як незалежний, хоча і дуже спеціалізований програмний продукт. За допомогою цього продукту було визначено межу навантаження, після якої система переходила в стан відмови в обслуговуванні, а також з'ясована, яка з частин застосунку є найбільш критичною з точки зору продуктивності, а отже, вимагає першочергової оптимізації. Нарешті, на підставі отриманих результатів було надано рекомендації щодо самої оптимізації. В цілому, створену методику можна застосовувати для аналізу і оптимізації продуктивності інших розподілених застосунків. Загальний обсяг роботи: 103 сторінок, 28 рисунків, 11 таблиць, 11 посиланьuk
dc.description.abstractotherThe purpose of this work was to create a methodology for the analysis of distributed applications, the result of which is recommendations for optimizing its performance. The developed methodology was used to provide recommendations for optimizing the real distributed application. From many options, the website of the Internet store was chosen, the owner of which has only recently started to use this sales channel in his business. The site of the store was developed with the use of modern technologies, in particular, with a focus on the possibility of service, along with the site, mobile applications. In addition, the terms of reference for the development of the site required a large number of opportunities that create additional convenience for users of the site, and thus increase their loyalty. In particular, it is an opportunity to place an order without prior registration and providing "sensitive" personal data, a powerful mechanism for intelligent search of goods not only by name but also by keywords, a large number of high quality images. As a result, the performance of the system as a whole was given very little attention, moreover, during the initial operation, the number of users was small, which allowed the application to cope with the existing load. However, over time, the speed of the system began to decrease, so the site owner set a task to find out what exactly and how to improve the system to solve existing performance problems. As a result, a set of performance tests was created based on the Locust performance testing system using the Python programming language. Such a set in itself can be considered as an independent, albeit very specialized software product. With the help of this product, the load limit was determined, after which the system went into a state of denial of service, and also found out which of the parts of the application is the most critical in terms of performance, and therefore requires priority optimization. Finally, based on the obtained results, recommendations were given on the optimization itself. In general, the created technique can be used to analyze and optimize the performance of other distributed applications. Total volume of work: 103 pages, 28 figures, 11 tables, 11 referencesuk
dc.format.extent103 с.uk
dc.identifier.citationМарченко, І. Ю. Оптимізація продуктивності в розподілених застосунках : дипломна робота ... бакалавра : 122 Комп'ютерні науки / Марченко Ірина Юріївна. – Київ, 2021. – 103 с.uk
dc.identifier.urihttps://ela.kpi.ua/handle/123456789/56071
dc.language.isoukuk
dc.publisherКПІ ім. Ігоря Сікорськогоuk
dc.publisher.placeКиївuk
dc.subjectрозподілений застосунокuk
dc.subjectтестуванняuk
dc.subjectпродуктивністьuk
dc.subjectоптимізаціяuk
dc.subjectPythonuk
dc.subjectLocustuk
dc.subjectdistributed applicationuk
dc.subjecttestinguk
dc.subjectperformanceuk
dc.subjectoptimizationuk
dc.titleОптимізація продуктивності в розподілених застосункахuk
dc.title.alternativeOptimization of productivity in distributed applicationsuk
dc.typeBachelor Thesisuk

Файли

Контейнер файлів
Зараз показуємо 1 - 1 з 1
Вантажиться...
Ескіз
Назва:
Marchenko_bakalavr.pdf
Розмір:
2.38 MB
Формат:
Adobe Portable Document Format
Опис:
Ліцензійна угода
Зараз показуємо 1 - 1 з 1
Ескіз недоступний
Назва:
license.txt
Розмір:
9.1 KB
Формат:
Item-specific license agreed upon to submission
Опис: