DOI: 10.5176/978-981-08-7656-2 A-30
Authors: Yong Ni, Jun Han, Zhuqing Li
Abstract: There are two prevalent strategies for building a high performance HTTP engine, threads and events. In this
paper, we introduce one type of non-blocking HTTP engine model which bases on the Stage Event-driven Architecture and
benefits from both threads and events. In particular, as part of the real non-blocking mechanism, a state-machine-based HTTP asynchronous parsing algorithm is proposed, and zero data copying and single traversal parsing are achieved.
Moreover, optimization techniques regarding lock contention and memory allocation are implemented. Testing results show
the performance in concurrency and scalability of the engine.
Keywords: HTTP engine; non-blocking; asynchronous parsing algorithm; high performance