本次 CommunityOverCode Asia 2024 的 Monolith vs Microservice 专题,将给大家带来 Apache 社区建设和发展的最新资讯和前沿实践,现在就一起来看看吧!
专题介绍
微服务一度成为我们技术选型的默认选项,似乎不是微服务的就是落后的。但在近两年开始,关于微服务的质疑开始涌现,大家开始怀念单体服务的简单直接,避免服务化后的各种治理成本。
业界也涌现出了一些全新的编程框架,让开发者具备单体开发的体验与高效,同时具备微服务部署的灵活性与伸缩性,甚至具备一定的 Serverless 特性。
出品人
刘军
Apache Dubbo PMC member,阿里微服务框架开源负责人,工作在微服务、 RPC 领域的老兵,有丰富框架研发及企业落地经验。
议程亮点
7 月 26 日 14:00 - 17:45
演讲议题:Apache Dubbo 如何在单体架构和微服务之间进行切换分享时间:7 月 26 日 14:00 - 14:30
议题介绍:
近年来,单体架构和微服务架构之间的比较再次出现在大家的视野中,并得到广泛讨论。甚至出现了从微服务架构迁回单体架构的案例。那么,单体架构优越还是微服务架构优越呢?在软件世界中并不存在银弹,正确的选择是适合您的选择。
Apache Dubbo 在微服务架构领域具有许多出色的特性和能力。它如何同时支持单体架构和微服务架构,使软件系统能够在它们之间切换?这要归功于 Apache Dubbo 3.x 版本的多实例能力。
演讲嘉宾:
Zhongming Hua丨Apache Dubbo PMC
Apache Dubbo PMC,见证了 Dubbo 从 Apache 孵化器到毕业的过程。Dapr 成员,Apache Maven Committer,GSoC/OSPP/GLCC 导师。
演讲议题:探索微服务的下一个阶段,Koupleless 模块化开发框架和服务系统分享时间:7 月 26 日 14:30 - 15:00
议题介绍:
微服务的发展在很大程度上解决了组织专业化的问题。然而,它也带来了一些挑战:
业务开发人员需要了解复杂的基础设施,导致启动速度较慢、开发效率较低。
微服务分解没有标准。分解不足可能导致团队成员之间的协作障碍,而过度分解可能导致资源使用和长期维护成本问题。
如何建立合理的微服务分解标准,从根本上避免分解过少或过多的问题?
在研究了这些痛点之后,蚂蚁集团的中间件团队设计了一个升级版的传统微服务分解模型,解决了基础设施抽象和开发运维细粒度的问题。与传统的仅进行横向分解的微服务不同,这个升级版模型包括了纵向和横向的划分。它纵向划分为基础和模块,使得模块不会消耗额外的机器容量(节省资源),并且模块开发人员只需关注自己的业务逻辑(认知负担较低)。横向上,它被分解为多个模块,允许开发人员独立迭代而不受干扰(协作效率高)。
这种新的架构模型已经被蚂蚁集团内的所有 BG(业务群)采用,集成了 70 万个核心应用。借助这个新模型,构建大小从几个 GB 减少到几个 MB ,业务启动时间减少到几秒,迭代效率大大提高,赢得了业务团队的认可和赞誉。
演讲提纲:
1、蚂蚁集团微服务和应用开发的背景。
2、Koupleless 开发框架的解决方案和成果。
3、Koupleless 运维调度平台的介绍。
4、这个模型所需的全部能力。
5、这个模型的优势和劣势,以及如何平衡它们。
6、实践经验和案例研究成果。
7、总结和未来展望。
您将获得:
1、对蚂蚁集团在微服务和应用开发方面的尖端技术和成就的深入了解。
2、对于合理的微服务分解有新的观点,解决了过度或不足分解的问题,同时避免了微服务带来的额外开销。您还可以采用 Koupleless 来帮助企业大幅降低成本并提高效率。
3、了解这个新模型如何平衡利弊,找到隔离和共享之间的最佳平衡点,解决当前问题。
4、了解这个新模型在行业中的当前状态和挑战,以及未来的前景。
演讲嘉宾:
Zhenling Zhao丨Technical Expert in AntGroup, Experienced in the fields of Microservices, Serverless and Cloud-Native domains
我在互联网技术开发领域拥有 8 年的经验,主要专注于微服务、 Serverless 和云原生领域。我于 2018 年加入蚂蚁集团,负责构建基于 K8s 部署的 PaaS/Serverless 和自动扩缩容系统。目前,我主要负责设计和构建模块化开发框架,并在其平台上进行与 Serverless 相关的工作。这已成为蚂蚁集团的新应用和 DevOps 架构,在 70 万个核心机器的蚂蚁集团应用中广泛使用,并获得了中国信息通信研究院 2022 年度云原生技术创新奖。
此外,我还是 SOFAArk 社区的开发人员和维护者,也是 KNative 社区的贡献者。
演讲议题:通过使用 HTTP/3,在云原生环境中增强 Dubbo 的性能和可靠性分享时间:7 月 26 日 15:00 - 15:30
议题介绍:
Apache Dubbo 是一个专注于提供出色的服务治理能力的高性能 RPC 框架。随着 HTTP/3 的引入,基于 QUIC 协议的特性为 Dubbo 微服务通信提供了新的可能性。HTTP/3 通过降低延迟、提高传输速度、增强安全性、改善丢包抗性以及支持 0-RTT 连接,在云原生环境中为 Dubbo 的微服务通信提供了显著的性能和可靠性改进。
演讲嘉宾:
Sean Yang丨Cloud Software Group(Citrix), Principal SW Engineer
在 Java 架构和开发方面有 18 年的经验;精通分布式系统架构设计和性能调优;曾任菜鸟资源中心团队的技术负责人;曾任阿里巴巴 CCO 架构团队的技术负责人;现任 Cloud Software Group(Citrix)的首席软件工程师。
演讲议题:以 Dubbo 为代表的分布式中间件基准测试机制的探索与实践分享时间:7 月 26 日 15:45 - 16:15
议题介绍:
与单一框架相比,分布式中间件的构建通常会遇到更多问题。例如,测试自动化、多进程编排和调度、性能瓶颈分析方法等。本文将以 Dubbo 为例,探索一种针对分布式中间件的一站式基准构建解决方案。
演讲嘉宾:
Lin Zeng丨Head of Intelligent Platform, R&D Center, Zhengcaiyun
曾就职阿里巴巴、华为等公司,任架构师和项目经理等职位。现政采云研发中心 - 智能中台负责人。涉猎的技术领域有云原生、中间件、操作系统、安全、区块链、人工智能、智能硬件等。
演讲议题:Golang 中的微服务架构分享时间:7 月 26 日 16:15 - 16:45
议题介绍:
Golang 中的微服务架构。
演讲嘉宾:
Yuanxiao Zhao丨AlibabaCloud
微服务研发工程师。
演讲议题:Seata 架构演进:客户端和服务器部署形式的最佳实践分享时间:7 月 26 日 16:45 - 17:15
议题介绍:
本内容将介绍 Seata 客户端的网络通信架构,以及如何将其与不同存储模式和注册类型的服务器完美结合,从而使客户端和服务器都能实现理想的高可用性形式,并在未来的部署形式中可能发生哪些变化。未来的架构演进将使 Seata 更加成熟,并使生态架构闭环,节约用户的运维部署成本,降低入门学习门槛,接近用户的传统使用习惯,并与其他顶级中间件一样成熟。
演讲嘉宾:
Jianbin Chen丨Apache Seata(incubating) PPMC Member
多年来专注于微服务和分布式事务领域,在分布式事务和微服务领域拥有多项专利发明。
演讲议题:标准化的单体应用/微服务流量管理 - Koal Safety Tech Co. 的 Higress 实践分享时间:7 月 26 日 17:15 - 17:45
议题介绍:
Koal Safety Technology Co. 使用 Higress 作为 API 网关,并采用最新的 K8s Gateway API 标准来替代 Nginx 。它实现了针对单体应用和微服务的统一和标准化入口流量管理机制。
演讲嘉宾:
Tianyi Zhang丨Alibaba Cloud, API Gateway, Proficient Engineer
阿里巴巴云 API 网关工程师,阿里巴巴开源网关 Higress 的维护者。
Zhenghao Zhang丨Koal Software Co., envoy gateway, Senior Software Engineer
envoy 云原生网关负责人,alibaba higress 开源项目贡献者,前戴尔科技以及中国电科第 50 研究所软件工程师,有丰富的 nginx&envoy 实战经验,拥抱开源,对开源技术以及云原生技术有着浓厚的兴趣。
相关推荐
Udagram图像过滤应用程序 Udagram是与Udacity Cloud Engineering Nanodegree一起开发的简单云应用程序。... 该项目分为两个部分: 前端-使用Ionic Framework构建的Angular Web应用程序 后端RESTful API-Node-Express...
[removed] var data = {标题:“ Monolith与Microservice,两个应用的故事”,描述:“”,网址:“ ”,指南:“单对微服务的两个应用程序的故事”,作者: “ Marak”,日期:“ 2015年7月29日星期三15:38:30 GMT-...
不同于传统的“网页另存为”,monolith不仅节省了目标文件,它嵌入CSS,图像和JavaScript的资产一下子,生产单一HTML5文档是一种快乐来存储和共享。 与使用来保存网站相比wget -mpk,此工具将所有资产嵌入为数据URL...
lein-monolith, 用于使用monorepos的Leiningen插件 lein-monolith lein-monolith 是一个Leiningen插件,用于在monorepo中处理多个项目。 在高级,插件为你提供了一种方法:跨子项目共享配置,如 :repositories 。:...
这是monolith-mail的匿名邮局的前端,用于显示传入的邮件 体验地址:http: : 与后端结合使用... 项目后端地址: : docker类型安装(推荐) 1:设置config / index.js URL地址和端口,指向Java项目 2:建立形象 ...
在工作目录中创建一个monolith.yml文件,其中包含存储库列表 path : /path/to/your/new/monolith repositories : admin : git@github.com:some-org/admin.git auth : git@github.com:some-org/your-auth-gem.git ...
monolith-service
Microservice架构模式是一种现代软件开发方法,它强调将大型的、复杂的单体应用(Monolith)拆分为一组小型、独立的服务,每个服务专注于一个特定的业务功能,拥有自己的数据库和独立的部署生命周期。这种架构模式在...
在这个"libv8_monolith.a.zip"压缩包中,包含的是V8引擎的静态库文件——"libv8_monolith.a"。 静态库是一种将编译好的代码打包成单一文件的形式,开发者在构建应用程序时可以直接链接这些库,使得最终的可执行文件...
Monolith是一种旨在提供安全、快速且美观编程体验的已编译语言,专为构建高度可维护的软件而设计。在编程领域,一个“monolith”通常指的是一个单一、整体的应用程序,而不是微服务架构中的分散组件。Monolith编程...
整体式 Monolith是一个针对和的Lua收藏库。 数据结构和抽象数据类型使数据管理变得简单。 使用标准集合,例如列表,地图,集合和堆栈使用循环枚举数据轻松构建和转换数据停止专注于管道安装要安装Monolith,请使用的...
该设置已合并到一个,您现在可以使用以下命令来重现生成(减去自定义): mkdir jhipster-monolith-dinosaurscd jhipster-monolith-dinosaursjhipster import-jdl jhipster-monolith-dinosaurs.jdl部署已针对该版本...
《Smart Factory项目后端详解——基于Java的Monolith架构》 Smart Factory项目是现代工业4.0中的一个重要组成部分,它的核心在于实现生产流程的智能化、自动化。在这个项目中,"smartfactory-backend-monolith"作为...
1:设置您服务器mx解析2:更改项目代码端口3:打开您服务器25端口和项目端口4:可以使用docker部署3.1:docker启动命令:docker run --name monolith -d -p 25:25 -p距离映射:8080整体 如何使用 1:设置服务器MX...
- **自动配置**:Spring Boot的核心特性之一,它根据项目依赖自动配置Bean。 - **起步依赖**:简化添加依赖,如`spring-boot-starter-web`用于web服务,`spring-boot-starter-data-jpa`用于数据库操作。 - **内嵌...
Monolith-Xcode-Template 是一个专为iOS和macOS开发者设计的工具,它提供了一种便捷的方式,通过自定义Xcode模板来创建Monolith应用程序。Monolith应用是一种将多个目标或框架整合到单个可执行文件中的开发模式,...
"partner4monolith"应用的核心功能之一是规则辅助。对于复杂的桌面游戏来说,理解和记忆所有规则可能是一项挑战。这款应用通过清晰的界面和易于访问的信息,帮助玩家快速查找和理解游戏规则,确保了游戏流程的顺畅。...
这是Monolith DKP的开发资源库,不一定反映Curse或WoWI上的最新版本。 根据所添加的功能,它还可能会与旧版本的产品产生兼容性问题。 在尝试使用之前,请备份已保存的变量文件,以防止任何可能的数据丢失。 说明:...