当前位置: X-MOL 学术IEEE Trans. Parallel Distrib. Syst. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
The Impact of Event Processing Flow on Asynchronous Server Efficiency
IEEE Transactions on Parallel and Distributed Systems ( IF 5.3 ) Pub Date : 2020-03-01 , DOI: 10.1109/tpds.2019.2938500
Shungeng Zhang , Qingyang Wang , Yasuhiko Kanemasa , Huasong Shan , Liting Hu

Asynchronous event-driven server architecture has been considered as a superior alternative to the thread-based counterpart due to reduced multithreading overhead. In this paper, we conduct empirical research on the efficiency of asynchronous Internet servers, showing that an asynchronous server may perform significantly worse than a thread-based one due to two design deficiencies. The first one is the widely adopted one-event-one-handler event processing model in current asynchronous Internet servers, which could generate frequent unnecessary context switches between event handlers, leading to significant CPU overhead of the server. The second one is a write-spin problem (i.e., repeatedly making unnecessary I/O system calls) in asynchronous servers due to some specific runtime workload and network conditions (e.g., large response size and non-trivial network latency). To address these two design deficiencies, we present a hybrid solution by exploiting the merits of different asynchronous architectures so that the server is able to adapt to dynamic runtime workload and network conditions in the cloud. Concretely, our hybrid solution applies a lightweight runtime request checking and seeks for the most efficient path to process each request from clients. Our results show that the hybrid solution can achieve from 10 to 90 percent higher throughput than all the other types of servers under the various realistic workload and network conditions in the cloud.

中文翻译:

事件处理流程对异步服务器效率的影响

由于减少了多线程开销,异步事件驱动的服务器架构被认为是基于线程的替代方案。在本文中,我们对异步 Internet 服务器的效率进行了实证研究,表明由于两个设计缺陷,异步服务器的性能可能比基于线程的服务器性能差得多。第一个是当前异步Internet服务器中广泛采用的one-event-one-handler事件处理模型,这可能会在事件处理程序之间频繁产生不必要的上下文切换,从而导致服务器的大量CPU开销。第二个是由于某些特定的运行时工作负载和网络条件(例如,重复进行不必要的 I/O 系统调用)在异步服务器中的写入旋转问题(即,重复进行不必要的 I/O 系统调用)大的响应大小和非平凡的网络延迟)。为了解决这两个设计缺陷,我们通过利用不同异步架构的优点提出了一种混合解决方案,以便服务器能够适应云中的动态运行时工作负载和网络条件。具体来说,我们的混合解决方案应用了轻量级的运行时请求检查,并寻求最有效的路径来处理来自客户端的每个请求。我们的结果表明,在云中各种实际工作负载和网络条件下,混合解决方案可以实现比所有其他类型服务器高 10% 到 90% 的吞吐量。我们通过利用不同异步架构的优点提出了一种混合解决方案,以便服务器能够适应云中的动态运行时工作负载和网络条件。具体来说,我们的混合解决方案应用了轻量级的运行时请求检查,并寻求最有效的路径来处理来自客户端的每个请求。我们的结果表明,在云中各种实际工作负载和网络条件下,混合解决方案可以实现比所有其他类型服务器高 10% 到 90% 的吞吐量。我们通过利用不同异步架构的优点提出了一种混合解决方案,以便服务器能够适应云中的动态运行时工作负载和网络条件。具体来说,我们的混合解决方案应用了轻量级的运行时请求检查,并寻求最有效的路径来处理来自客户端的每个请求。我们的结果表明,在云中各种实际工作负载和网络条件下,混合解决方案可以实现比所有其他类型服务器高 10% 到 90% 的吞吐量。
更新日期:2020-03-01
down
wechat
bug