服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - 解析rainbond以应用为中心的架构设计原理

解析rainbond以应用为中心的架构设计原理

2022-08-09 11:35kl Java教程

这篇文章主要为大家介绍了rainbond以应用为中心的架构设计实现及原理解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

前言碎语

今天博主安利一个国产开源的无服务器容器云平台,关注它已经有一年多了,虽然其迭代到现在很多功能还是一直处于测试验证中,但是其设计理念以应用为中心,我觉得这个是未来的趋势。

其实以docker+k8s这种架构也是一种以应用为中心的架构,rainbond底层深度集成k8s,为用户提供云原生应用全生命周期解决方案,构建应用与基础设施、应用与应用、基础设施与基础设施之间互联互通的生态体系,满足支撑业务高速发展所需的敏捷开发、高效运维和精益管理需求。

github:https://github.com/goodrain/rainbond

 

一、云计算的发展

解析rainbond以应用为中心的架构设计原理

回顾云计算产业与技术的发展路程,物理计算集群逐步被IaaS层虚拟化取代,国内例如阿里云,腾讯云等IaaS厂商布局多年。IaaS层解决了资源提供者与使用者的耦合问题,对于用户来说只需要选择使用什么操作系统,分配多大资源上限即可,一定层度上降低了用户交付应用价值的难度。

但是,用户依然需要重复得进行操作系统运维,环境与应用运维,技术难度依然很高。近两年,以Docker、Kubernetes为代表的容器与容器编排技术盛行,其实际上是将虚拟化进一步上移,更加面向应用,可以说容器化是对应用的虚拟化。在这样的基础上用户创造和交付大规模业务系统变得更加简单。

我们认为,云计算的发展更多的是让大部分公司和人群只需要关注和创造业务系统,关注业务逻辑,而不是将大量时间和人力投入到复杂的,重复的计算资源维护上,因此只是容器化还不能达到这个层次,我们希望将云计算推向到下个阶段:应用管理阶段,呈现出两个产品,无服务器PaaS和云原生SaaS。

 

二、企业价值与IT

解析rainbond以应用为中心的架构设计原理

上文我们提出了应用管理的概念,那么应用管理对于我们大多数企业IT有多大的价值呢?

对于大多数IT企业和互联网企业,企业价值的直接体现在于创造的应用或运营的应用本身,也就是说在业务本身上。然而我们都知道,一个业务系统需要运行,必须得搭建运行环境,考虑网络、存储、配置、负载均衡、安全等等一系列复杂的计算资源管理问题,而且每一次系统搭建都重复得进行,往往在这些问题上花费大量的成本。

我们在应用与计算资源管理这两者之间增加一层应用管理(无服务器PaaS和云原生SaaS),完全以应用为中心进行设计,将应用与计算资源解耦,应用管理之上,开发或使用人员只需要关注业务设计,编码,测试,上线流程环,应用管理平台自动化完成从源码到云端运行的复杂流程。

开发者无需再面对底层计算资源的管理复杂性,也就解除了对传统的运维人员的依赖,同时对于运维人员,只需要在平台自动化资源管理的基础上维护资源池稳定,两者责任清晰,边界清晰,天然的解决了DevOps问题。经过与大量用户沟通实践后我们发现,应用管理成为了提升企业IT能力的关键。

 

三、服务模式

解析rainbond以应用为中心的架构设计原理

完整的应用管理方案包括:

  • 北向的应用抽象管理
  • 南向的计算资源管理

Rainbond产品按照这样的设计思路应运而生。在应用管理方面,我们设计了应用抽象模型,面向企业IT系统和基础应用,例如互联网类应用,行业类应用,物理网类应用以及大数据技术类应用等。

针对微服务架构的支持,除了兼容已有的微服务架构以外,原生提供了Service Mesh架构的支持,对上诉多种类型的单体应用,新老应用实现规模化整合,对各类型应用提供标准的、完整的功能支持。

当然,不同的应用在高级需求上是不同的,例如MySQL需要热备份,外网访问应用需要防火墙等等需求我们设计了应用插件体系,对应用功能进行差异化,无侵入式扩展。

