一种支持遗留企业应用并行执行的分布式中间件的设计与实现
Design and Implementation of a Distributed Middleware for Parallel Execution of Legacy Enterprise Applications
摘要:
典型的企业使用计算机局域网来执行其业务。在非工作时间,这些联网计算机的计算能力未得到充分利用或未使用。为了利用这种计算能力,应用程序必须重新编码以利用计算中固有的并发性,这对于没有任何源代码的遗留应用程序显然是不可能的。本文提出了一个分布式中间件的设计和实现,它可以通过并行化在多台网络计算机上自动执行一个遗留应用程序,该中间件在网络中的不同主机上并行运行多个二进制可执行代码副本。它封装了遗留应用程序的二进制可执行代码,以便捕获内核级数据访问系统调用,并以安全和无冲突的方式在多台计算机上分布式执行。该中间件还采用了动态调度技术,通过清除网络中主机的可用CPU周期,在最短的时间内执行目标应用程序。这种动态调度还支持主机的CPU可用性随时间变化,并适当地重新调度执行计算的副本,以最大限度地减少执行时间。这个中间件的原型实现已经开发的设计概念的证明。通过几个典型的案例研究对该实现进行了评估,测试结果证实了该中间件的工作符合预期。
英文摘要:
A typical enterprise uses a local area network of computers to perform its business. During the off-working hours, the computational capacities of these networked computers are underused or unused. In order to utilize this computational capacity an application has to be recoded to exploit concurrency inherent in a computation which is clearly not possible for legacy applications without any source code. This thesis presents the design an implementation of a distributed middleware which can automatically execute a legacy application on multiple networked computers by parallelizing it. This middleware runs multiple copies of the binary executable code in parallel on different hosts in the network. It wraps up the binary executable code of the legacy application in order to capture the kernel level data access system calls and perform them distributively over multiple computers in a safe and conflict free manner. The middleware also incorporates a dynamic scheduling technique to execute the target application in minimum time by scavenging the available CPU cycles of the hosts in the network. This dynamic scheduling also supports the CPU availability of the hosts to change over time and properly reschedule the replicas performing the computation to minimize the execution time. A prototype implementation of this middleware has been developed as a proof of concept of the design. This implementation has been evaluated with a few typical case studies and the test results confirm that the middleware works as expected.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。