Rainbond

Rainbond对接私有源码仓库(Git、Svn)

允我心安 提交于 2019-12-18 00:17:24
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 本篇文章主要讲解Rainbond如何获取私有源代码仓库进行源码构建。 原理解读 通过自定义源码的方式创建应用 当你填写Git地址时,平台会自动判断地址的协议,如果是HTTP的Git地址,平台会提示你输入Git仓库的用户名和密码,如果是公开项目,用户名密码可以省略。当输入的Git地址是SSH协议时,平台会提示你将Rainbond的SSH公钥复制到Git仓库中。Rainbond会为每个团队生成独立的公钥以避免多团队密钥冲突。 当你填写Svn代码地址时,平台提示输入账号名和密码,如果是私有仓库,请务必输入账号。 操作流程 本文主要讲解通过 SSH 公钥的方式对接私有部署的Git仓库,以 GitLab 为示例进行说明。 Gitlab创建新项目 如果你已有项目,此步骤跳过 新建项目 填写项目名称 创建示例代码 切换到SSH地址后,需要记住项目的SSH地址,后续创建应用时需要用到,这里的地址是 git@172.16.210.205:test/helloworld.git 新建一个index.html 的文件,内容为 hello world,hello goodrain! 提交。 配置SSH公钥对接私有仓库 获取公钥 进入【创建应用】-【从源码创建】-【自定义源码】,将项目的SSh协议的地址复制到【Git仓库地址】栏中时

手把手教你实践Service Mesh微服务架构

荒凉一梦 提交于 2019-12-16 16:09:15
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 内容不断完善中,访问 文档 查看最新更新 当下,已经有很大一部分公司完成了单体架构向微服务架构的迁移改造,并在疲于应对大量微服务间通信问题时,开始考虑采用Service Mesh微服务架构作为服务与服务直接通信的透明化管理框架,以插件式的方式实现各种业务所需的高级管理功能。 而开源PaaS Rainbond 提供了开箱即用的Service Mesh微服务架构,部署在Rainbond上的应用原生即是Service Mesh微服务架构应用。 接下来,我们将以 Rainbond v3.7.0 为基础平台,以开源商城项目 sockshop 为例,演示如何在源代码无入侵的情况下,将项目改造为具有 服务注册与发现 、 分布式跟踪 、 A/B测试 、 灰度发布 、 限流 、 熔断 、 性能分析 、 高可用 、 日志分析 等能力的高可靠性电商业务系统。 一键部署Rainbond请查看 快速开始 。 sockshop是一个典型的微服务架构案例,具备用户管理、商品管理、购物车、订单流程、地址管理等完善的电商相关功能。sockshop主要由 Spring boot 、 Golang 、 Nodejs 等多种语言开发,使用 MySQL 和 MongoDB 等多种数据库,原方案采用单机环境下的部署方式,缺乏服务治理能力和分布式能力。

Rainbond 5.1.9发布,新增实例弹性伸缩、OAuth代码仓库互联功能

▼魔方 西西 提交于 2019-12-16 10:02:10
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> Rainbond 5.1.9发布,新增实例弹性伸缩、OAuth代码仓库互联功能 2019年12月12日,Rainbond开源2周年纪念,我们带来了5.1.9版本,本次更新引入组件实例自动伸缩、代码仓库互联(OAuth2.0互联)两大功能,同时在系统高可用、系统服务自动运维、功能可用性等方面做大量优化。 Rainbond:以应用为中心,支撑企业应用的开发、架构、模块化组装、交付和运维的全生命周期,通过“无侵入”架构无缝衔接各类企业应用,通过软件定义管理企业物理资源,并提供DevOps能力。 Rainbond是什么? 发布版本:5.1.9 版本更新:推荐 更新范围:组件实例控制、系统自动化运维、持续集成 实例弹性伸缩 弹性伸缩是指对于无状态类组件服务或有状态可水平伸缩类组件服务当业务量大时自动增加实例数量,以保证计算能力。当业务处理量下降时减少实例数量,以降低资源占用成本。本次实现我们采用Kubernetes 默认伸缩算法。 伸缩算法 HPA Controller会通过调整副本数量使得某一指标尽量向期望值靠近,而且不是完全相等.另外,考虑到自动扩展的决策可能需要一段时间才会生效:例如当某一个组件实例的内存使用率一直上升并超过期望值,创建一个新实例的过程中,原实例的内存使用率还会持续上升。所以

Pinpoint-java性能分析最佳实践_开源PaaS Rainbond

