节点文献

基于ACE框架的并发消息总线的研究与设计

Study and Design of a Concurrent Message Bus Based on ACE Framework

【作者】 王伯天

【导师】 廖建新;

【作者基本信息】 北京邮电大学 , 计算机科学与技术, 2008, 硕士

【摘要】 消息中间件是中间件的一个重要分支,它为分布式应用系统的开发提供了一个异步、松耦合的编程架构,其思想与现代软件技术的发展趋势相吻合,因而在工业界被广泛地应用于企业应用整合和分布式计算。消息总线是消息中间件的一种简单实现,但以其独特的优势为各种分布式应用的开发注入了强大的动力,极大地推动了应用系统集成的发展。消息总线主要负责建立网络通信的通道,其优点在于能够在客户和服务器之间提供同步和异步的通信机制,适用于需要在多个进程之间进行通信的分布式环境,而且容易实现跨平台操作,为不同操作系统上的应用软件集成提供服务。因此,基于消息总线的上层应用就可以专注于具体业务逻辑的设计与开发,从复杂的网络通信处理中解放出来,简单而且高效的实现分布式可扩展的应用系统。本论文中主要对消息总线服务器中涉及的两个关键问题—并发模型和内存管理机制进行深入研究,设计提出了基于ACE并发服务组件的多线程并发模型和池式内存分配方案,并在消息总线MTBus系统的设计中得到应用。第一章概述部分对于ACE通信框架和中间件及消息总线技术做个总体的介绍,之后介绍了基于消息总线架构的移动智能网网管系统,总结了目前该系统中消息总线存在的缺点,指出了MTBus系统设计的出发点。第二章总体上阐述了MTBus系统的设计目标和功能定义,并对系统总体设计进行了介绍。MTBus系统在结构上包含两个部分,消息服务器和客户端API。消息服务器实现客户端消息的转发、名字信息管理、消息监控和消息流持久化等功能。客户端API对底层网络通信进行了封装,为上层应用提供了同步和异步通信的接口。第三章详细介绍了MTBus系统服务器子系统的各个核心模块的设计和实现,包括通信消息、底层通信模块、名字信息管理模块、消息池管理器以及消息处理模块。第四章阐述了对MTBus系统设计中三个难点技术的研究,并提出了相应的解决方案。服务器并发模型采用半同步/半异步的结构,采用具有优先级的消息池作为排队层,采用多线程反应器作为异步层组件,结合池式内存管理,实现了高处理性能、高稳定性的设计目标。第五章对MTBus系统性能进行整体的测试,同时阐述了MTBus系统在网管系统中的应用和存在的一些局限。此外,消息总线系统MTBus所采用的客户端API与已有的消息总线MRB保持一致的接口,因此已有的基于MRB的应用可以平滑的迁移到MRBMTBus系统上。目前,该系统已经在移动智能网网管系统和彩铃业务质量评价系统中得到应用,现网使用反馈进一步说明了MTBus系统具有较高的并发处理能力,有效的防止了由于消息通信集中导致的消息爆发所带来的消息传输失败的情况。同时,MTBus系统服务器提供了丰富的操作维护功能,可以帮助用户更好的控制和管理通信过程。

【Abstract】 Message Oriented Middleware (MOM) is an important branch of Middleware and it provides an asynchronous, loosely coupled framework for distributed application system. Since its method embodies the trends of modern software technology, it has been widely applied to enterprise application integration and distributed computing in many fields.Message Bus (MB), with its unique advantages, has significantly accelerated the development of integrated application system by injecting a powerful driving force into it. It is mainly used to establish the network communication channel and its strong point is that it can provide synchronous and asynchronous communication mechanism among the clients and the servers. It’s applicable to distributed environment of multi-process communication and is very capable of fulfilling cross-platform operation to support application software running on different operating systems. Insomuch, MB frees the advanced applications based on it from the complexity of net-communication processing and enables them to concentrate on practical logic design and development so as to achieve the purposes of simplicity, efficiency and extensibility in a distributed environment.This paper is mainly focused on two key problems of MB server; they are concurrency model and memory management. We design a model which is based on ACE concurrent service components for process synchronization and introduce a technique for memory-pool assignment and put them into practice in the design of a MB system that is MTBus.Chapter I gives first a general view of the ACE communication framework and message middleware technology, then it introduces the Mobile Intelligent Network Management System which is based on MB architecture. The disadvantages of the system and the direction for designing an MTBus system are also concluded in this chapter.Chapter II expounds in general the aims and the function definitions of MTBus system and its design.Chapter III introduces in detail the design and implement of the system’s components including their communication message, machine communication module, name information management module, message pool management and message process module.Chapter IV describes three key techniques to designing an MTBus system and their schemes.Chapter V shows the test results of MTBus system’s overall performance and points out its shortcomings in the practice of web-management system.In addition, MTBus system designed the consistent interfaces in client APIs with MRB system,so the application which based on MRB system can smooth migration to MTBus system。Now, the system has been used in Mobile Intelligent Network Management System and CRBT service quality evaluation system. the application Feedback has further proved that MTBus system has high concurrent processing capabilities and can prevent the message flood effectively. Meanwhile MTBus server provides many maintenance functions,which can help users control and manage the communication processes better.

  • 【分类号】TP311.52
  • 【被引频次】3
  • 【下载频次】235
节点文献中: 

本文链接的文献网络图示:

本文的引文网络