Author:
Ji Juntao,Gu Yinyou,Fu Yubao,Lin Qingshan
Abstract
AbstractHigh-concurrency systems often suffer from performance bottlenecks [1]. This is often caused by waiting and context switching caused by fierce competition between threads for locks. As a cloud computing company, we place great emphasis on maximizing performance. In this regard, we transform the lightweight spin-lock and propose a concise parameter fine-tuning strategy, which can break through the system performance bottleneck with minimal risk conditions. This strategy has been validated in Apache RocketMQ [2], a high-throughput message queue system. Through this strategy, we achieved performance improvements of up to 37.58% on X86 CPU and up to 32.82% on ARM CPU. Furthermore, we confirmed the method’s consistent effectiveness across different code versions and IO flush strategies, demonstrating its broad applicability in real-world settings. This work offers not only a practical tool for addressing performance issues in high-concurrency systems but also highlights the practical value of formal techniques in solving engineering problems.
Publisher
Springer Nature Switzerland
Reference13 articles.
1. Han, S., Dang, Y., Ge, S., Zhang, D.: Performance debugging in the large via mining millions of stack traces. In: Proceedings of the International Conference on Software Engineering, pp. 176–186 (2012)
2. Apache RocketMQ. Apache Software Foundation. Available online: http://rocketmq.apache.org (Accessed on 1 Apr 2024)
3. Herlihy, M., Shavit, N.: The Art of Multiprocessor Programming, Revised Reprint. 1st edn. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA (2012). ISBN 978-0-12-397337-5
4. Moore, G.E.: Progress in digital integrated electronics. In: Proceedings of the IEEE Electron Devices Meeting, vol 21, pp. 11–13, San Francisco, CA (1975)
5. Nelson, R.: The M/G/1 queue. In: Probability, Stochastic Processes, and Queueing Theory. Springer, New York, NY (1995). https://doi.org/10.1007/978-1-4757-2426-4_7