Analysis of the use of the Redis in the distributed order processing system in the restaurant network
DOI:
https://doi.org/10.15587/2706-5448.2021.238460Keywords:
microservice, service-oriented architecture, order processing, Redis, software development, software engineeringAbstract
The object of research is a distributed order processing system for a restaurant chain. The subject of the research is the analysis of the use of Redis for managing event queues in distributed systems.
When implementing a distributed order processing system in a restaurant chain with a possible load of up to 20,000 users per day, the Redis system was used. Management of 9 distributed subsystems was organized through Redis. This solution showed an increase in the performance of the system under heavy load (from 50 transactions per second), but the response time of the system in some cases of its operation was longer than without using Redis. When working systems using Redis, it is necessary to take into account the amount of data with which Redis will work, since it does not exceed the amount of RAM, the absence of differentiation into users and groups, and the absence of a query language, which is replaced by a key-value scheme.
This research is aimed at analyzing the operation of the system during trial operation under real load. We compared the operation of a configured system with Redis enabled and disabled. The main indicators for the analysis were the system response time and the maximum request execution time. The research was carried out for 2 weeks, the first week using the system settings with disabled Redis, the second – with enabled Redis. We selected 2 days with a similar load on the system to each other. Especially indicative are the results of comparing the durations of the longest queries, which show an almost constant value of the duration for the system in the mode of enabled Redis. The hypothesis of an increase in the system response time at low loads was confirmed, but this value not only leveled off at a load of 500 unique users but also became less at loads of 1000 unique users.
References
- Ji, Z., Ganchev, I., O’Droma, M., Ding, T. (2014). A Distributed Redis Framework for Use in the UCWW. 2014 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery. doi: https://doi.org/10.1109/cyberc.2014.50
- Reagan, R. (2017). Redis Cache. Web Applications on Azure, 257–300. doi: https://doi.org/10.1007/978-1-4842-2976-7_7
- Artamonov, Ye. B., Bieliakov, O. O. (2013). Elektronni skhovyshcha danykh iz zakhyshchenym dostupom. Naukoiemni tekhnolohiyi, 4 (20), 402–405.
- Vural, H., Koyuncu, M., Guney, S. (2017). A Systematic Literature Review on Microservices. Lecture Notes in Computer Science, 203–217. doi: https://doi.org/10.1007/978-3-319-62407-5_14
- Jamshidi, P., Pahl, C., Mendonca, N. C., Lewis, J., Tilkov, S. (2018). Microservices: The Journey So Far and Challenges Ahead. IEEE Software, 35 (3), 24–35. doi: https://doi.org/10.1109/ms.2018.2141039
- Di Francesco, P., Lago, P., Malavolta, I. (2019). Architecting with microservices: A systematic mapping study. Journal of Systems and Software, 150, 77–97. doi: https://doi.org/10.1016/j.jss.2019.01.001
- Auer, F., Lenarduzzi, V., Felderer, M., Taibi, D. (2021). From monolithic systems to Microservices: An assessment framework. Information and Software Technology, 137, 106600. doi: https://doi.org/10.1016/j.infsof.2021.106600
- Dragoni, N., Lanese, I., Larsen, S. T., Mazzara, M., Mustafin, R., Safina, L. (2018). Microservices: How To Make Your Application Scale. Perspectives of System Informatics, 95–104. doi: https://doi.org/10.1007/978-3-319-74313-4_8
- Liu, F., Li, J., Wang, Y., Li, L. (2019). Kubestorage: A Cloud Native Storage Engine for Massive Small Files. 2019 6th International Conference on Behavioral, Economic and Socio-Cultural Computing (BESC). doi: https://doi.org/10.1109/besc48373.2019.8962995
- Chen, S., Tang, X., Wang, H., Zhao, H., Guo, M. (2016). Towards Scalable and Reliable In-Memory Storage System: A Case Study with Redis. 2016 IEEE Trustcom/BigDataSE/ISPA. doi: https://doi.org/10.1109/trustcom.2016.0255
Downloads
Published
How to Cite
Issue
Section
License
Copyright (c) 2021 Valerii Tkachenko, Svetlana Lukianiuk
This work is licensed under a Creative Commons Attribution 4.0 International License.
The consolidation and conditions for the transfer of copyright (identification of authorship) is carried out in the License Agreement. In particular, the authors reserve the right to the authorship of their manuscript and transfer the first publication of this work to the journal under the terms of the Creative Commons CC BY license. At the same time, they have the right to conclude on their own additional agreements concerning the non-exclusive distribution of the work in the form in which it was published by this journal, but provided that the link to the first publication of the article in this journal is preserved.