Deadly 提交于 2019-12-12 12:17:36
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 概述 pinpoint简介 何为pinpoint: pinpoint是一个分析大型分布式系统的平台,提供解决方案来处理海量跟踪数据,主要面向基于tomcat的Java 应用。 **为何使用它:**和如今相比, 过去的因特网的用户数量相对较小,而因特网服务的架构也没那么复杂。web服务通常使用两层(web 服务器和数据库)或三层(web服务器,应用服务器和数据库)架构。然而在如今,随着互联网的成长,需要支持大量的并发连接,并且需要将功能和服务有机结合,导致更加复杂的软件栈组合。更确切地说,比三层层次更多的n层架构变得更加普遍。系统的复杂度因此提升。系统越复杂,越难解决问题,例如系统失败或者性能问题。在三层架构中找到解决方案还不是太难,仅仅需要分析3个组件比如web服务器,应用服务器和数据库,而服务器数量也不多。但是,如果问题发生在n层架构中,就需要调查大量的组件和服务器。另一个问题是仅仅分析单个组件很难看到大局;当发生一个低可见度的问题时,系统复杂度越高,就需要更长的时间来查找原因。最糟糕的是,某些情况下我们甚至可能无法查找出来。为了解决复杂架构下的拓扑解析与性能分析,pinpoint应运而生。 功能、优势与架构 功能 分布式事务跟踪,跟踪跨分布式应用的消息 自动检测应用拓扑,帮助你搞清楚应用的架构

自动上线测试已经不潮了,你有跟上DevOps的潮流吗?

核能气质少年 提交于 2019-12-05 07:32:44
相信大家一定都(没)有使用过Facebook的经验,一定对他的快速改版私毫不陌生,可能早上醒来时发现「赞」的图案突然从实心变从空心,或是开始多了一些缤纷酷炫的功能(像是直播、限时动态..等等),但你能想像一下吗?在过去十年前,大部份软件服务上的版本更新,都只能像是Office每年的一期一会来做推陈出新,但新的功能可能没解决到用户的痛处,反而增添了更多不必要的麻烦。 所以在快速变迁的时代里,这种快速、持续发布新版本的特性,俨然成为了适性生存的不二法则。你能想像Flicker每天至少会有10次以上的服务发布吗?如果在传统的开发方式,一旦有新功能的释出,如果使用者体验不好需要改进就算了,但如果有BUG的话,却需要等待一个月或一整年的时间才能解决,这样的产品你还会想用吗? 所以与传统开发方法那种大规模的、低频繁的发布,敏捷方法为基础的DevOps,目的就是为了提升了发布频率的速度与效率,从过去的「年」、「季」,提升到「月」、「周」,甚至是「日」。 但快速发布的概念,并非是「开发团队」的步调快速紧凑起来就可以达到的方式,因为每一个新版本的Release,除了靠开发团队的努力外,也需要「维运团队」、「测试团队」的努力,才有办法相辅相成,但通常在公司里「开发」和「维运」都是隶属于不同的部门的业务,开发目标是推陈出新,但维运部门在乎的是系统稳定性及可靠性,在这样两者恒相冲突的状况下

Rainbond 5.1.3发布,快速部署和运维spring cloud集群

余生长醉 提交于 2019-12-05 07:08:43
Rainbond 5.1.3发布,快速部署和运维spring cloud集群 今天为大家带来Rainbond 5.1系列第三个更新版本,本次版本更新的关键是降低Rainbond学习门槛,我们不仅增加了新用户指导任务来指引用户学习Rainbond的线路,同时在通过源码批量创建服务、通过Docker镜像批量智能创建服务等多个方面增加了大量改进来方便用户。 Rainbond是开源的企业应用云操作系统,支撑企业应用的开发、架构、交付和运维的全流程,通过无侵入架构,无缝衔接各类企业应用,底层资源可以对接和管理IaaS、虚拟机和物理服务器。 支持一次构建spring cloud多服务,基于Maven多模块批量创建服务[beta] 基于源码直接构建服务是开发者最常用的场景,使用Rainbond的用户有比较大的比例使用SpringCloud微服务架构或其他微服务架构,它们使用Maven Module维护整个工程代码,对于此类用户过去只能分别来创建服务,如果不了解Rainbond对于多模块代码的支持原理,门槛就比较高。Rainbond的核心抽象是应用级,与整个工程对应。因此能够直接从源码构建出整个业务系统将大大降低用户学习使用门槛。 在5.1.3版本中Rainbond增加了识别Maven Module的流程,自动识别代码仓库的所有打包方式为war和jar的模块,用户选择业务服务需要的模块批量创建服务

