如何搭建完备实用的基础架构与中间件体系?

OSC源创君
 OSC源创君
发布于 2018年05月21日
收藏 54

基础架构,是项目基础库/基础软件/基础平台的架构与实现。它不直接从事任何对外业务,而是为后端工程师提供「服务」,如 RPC、负载均衡、消息队列、存储中间件等等。而中间件是一种独立的系统软件或服务程序,位于客户机服务器的操作系统之上,管理计算资源和网络通信。

对后端开发工程师来说,掌握一门后端开发语言仅仅是最基础的技能,在实际开发中,我们总少不了接触 Beego / Djang 等一些具体的开发框架,所以,我们必须熟悉整个后端的架构。而在中小型企业,往往没有基础架构的岗位,这就要求后端开发掌握基础架构与中间件体系的搭建。

得益于开源,现在有大量可用的工具链可以帮助开发者顺利搭建。下面,为大家介绍 XXL 系列开源软件,这套基础组件涵盖配置中心、任务调度、消息队列、缓存管理等,是相对非常完备的基础套件。

分布式配置管理平台 —— XXL-CONF

XXL-CONF 是一个分布式配置管理平台,提供统一的配置管理服务。它解决了常规项目开发使用 properties 维护配置信息,需手动修改 properties 文件、重新编译打包、重启线上服务器、配置生效不及时、不同环境上线包不一致的问题。

传送门:https://my.oschina.net/xuxueli/blog/734267





分布式任务调度平台 —— XXL-JOB

XXL-JOB是一个轻量级分布式任务调度框架,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。

在设计思想上,将调度行为抽象形成“调度中心”公共平台,而平台自身并不承担业务逻辑,“调度中心”负责发起调度请求。将任务抽象成分散的 JobHandler,交由“执行器”统一管理,“执行器”负责接收调度请求并执行对应的 JobHandler 中业务逻辑。因此,“调度”和“任务”两部分可以相互解耦,提高系统整体稳定性和扩展性。

传送门:https://my.oschina.net/xuxueli/blog/690978



分布式消息队列 —— XXL-MQ

XXL-MQ 是一款轻量级分布式消息队列,支持串行、并行和广播等多种消息模型。支持三种消息模式:



目前流行的 ActiveMQ、RabbitMQ、ZeroMQ 等消息队列的软件中,大多为了实现 AMQP,STOMP,XMPP 之类的协议,变得极其重量级,如新版本Activemq建议分配内存达1G+。但在很多 Web 应用中的实际情况却往往是想找到一个缓解高并发请求的解决方案,一个轻量级的消息队列实现方式才是我们真正需要的。

传送门:https://my.oschina.net/xuxueli/blog/738918

分布式缓存管理平台 —— XXL-CACHE

XXL-CACHE 是一个分布式缓存管理平台,其核心设计目标是“让分布式缓存的接入和管理的更加的简洁和高效”。

核心思想:

1. 将分布式缓存抽象成公共 RPC 服务,对外提供公共 API 进行缓存操作:

  • 项目接入缓存服务更加方便:接入方只需要依赖一个 RPC 服务的 API 即可;

  • 统一监控和维护缓存服务;

  • 方便控制 client 连接数量;

  • 缓存节点变更更加方便;

  • 在节点变更时, 缓存分片很大可能会受影响, 这将导致不同服务的分片逻辑出现不一致的情况,统一缓存服务可以避免之;

  • 可以屏蔽底层 API 操作,提供公共 API,避免 API 误操作;

2. 提供缓存管理和监控平台:方便的查询、管理和监控线上缓存数据。

传送门:https://my.oschina.net/xuxueli/blog/732279

当然,这些基础组件只是为我们提供了可用工具,该结合现有业务使用 XXL 系列开源产品呢?看文档不如与项目创始人面对面交流。

这一次,我们邀请了 XXL 开源项目的创始人 、美团点评工程师 —— 许雪里参加「上海源创会」,许老师擅长中间件基础架构,分布式系统架构与实践,本次分享将通过对现有基础组件和相关领域新技术进行梳理,并结合XXL系列开源产品,设计构建一个在现在与未来一定时间内完备实用的基础架构与中间件体系。

除此之外,5 月 27 日(周日)上海源创会 还邀请了黄励博(又拍云系统开发高级工程师)、曲骏(安畅混合云服务架构团队负责人)、朱明智(个推B2D研发部平台研发专家)、韩天峰(Swoole 和 PHP-X 开源项目创始人)四位行业大牛。以架构为核心,与你进行一场关于面对面的技术对话。

点击报名,与业内大咖和更多小伙伴当面交流。

还可以扫码报名哦~~


本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:如何搭建完备实用的基础架构与中间件体系?
加载中

精彩评论

许雪里
许雪里
😁 正在准备源创会的PPT,整理了涵盖:Api网关、缓存、服务通讯、队列、任务调度、配置……等的基础架构与中间件的图谱。不会过度介绍具体的 “术”,但是,会详细 “道” 相关的内容,包括原理、特性与场景等等。

希望可以和大家一起探讨印证哈!
小山羊
小山羊

引用来自“许雪里”的评论

😁 正在准备源创会的PPT,整理了涵盖:Api网关、缓存、服务通讯、队列、任务调度、配置……等的基础架构与中间件的图谱。不会过度介绍具体的 “术”,但是,会详细 “道” 相关的内容,包括原理、特性与场景等等。

希望可以和大家一起探讨印证哈!
XXL niubility
红薯
红薯

引用来自“大漠真人”的评论

@红薯 原创会什么时候搞直播就好了
一直有直播

最新评论(9

八一菜刀
八一菜刀
@许雪里 这个架构图是用什么软件画的?
OSCharles
OSCharles

引用来自“许雪里”的评论

😁 正在准备源创会的PPT,整理了涵盖:Api网关、缓存、服务通讯、队列、任务调度、配置……等的基础架构与中间件的图谱。不会过度介绍具体的 “术”,但是,会详细 “道” 相关的内容,包括原理、特性与场景等等。

希望可以和大家一起探讨印证哈!

引用来自“小山羊”的评论

XXL niubility
XXL niubility
haitaosoft
haitaosoft
第一反应是 基于nginx。。。。。
xdev
xdev
其中的特征说明中 第二行、第三行应该改为队列Queue
小山羊
小山羊

引用来自“许雪里”的评论

😁 正在准备源创会的PPT,整理了涵盖:Api网关、缓存、服务通讯、队列、任务调度、配置……等的基础架构与中间件的图谱。不会过度介绍具体的 “术”,但是,会详细 “道” 相关的内容,包括原理、特性与场景等等。

希望可以和大家一起探讨印证哈!
XXL niubility
许雪里
许雪里
😁 正在准备源创会的PPT,整理了涵盖:Api网关、缓存、服务通讯、队列、任务调度、配置……等的基础架构与中间件的图谱。不会过度介绍具体的 “术”,但是,会详细 “道” 相关的内容,包括原理、特性与场景等等。

希望可以和大家一起探讨印证哈!
Skyogo
Skyogo

引用来自“大漠真人”的评论

@红薯 原创会什么时候搞直播就好了

引用来自“红薯”的评论

一直有直播
直播在哪里看?
红薯
红薯

引用来自“大漠真人”的评论

@红薯 原创会什么时候搞直播就好了
一直有直播
大漠真人
大漠真人
@红薯 原创会什么时候搞直播就好了
返回顶部
顶部