QuickBurro(快驴)中间件是一套由中国程序员(Jopher Software Studio, 樵夫软件工作室)研发设计的软件包,目前主要适用于Borland/CodeGear Delphi软件开发环境,用来进行广域网分布式应用项目的开发。系统由网络节点系统(可执行程序)和应用开发组件(VCL Components)两部分组成,短小精悍、便于安装使用及二次打包发布。通过QuickBurro的节点系统核心服务程序,您可以快速地在广域网上架构“树状层次型应用网络”(因上下分级联机,我们专门称其为“级联网”);而通过其中第二部分的各种开发控件,应用程序员能轻松实现在不同广域网节点之间进行诸如数据库记录远程存取、多媒体数据交换、即时信息播发等实用的信息交换功能。事实上,树形级联状的分布式应用模型是一种极为典型、与客户业务最为接近的网络架构,如大型物流公司、大型分销系统、大型集团公司、政府组织机构等等,——因而,QuickBurro中间件系统具有良好的开发应用价值。
系统采用Borland Delphi开发工具设计编写,其中的客户端应用开发组件包因此主要适用于Borland/CodeGear Delphi软件开发环境。系统研发时涉及到多线程、Socket、UDP、ADO、数据压缩技术、数据加解密技术、环型队列、连接池、线程池等各种核心技术,大都采用Delphi标准的函数或组件加以解决。设计时对各种Socket通信模式进行了全面的对比测试,最终在服务端选择了响应性高、不易丢失连接请求的非阻塞通信模式,加上采用了环型队列等数据结构,使得系统能处理成百上千用户的并发请求,稳定可靠;对于8K以下数据量的短消息传递,系统采用UDP通信进行实现,并采用了自主研制的“可靠UDP传输”技术,来解决UDP丢包问题;数据的传输采用了短消息加密/大容量数据压缩等技术措施,因通信协议的私密性及密钥的客户自定义,确保了通信的安全可靠;系统在节点之间、节点与用户之间都实现了双向的通信,使消息的传递更及时畅通、因此不再有因轮询中间层状态而导致的中间层资源消耗等弊端;系统特有的业务逻辑部件接口标准、模块热插拔、模块内存驻留等技术,使得应用项目中研制业务逻辑部件及进行快速部署等都很方便;系统支持的中间层计划任务,为在中间层部署并适时激发外部进程创造了条件......而新版本加入的多数据库支持、数据包裹类、任务同步执行控件等,在系统功能、使用的方便性等方面锦上添花。
QuickBurro中间件是一套旗帜鲜明、个性十足的系统。在这里找不到让人“崇敬不已”的专业术语、找不到“忘了又记、记了又忘”的COM规范或接口,这里只有能干事情的一系列函数或方法、帮助你实现以前“心里痒痒想实现”的各种远程交互功能。下面例举QuickBurro中间件的特色:
支持服务器集群、适合组建大型广域网应用网络
独特的网络对象命名规则,具备应用程序员透明的自动寻址/地址解析功能
流式二进制数据传输、高效的远程数据传输能力
长连接与短连接共存、分工合作、扬长补短,显著提升系统效率
无状态的中间层服务、保证较为高效的任务处理过程
非阻塞型套接字模型+环型任务队列+线程池,并发通信能力强
切实可靠的“安全UDP通信”技术,UDP丢包率极低
任务优先级分级处理机制,满足“紧急的任务先处理”的要求
消息加密传输、用户自定义密钥、协议私密性强,确保通信安全可靠
节点之间、节点与用户之间的全部双向传输,不再需要单向的状态轮询
综合性的中间件功能,满足实际项目复杂多变的功能需求
客户端组件较为明确的功能性封装方式,充分减轻应用开发的复杂程度和工作量
应用服务器端不需要进行基本框架方面的编程,只需要作业务逻辑部件的开发
简便的业务逻辑部件接口规范,没有复杂的技术理论和术语,一学就会、一试就通
同时支持线程方式的DLL部件及进程方式的Exe部件,扩展性能极好,系统越用功能越强
异构数据库类型的支持、多数据源的支持、多种远程数据库存取方式
异步与同步两种客户端开发方式,适应不同应用项目的编程要求
独特的数据包裹构造类(TQBParcel),较好地满足“对象序列化/传输/还原”的需要
服务方式运行的中间层软件,适合在无人职守的用户现场部署
QuickBurro的作者认为,中间件充其量不过一座桥而已,如果过桥时还要背个门板铺垫,那是要人命的泸定桥;若此桥让人渡河时没额外的负担,那是一般桥功能上的实现;如果过桥比较轻松、还能看点风景什么的,那是桥设计得巧妙;当然,如果能坐着轿子、吃着点心过桥,那自然更是造桥者的匠心独运了。市面上这么多中间件,分别是什么样的一座桥呢?还是留给用户来评价吧。
产品主页: http://www.quickburro.net/
技术论坛: http://qburro.bbs.pepo.cn/
QQ高级群: 79114999