Resolving Scalability and Performance Bottlenecks in Aws-Based Microservices Architectures
Authors/Creators
Description
The increasing adoption of microservices architectures within AWS environments has brought to the forefront the critical challenges of scalability and performance bottlenecks. This review paper systematically examines these challenges, presenting a comprehensive analysis of the inherent limitations and inefficiencies that impede optimal performance. The study identifies key bottlenecks such as latency, resource contention, inefficient load balancing, and suboptimal service orchestration. By leveraging a thorough literature review, the paper explores state-of-the-art strategies and best practices aimed at mitigating these issues. The research highlights the effectiveness of employing containerization technologies, such as Docker and Kubernetes, to enhance resource utilization and scalability. Furthermore, it delves into advanced load balancing techniques, including the use of service meshes and dynamic scaling policies, to improve traffic management and system resilience. The paper also evaluates the role of serverless computing in addressing performance constraints by providing on-demand resource allocation and reducing overhead. Additionally, it discusses monitoring and observability tools essential for identifying and resolving performance bottlenecks in real-time. Through comparative analyses, the review underscores the importance of adopting a holistic approach that integrates multiple strategies tailored to specific application needs. The findings suggest that a combination of container orchestration, serverless architectures, and robust monitoring frameworks can significantly enhance the scalability and performance of AWS-based microservices. The paper concludes with recommendations for future research directions, emphasizing the need for continuous innovation in adaptive load balancing and automated orchestration to cope with evolving demands and technological advancements. This paper serves as a valuable resource for practitioners and researchers seeking to optimize microservices performance within cloud environments.
Files
JSAER2021-8-10-181-186.pdf
Files
(196.7 kB)
| Name | Size | Download all |
|---|---|---|
|
md5:767701ca510b7c16375c12fd02962001
|
196.7 kB | Preview Download |
Additional details
References
- [1]. Adzic, G., & Chatley, R. (2017). Serverless computing: Economic and architectural impact. Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering, 884-889. https://doi.org/10.1145/3106237.3117767
- [2]. Amazon Web Services. (2021). Scaling Amazon Prime Video's Architecture. AWS Architecture Blog.
- [3]. Bondi, A. B. (2000). Characteristics of scalability and their impact on performance. Proceedings of the 2nd International Workshop on Software and Performance, 195-203. https://doi.org/10.1145/350391.350432
- [4]. Carreira, J., Fonseca, P., Banga, A., & Silva, J. G. (2018). Cirrus: A Serverless Framework for End-to-End ML Workflows. Proceedings of the ACM Symposium on Cloud Computing, 13-24. https://doi.org/10.1145/3267809.3267812
- [5]. Chen, L., & Kunz, T. (2009). Performance evaluation of IoT protocols under a constrained wireless access network. IEEE Communications Magazine, 54(12), 41-49. https://doi.org/10.1109/MCOM.2009.5361750
- [6]. Chen, L., Xu, L., Zhao, H., & Fang, X. (2019). Scalable Microservices Deployment with Kubernetes. IEEE International Conference on Cloud Computing.
- [7]. Cockcroft, A. (2017). How Netflix Scales with Microservices. Netflix Tech Blog.
- [8]. Dragoni, N., Giallorenzo, S., Lafuente, A. L., Mazzara, M., Montesi, F., Mustafin, R., & Safina, L. (2017). Microservices: Yesterday, Today, and Tomorrow. Present and Ulterior Software Engineering, 195-216.
- [9]. Dragoni, N., Giallorenzo, S., Lafuente, A. L., Mazzara, M., Montesi, F., Mustafin, R., & Safina, L. (2017). Microservices: Yesterday, today, and tomorrow. Present and Ulterior Software Engineering, 195-216. https://doi.org/10.1007/978-3-319-67425-4_12
- [10]. Eivy, A. (2017). Be wary of the economics of "serverless" cloud computing. IEEE Cloud Computing, 4(2), 6-12. https://doi.org/10.1109/MCC.2017.32
- [11]. Fowler, M., & Lewis, J. (2014). Microservices: a definition of this new architectural term. Martinfowler.com. Retrieved from https://martinfowler.com/articles/microservices.html
- [12]. Gajendran, R., Ramaswamy, S., & Venkatakrishnan, S. (2018). Scalable NoSQL Database Architecture using Amazon DynamoDB for Online Applications. Journal of Computer Science and Technology, 33(2), 201-210.
- [13]. Gill, A. Q., Loumish, N., Kumar, M., & Awan, K. M. (2018). Big data integration with microservices: A systematic review. Journal of Systems and Software, 137, 201-216. https://doi.org/10.1016/j.jss.2017.11.001
- [14]. Hassan, M. U., Guirguis, S. K., & El-Khamy, S. E. (2018). Auto-scaling framework for achieving SLA objectives in cloud computing: A systematic review. Journal of Network and Computer Applications, 104, 1-15. https://doi.org/10.1016/j.jnca.2017.12.016
- [15]. Helland, P. (2015). Idempotence is not a medical condition: Distributable computing and the cloud. Communications of the ACM, 58(1), 49-54. https://doi.org/10.1145/2670527
- [16]. Johnston, P. (2018). Serverless architecture: A revolution or an evolution? InfoQ. Retrieved from https://www.infoq.com/articles/serverless-revolution-or-evolution
- [17]. Leitner, P., & Cito, J. (2016). Patterns in the Chaos—A Study of Performance Variation and Predictability in Public IaaS Clouds. ACM Transactions on Internet Technology, 16(3), 15.
- [18]. Löffler, A., Mühlbauer, T., & Zirkelbach, C. (2020). Efficient Microservice Communication: GRPC vs. REST. International Conference on Cloud Computing and Services Science.
- [19]. Lorido-Botran, T., Miguel-Alonso, J., & Lozano, J. A. (2014). A review of auto-scaling techniques for elastic applications in cloud environments. Journal of Grid Computing, 12(4), 559-592. https://doi.org/10.1007/s10723-014-9314-7
- [20]. Newman, S. (2015). Building Microservices: Designing Fine-Grained Systems. O'Reilly Media.
- [21]. Newman, S. (2015). Building microservices: Designing fine-grained systems. O'Reilly Media.
- [22]. Shadija, D., Rezai, M., & Hill, R. (2017). Towards an understanding of microservices. Proceedings of the 2017 23rd International Conference on Automation and Computing (ICAC), 1-6. https://doi.org/10.23919/IConAC.2017.8082052
- [23]. Xu, X., Liu, C., Li, Y., Zhang, X., Li, W., & Huang, Z. (2018). A comparison of platform and infrastructure as a service clouds: Microsoft Azure and Google App Engine. Proceedings of the 2018 International Conference on Cloud Computing and Big Data (CCBD), 91-98. https://doi.org/10.1109/CCBD.2018.8730951
- [24]. Zhang, Y., Hu, H., & Zhao, X. (2020). Auto-scaling Microservices Based on Kubernetes. International Conference on Software Engineering and Knowledge Engineering.