在计算资源管理方面,对不同的计算资源进行统一的池化,软件定义,提供标准的计算服务。除了在公有云计算资源之上,目前我们尝试了在地方IDC厂商,企业私有已有的x86-64架构计算资源之上搭建Rainbond数据中心。

我们正朝着资源全自动运维的目标前进。对于用户来说,取需要的任何应用,运行于需要的计算资源之上,按需组合,灵活组合,最终提供了SaaS化得服务。

 

四、以应用为中心的产品设计

解析rainbond以应用为中心的架构设计原理

Rainbond基本的设计思想就是 以应用为中心,近年来该理念也被业界同行和更多用户所认同,Rainbond提供了应用完整的生命周期管理:

 

应用的生产阶段

Rainbond从设计上就支持从各类型软件源构建生产应用,从各类型编程语言源码,已经打包的容器镜像,更包括定义好的DockerCompose文件等等。Rainbond定义应用的各层面元素,就像一个生产线,输入各种代码,生产出统一的应用。

 

应用运行阶段

Rainbond软件抽象管理存储,网络、计算等各种计算资源。在此基础之上运行APP-Runtime,为应用运行提供统一得,丰富得服务。让简单的应用组建起高性能的架构。

 

应用传播阶段

应用是需要被更多的用户使用产生价值的,Rainbond提供得是应用得传播,即一处构建应用,到处生产服务。例如某软件商生产一套微服务架构服务,涉及30个独立应用。云帮将作为其与客户快速交付得桥梁,用户只需一键即可部署完整服务。

 

五、面向未来

我们的愿景是希望Rainbond的使用者是一个相辅相成的整体,有人创造应用,有人发挥应用的最大价值,有人为应用提供超大资源保障。这一切的连接由Rainbond承载,构建起互联互通的应用管理生态体系。

以上就是解析rainbond以应用为中心的架构设计原理的详细内容,更多关于ainbond应用架构设计的资料请关注服务器之家其它相关文章!

原文地址:http://www.kailing.pub/article/index/arcid/219.html

延伸 · 阅读

精彩推荐
  • Java教程带你快速搞定java数组

    带你快速搞定java数组

    数组是相同类型数据的有序集合数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成。其中,每一个数据称作一个数组元素,每个数组元素...

    香菜聊游戏4962021-10-09
  • Java教程Java装饰者模式实例详解

    Java装饰者模式实例详解

    这篇文章主要介绍了Java装饰者模式,结合实例形式详细分析了装饰着模式的原理与java具体实现技巧,需要的朋友可以参考下...

    Qian-Z9022020-12-26
  • Java教程Java数据导入功能之读取Excel文件实例

    Java数据导入功能之读取Excel文件实例

    这篇文章主要介绍了Java数据导入功能之读取Excel文件实例,本文给出了jar包的下载地址以及读取Excel文件的代码实例,需要的朋友可以参考下 ...

    junjie3382019-12-24
  • Java教程Java编程线程间通信与信号量代码示例

    Java编程线程间通信与信号量代码示例

    这篇文章主要介绍了Java编程线程间通信与信号量代码示例,具有一定借鉴价值,需要的朋友可以参考下。...

    Sides4182021-02-28
  • Java教程Java 驼峰命名法详解(必看篇)

    Java 驼峰命名法详解(必看篇)

    下面小编就为大家带来一篇Java 驼峰命名法详解(必看篇)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧 ...

    脚本之家6762020-10-29
  • Java教程详解Java中的时区类TimeZone的用法

    详解Java中的时区类TimeZone的用法

    TimeZone可以用来获取或者规定时区,也可以用来计算时差,这里我们就来详解Java中的时区类TimeZone的用法,特别要注意下面所提到的TimeZone相关的时间校准问题...

    log_cd3912020-05-11
  • Java教程使用@RequestParam 绑定List参数

    使用@RequestParam 绑定List参数

    这篇文章主要介绍了使用@RequestParam 绑定List参数的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...

    天糊十三幺8742021-11-23
  • Java教程Java设计模式之代理模式原理及实现代码分享

    Java设计模式之代理模式原理及实现代码分享

    这篇文章主要介绍了Java设计模式之代理模式原理及实现代码分享,设计代理模式的定义,静态代理,动态代理,jdk动态代理实现步骤,原理及源码等相关内...

    BuleSky5762021-02-04