软件特点
特色与优势
1、任意拓扑的联邦式路由网络
为了更大限度的提高系统的扩展性,SynchroMQ4.0可以将多个服务器节点组成一个联邦式的虚拟网络,该服务器网络对于JMS客户端就如同一个虚拟的SynchroMQ服务器一样,和网络中的不同服务器节点相连接的JMS客户端可以正常的进行消息通信,消息会在虚拟网络中进行路由和存储转发并最终到达目的地。
为了更大限度的提高系统的灵活性,用户可以将服务器节点组成任意拓扑结构的虚拟网络,即使有环路也不会对路由有任何影响。SynchroMQ4.0所采用的独一无二的动态路由算法可以在节点间自动交换路由信息,无需任何人工配置和干预,它可以自动找到到达目标的更优路径,而且一旦某个该路径上的服务器节点崩溃,下一个更佳的冗余路径会被选择继续进行消息的传输,如果没有到达目的地的路径,则消息会被持久保存在相关的服务器节点,当路由重新建立后,消息会被继续传输。
2、高可靠和容错特性
对于SynchroMQ4.0服务器,其可以保证持久消息的的可靠传输,即使在网络异常中断、人为关闭进程、操作系统崩溃等情况下,仍可以确保消息不丢失。当服务器故障恢复或者重新启动后消息能继续完成传输,并且实现消息传输一次且仅有一次(Onceandonlyonce)的语义;
对于SynchroMQ4.0服务器所组成的联邦式虚拟网络,其中的任一节点的失效不会导致整个系统的失效,具有良好的容错性。正如上面所介绍的,一旦某个路由被破坏,下一个更佳的冗余路径会被选择继续进行消息的传输,如果当前没有到达目的地的路径,则消息会被持久保存,待路由重新建立后,消息会被继续送达目的地。
3、可靠组播服务器互连
在局域网范围内,通过可靠组播协议可以大范围的进行服务器互连,提供很高的消息转发效率,并且可以和联邦路由网络结合,极大的提高系统的扩展性。
4、完全符合JMS标准
SynchroMQ4.0100%符合国际消息中间件标准JMS规范,完全实现JMS规范所要求的所有功能,包括队列和发布/订阅两种消息模型、同步和异步处传输、五种消息类型、消息的内容过滤、本地事务、持久订阅等。SynchroMQ4.0完全遵循JMSAPI,极大降低了开发人员的学习难度,更大化了用户应用系统的互操作性和移植性。此外还在安全、层次性主题、联邦网络、管理以及系统的高扩展性方面做了很多的扩展。
5、高伸缩性和扩展性
SynchroMQ4.0支持大规模的分布式应用。对于单个的服务器节点,采用Java异步网络NIO技术、自适应线程池设计以及更高效率的先进缓冲交换技术,使每个结点都可以承受多达上千个并发客户的连接。采用联邦集群和动态路由技术,支持在Internet范围内的部署和应用。
6、高性能、灵活的数据库连接池
SynchroMQ4.0实现了高性能和灵活的数据库连接池,它支持Oracle、Sybase、DB2、SQLServer、MySQL、HSQLDB等所有提供JDBC连接的大中型数据库。数据库连接池支持动态建立和去除连接,能够按需提供数据库连接,在不需要时又可以节省资源的消耗,极大的提高了数据库资源的利用率和访问效率。
7、高度的安全性
SynchroMQ4.0提供了一个高度可配置和完整的安全子系统,它通过结合用户、用户组、主题和队列资源、访问控制列表(ACL)以及允许连接的主机列表来细致入微的控制用户的访问权限:谁可以向某个主题/队列发布或者发送消息、谁可以从某个主题/队列订阅或者接收消息、哪些主机允许向服务器发起连接等。此外,SynchroMQ4.0通过JSSE提供SSL安全,它支持128位的消息加密。
8、使用HTTP隧道技术穿透防火墙
SynchroMQ4.0通过HTTP隧道技术实现了防火墙内的客户与服务器的连接以及防火墙内外的服务器之间的连接,仅需非常简单的设置,HTTP隧道即可自动建
9、层次性主题
SynchroMQ4.0对JMS所定义的主题概念进行了扩展,使其具有层次性的结构。一个主题可以定义成包含多层子主题的结构,例如 news.sports.football,news.sports.basketball 。消息发布者可以使用类似SQL语言中的通配符实现一次对多个主题发布消息以及订阅者可以一次订阅多个主题,例如 news.sport_.%ball 。