论文部分内容阅读
随着人工智能(Artificial Intelligence,AI)、大数据的技术突破,与此同时,伴随着区块链技术的兴起,传统的消息系统已经无法满足大数据情况下的数据传输与通信,无法全部满足分布式集群、高可用、弹性可扩展、消息传递多样化等需求。此外,面对物联网(Internet of Things,IoT)信息交换和通信,迫切需要消息系统具备处理海量数据的能力,并且需要保证系统数据处理达到高性能的要求。当前,大部分消息系统的编程语言都是基于JVM运行环境,这就导致这类系统的运行效率比机器语言编写的系统运行效率要低。而有些满足高性能要求的消息系统,却又不满足分布式处理能力和高可用可扩展的要求。对此,本文以适应物联网发展的需要为基石,研究构建一个海量高性能分布式消息系统。消息系统需要使各个系统之间进行消息的传递和数据的交换,以维持各个系统之间的互联互通。本文研究的系统将在此基础功能之上,构建实现海量存储、高性能数据发送和接受、分布式计算以及高可用。研究的策略主要是分析现有消息系统的瓶颈、系统的实用性、系统是否采用现代化的技术架构、是否适用于大数据量高并发的应用场景等问题,针对这些问题给出可行的设计思路和可实现的技术细节。系统采用高并发的Go语言编写,支持TiDB数据库系统作为其存储引擎,设计上实现分布式计算、简洁高效的通信协议、智能算法、微服务等功能,并且保证数据的完整性和安全性。此外,消息发送的模式更加多样化,支持发布/订阅模式、请求/响应模式、消息队列模式。系统已经成功部署到公司的服务器上,并且经过一系列的测试,测试结果表明系统基本满足设计目标。从功能性要求和非功能性技术指标而言,本系统解决了消息系统所面对的所有已知不足以及已知的技术瓶颈,从而成为真正意义上的现代化消息服务系统。