Rainbond V5.0 Beta公测公告

人盡茶涼 提交于 2019-12-04 07:03:34
Rainbond支撑企业应用的开发、架构、交付和运维的全流程,通过“无侵入”架构无缝衔接各类企业应用,底层资源可以对接和管理IaaS、虚拟机和物理服务器 Rainbond V5.0即日起开启Beta版本公测,诚邀广大用户试用。 Rainbond V5.0版本主要特性: 1. 新增应用网关 (1)移除了原rbd-entrance rbd-lb 两个组件,增加rbd-gateway组件 (2)支持HTTP、TCP服务访问策略管理 (3)HTTP策略支持基于域名、访问路径、请求头、Cookie访问路由控制 (4)支持配置HTTPs规则、HTTP转HTTPs规则 (5)支持泛域名规则 (6)支持SSL证书管理 (7)支持A/B测试、灰度发布控制 (8)TCP策略支持基于IP、端口访问控制 (9)自定义负载均衡策略,目前支持支持轮询算法,后续测试版本支持一致性Hash算法,Session粘连算法 (10)rbd-gateway支持集群部署,高可用与流量均摊,可工作于4层高性能软硬件负载均衡之后。 2. 支持对接已有Kubernetes集群 (1)应用运行时完整重构,提供以应用为核心的控制器抽象 (2)无状态服务部署类型更改为Kubernetes Deployment资源 (3)有状态服务本地存储、共享存储提供更改为动态PV,运行时提供Provider (4)应用状态维护由集中式更改为分布式

Service Mesh:一种新模式,而非新技术?

风格不统一 提交于 2019-12-03 15:11:10
Marco Palladino Service Mesh从何而来? 在过去几个月里,Service Mesh是行业内毋庸置疑的焦点。关于Service Mesh、关于软件架构未来的文章观点,围绕着不同的技术供应商而高度分化,不过有一点共通的事,对于如何在企业中使用API的快速转换,以及这对于我们流量的拓扑意味着什么。 服务API主要是作为将组织外部开发人员与内部系统连接起来的边缘接口,以及将这些内部系统(微服务)绑定到功能整体的“粘合剂”存在的。因此,面向微服务体系结构不可避免会出现数据中心内部通信增加的情况。tongguo的不可避免的结果之一是数据中心内的 内部通信将增加。Service Mesh作为一种潜在的解决方案出现了,它通过提供一个不同的框架来部署现有技术,从而解决了东西部流量增加带来的挑战。 Service Mesh是一种模式,而非技术 正如微服务是一种模式而不是一种特定的技术一样,Service Mesh也是一种模式。区分这两者听起来比实际要复杂得多。如果我们从面向对象编程(OOP)的角度来考虑这个问题,一个模式描述的是接口,而不是实现。 在微服务的背景下,Service Mesh部署模式能够通过sidecar代理,更好地管理东西流量。当我们拆分系统并使用微服务构建新产品时,我们流量的拓扑结构也正在从外部为主转向内部流量的持续增长。数据中心里的东西通流量增长

Rainbond 5.0正式发布, 支持对接管理已有Kubernetes集群

烂漫一生 提交于 2019-12-03 04:31:30
Rainbond 5.0正式发布, 支持对接管理已有Kubernetes集群 ​ 今天非常高兴向大家宣布 Rainbond v5.0 正式发布, Rainbond 是开源的 企业应用云操作系统 ,支撑企业应用开发、架构、交付和运维的全流程,通过 无侵入架构 ,无缝衔接各类企业应用,底层资源可以对接和管理IaaS、虚拟机和物理服务器。 ​ 此前发布的Beta版本经过几十个企业用户安装试用,非常感谢社区用户反馈的每个问题。我们在5.0版本中进行了大量优化重构,同时也增加了多项重要功能,使得Rainbond的社区兼容性和稳定性得到全面提升。下面来介绍一下新版本重点功能: 对接已有Kubernetes集群,并升级了内置Kubernetes和Docker版本 ​ 基于过去版本在生产使用中积累的经验和问题,我们将 Rainbond 应用运行时进行了完全重构。此次重构升级了Kubernetes和Docker的版本,并引入了Kubernetes的Deployment、Secret、Ingress、ConfigMap等资源,同时可支持 对接已有Kubernetes集群 。在应用存储方面,运行时提供了分布式存储和本地存储的Provider, 在网络方面增加了对Flannel的支持,在服务调度方面增加了更多的调度选择机制。服务日志方面,增加了计算节点日志收集器完成日志收集和与第三方日志系统对接。 ​