自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 资源 (1)
  • 收藏
  • 关注

原创 Rainbond 部署自动初始化Schema的数据库

我们使用容器的方式部署数据库组件,特别是企业有大量的项目开发业务的,部署的开发、测试数据库组件较多时。经常会遇到以下问题:业务需要使用数据库,但部署完数据库后,需要在数据库中执行创建schema的操作或者一些初始化数据的创建。开发测试多套部署环境,需要多次重复1的步骤。项目比较多,时间久了项目需要的数据库Schema不清楚。项目交付时数据库Schema管理混乱。现在如果是使用Go等语言研发的业务系统,都具备了ORM层自动初始化和更新Schema的能力,如果是这样本文对你无用。但目前大多数其他开

2020-11-19 20:57:51 15

原创 Rainbond 中Vue、React项目如何调用后端接口

Rainbond中怎么部署 Vue 、React 项目请参考 Rainbond部署Vue、React项目前言以往我们在部署前端项目后,调用后端接口有以下几种场景:后端接口没有统一,比较分散,例如:/system/user,/tool/gen 。通常我们会在项目的全局配置文件.env.production中直接写入后端ip,例如:ENV = 'production'VUE_APP_BASE_API = '192.168.6.66:8080'这样写虽可以正常访问,但会导致产生跨域问题。.

2020-11-18 17:57:45 59

原创 Rainbond 持续部署Vue、React前端项目

前言:以往我们在部署 Vue、React 前端项目有几种方法:项目打包好之后生成dist目录,将其放入nginx中,并进行相应的访问配置。将项目打包好放入tomcat中。将项目打包好的dist目录中的static和index.html文件放入springboot项目的resources目录下直接运行一个前端server,类似本地开发那种。在Rainbond中部署Vue React 项目同样使用了第一种方法,根据源码自动build,打包完成后自动把静态文件放入nginx中。在Rainbo

2020-11-18 17:28:58 24

原创 Rainbond ServiceMesh架构组件端口冲突处理方式

在我们部署具有多个服务的分布式业务时,必须要考虑的一点就是如何处理服务之间的通信问题,那么当我们将业务部署到Rainbond 上时,又是如何去处理的呢?Rainbond 开箱即用的ServiceMesh架构默认通过 Sidecar 代理的方式,为我们透明的解决了分布式场景下组件间的通讯问题。例如A组件需要访问B组件,可以让A组件依赖B组件,这样A组件启动时会同时以插件方式启动一个 envoy 服务,而 envoy 服务会将B组件的对内端口映射到A组件 Pod 网络空间的本地回环地址127.0.0.1的相

2020-11-18 17:11:54 26

原创 Rainbond 中用 Dockerfile 便捷构建运行应用

Rainbond平台支持直接通过Dockerfile**构建并运行镜像,操作流程简单,方便进行持续迭代。操作流程分为以下几步:在Github上创建Dockerfile项目,Demo项目Dockerfile内容ARG VERSION=1.15.0FROM nginx:${VERSION}-alpineCOPY index.html /usr/share/nginx/html/VOLUME /dataEXPOSE 80通过Rainbond平台的源码构建功能选择项目进行构建

2020-11-17 13:20:54 11

原创 在Rainbond使用StatefulSet部署应用

对于kubernetes老玩家而言,StatefulSet这种资源类型并不陌生。对于很多有状态服务而言,都可以使用 StatefulSet 这种资源类型来部署。那么问题来了:挖掘机技术哪家强?额,不对。如何在 Rainbond 使用 StatefulSet 资源类型来部署服务呢?组件部署类型通过在服务组件的其他设置中,更改 组件部署类型 即可选择使用 StatefulSet 资源类型部署服务,操作之前要注意以下几点:组件需要处于关闭的状态;对于有持久化存储的服务组件,切换组件部署类型会导致存储挂

2020-11-17 13:06:20 12

原创 基于Rainbond 对微服务进行请求速率限制

Rainbond 默认支持基于 envoy 的全局速率限制。在 Rainbond 默认提供的综合网络治理插件中呈现。本文我们将一个用例呈现 Rainbond 中全局速率限制的使用方式。前置条件Rainbond平台已部署完成。在Rainbond中部署可访问的 Demo 业务。为此组件开通综合网络治理插件。参考视频 Rainbond 速率限制设置参考视频 操作流程1.部署全局

2020-05-20 16:53:50 48

原创 Rancher 部署开源Rainbond 云原生应用管理平台

本文适用于正在使用 Rancher 或对 Rancher 有所了解的用户Rancher,Kubernetes 生态中成功的开源项目,其定位 “Run Kubernetes Everywhere”。Rancher 可以帮助开发者快速搭建云、边、端多维度的 Kubernetes 集群,并提供多个集群资源 UI 化的管理体系。Rainbond 定位“企业应用全生命周期管理“,类似于 Rancher 的定位说法应该是“Run Application Everywhere”。Rainbond 的开源用户一直一.

2020-05-18 14:23:40 200

原创 Kubernetes Operator 技术下沉,体验上浮

讲在前面今天谈谈Kubernetes生态中目前非常活跃的一个概念“Operator”。是的,我认为它是一个概念,一个设计模式。它并不是一个开发框架,一种资源或者说一个项目,这个概念由CoreOS提出。Operator的概念是从Kubernetes的CRD(Custom Resource Definition)自定义资源衍生而来。Kubernetes 的API设计是跨时代的,这种面向资源模型的声明...

2020-03-06 17:43:35 457

原创 开源社区Discourse在Rainbond上的云原生部署

开源社区Discourse在Rainbond上的部署文章目录开源社区Discourse在Rainbond上的部署概述基于应用市场快速安装Discourse应用如何制作获取镜像redis 部署postgresql部署部署Discourse_web建立依赖访问一些踩过的坑邮件配置数据恢复概述Discourse 是一个完全开源的论坛平台。具有丰富的插件库与主题库,适用于开源社区的构建。Rainbo...

2020-01-03 10:49:41 87

原创 API Gateway Kong在Rainbond上的云原生部署

API Gateway Kong在Rainbond上的部署原文发表在 Rainbond社区文章目录API Gateway Kong在Rainbond上的部署什么是Kong从应用市场安装快速安装注意事项配置Kong环境变量注入Nginx配置注入单个Nginx配置通过注入的Nginx指令包含文件Kong应用怎么制作数据库自动初始化部署Kong部署Konga发布应用什么是KongKong是一个...

2020-01-02 09:38:59 87

原创 Rainbond 内置 ServiceMesh微服务架构概述

ServiceMesh一般的字面解释是“服务网格”,作为时下最流行的分布式系统架构微服务的动态链接器,处于服务到服务的通信的专用基础设施层,该层独立于应用程序为服务之间的通信提供轻量级的可靠传递。如果简单的描述的话,可以将它比作是应用程序或者说微服务间的 TCP/IP,负责服务之间的网络调用、限流、熔断和监控,同样使用 ServiceMesh 也就无须关系服务之间的那些原来是通过应用程序或者其他...

2019-04-02 09:29:18 318

原创 Rainbond 部署 SpringCloud架构应用实践

示例项目详情本文档以Pig 快速开发框架为例,演示如何在Rainbond上部署一套完整的Spring Cloud项目。Pig Microservice Architecture V2.1.0:基于 Spring Cloud Finchley 、Spring Security OAuth2 的RBAC权限管理系统基于数据驱动视图的理念封装 Element-ui,即使没有 vue 的使用经验...

2019-04-02 09:26:00 521

原创 基于Rainbond 10分钟部署生产可用的Gitlab

Gitlab简介GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。同时Gitlab集成了一系列的CI功能。不得不说,Gitlab在企业中是的使用率非常高。Rainbond非常推荐用户使用Git代码仓库管理代码,从而获取更好的源代码管理...

2019-03-20 00:12:23 473

原创 kubernetes 1.6发布,新特性一览

主要更新和发布的主题Kubernetes now supports up to 5,000 nodes via etcd v3, which is enabled by default. Kubernetes支持5000+节点通过etcd v3,并默认使用v3Role-based access control (RBAC) has graduated to beta, and defines

2017-03-29 17:59:37 591

原创 基于网络抓包实现kubernetes中微服务的应用级监控

微服务是什么?此话题不是本文重点,如你还不知道。请谷歌一波,会有遍地的解释。引用下图说明下微服务可能呈现的形态: 微服务监控的挑战监控的目的是为了让集群中所有的服务组件,不管是HTTP服务,数据库服务,还是中间件服务。都能够健康稳定得运行,能发现问题,遇到问题能找到原因。 在过去,监控工具侧重于基础设施或单一软件组件以及衡量运营健康。这些工具在实现这一目标方面只取得了一定的成功,但是对于单一的,

2017-01-10 09:35:49 1420

原创 docker最新代码源码编译

前言docker的编译环境非常复杂,但是docker是干嘛的?环境怎能成为问题,于是docker官方提供了docker编译环境dockerfile。于是docker编译就非常简单了。 获取源码拉取最新的docker源码git clone https://github.com/docker/docker.git 由于docker是个大项目,那当然源码文件众多,你一般的网络很有可能就中途出错了。如果

2016-12-23 20:47:46 7629 3

原创 golang map数据结构不能并发读写问题

fatal error: concurrent map writes以上这个错误你遇到过么?问题由来今天,我在编码并发测试过程中遇到一个问题直接致死整个进程。我们知道golang 中只要有一个goroutine发生panic整个进程都挂了。当时一脸萌比。开始检查堆栈信息。问题分析起初我查阅了相关问题解决方案。大致就是多线程操作map数据结构一定要加锁。否则肯定要出现这个错误。我查看我的代码,我认为我

2016-11-17 21:51:44 8534

原创 基于prometheus监控k8s集群

本文建立在你已经会安装prometheus服务的基础之上,如果你还不会安装,请参考:prometheus多维度监控容器如果你还没有安装库k8s集群,情参考: 从零开始搭建基于calico的kubenetes前言kubernetes显然已成为各大公司亲睐的容器编排工具,各种私有云公有云平台基于它构建,那么,我们怎么监控集群中的所有容器呢?目前有三套方案:heapster+influxDBheapst

2016-11-10 18:56:23 13202 1

原创 使用nginx实现对docker swarm服务的代理负载

1. 以docker swarm调度的服务的存在方式我们这里假设需要部署三个相互网络隔离的博客服务blog1,blog2,blog3(本文假设你已经初始化好了docker swarm环境),我们首先创建三个网络分别供以上三个服务使用:# docker network create --driver overlay blog_network1# docker network create --dri

2016-10-20 22:58:16 5046 1

原创 分析go slice的几个基本问题

关于golang的slice我认为是go几个特点之一,它充分得改善了数组的几个局限地方,本文简单分析slice使用过程中你会遇到的几个问题:我们看以下例子:sliceA:=[]int{1,2,3}sliceB:=sliceA[0:2]sliceA[0]=4fmt.Println(sliceB)//此处输出什么?以上代码说明,slice的赋值操作是引用类型(地址拷贝)更改原slice后自己会受

2016-10-13 23:00:21 2479

原创 GoDemo:给定数字字符串求可能的ip组合,数字顺序不变

package mainimport ( "fmt" "os" "strconv")func getip(source string) (ips []string) { length := len(source) if length > 12 || length < 4 { return nil } if length == 4

2016-10-08 20:13:44 2249

原创 基于Prometheus做多维度的容器监控

什么是prometheus?prometheus从官方介绍来说,他是一个开源的系统监控和报警工具,最初由SoundCloud推出。自2012成立以来,许多公司和组织都采用了prometheus,项目有一个非常活跃的开发者和用户社区。它现在是一个独立的开源项目,并独立于任何公司。 它具有以下特性:1. 多维度数据模型(由键/值对确定的时间序列数据模型)2. 具有一个灵活的查询语言来利用这些维度3

2016-10-01 00:18:57 15365

原创 debian基于docker部署etcd集群

本文前提条件是你在每台使用机器中已经装好了docker环境机器环境变量设置每台机器设置以下环境变量export ETCD_VERSION=v3.1.0-alpha.1export TOKEN=my-etcd-tokenexport CLUSTER_STATE=newexport NAME_1=etcd-node-0export NAME_2=etcd-node-1export NAME_3

2016-09-30 13:17:13 1427

翻译 kubernetes1.4.1安装教程

kubernetes 1.4.1 安装教程 docker k8s

2016-09-27 18:51:30 5820

原创 struts与urlwriter实现javaweb伪静态或者url隐藏

开题:相信玩过apache php的朋友都知道php怎么实现伪静态页面的访问,那么问题来了,JAVAWEB应用怎么实现相同的功能呢?什么是伪静态?举个例子,当你访问http://www.yxweb.cc/demo/5.html 这个地址的时候,如果服务端使用的伪静态,你访问的页面就不一定是demo目录下的5.html文件了哦。它可能访问的实际地址是http://www.yxweb.cc/demo!

2015-05-16 22:36:38 4233

原创 springjiehe结合 Quartz自带任务作业实现XML配置

class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">

2015-05-15 22:48:40 326

原创 jquery 判断radio 和checkbox是否选中并获取值

实例单选框-----》 A B C D 注意,单选框需要name值相同,才能实现单选哦。获值var question1 = $('input:radio[name="radio"]:checked').val();判断if(question1 == null){ return false;} else{ alert(question1);

2015-05-15 19:05:25 324

转载 tomcat源码阅读步骤十二

tomcat源码阅读12该包包含了在web应用程序部署脚本(web.xml)中的复杂Java数据结构。Class SummaryApplicationParameter表示服务器端配置的上下文初始化参数,而不是应用程序的部署脚本ContextEjb表示web应用程序的EJB自由,在部署脚本中使用表示ContextE

2015-05-07 10:43:41 461

转载 tomcat源码阅读步骤九

tomcat源码阅读9org.apache.catalina.cluster.utilInterface SummaryIDynamicProperty IQueue队列接口Class SummaryFastQueueA fast queue that remover thread

2015-05-07 10:41:25 309

转载 tomcat源码阅读步骤十一

tomcat源码阅读11org.apache.catalina.core 包,这个包是Tomcat的核心部分。源代码阅读的时候也尽量从这部分开始ApplicationContextServletContext 的标准实现,用来表示一个web应用程序的执行环境ApplicationContextFacade用于“伪装”ApplicationCo

2015-05-07 10:41:09 215

转载 tomcat源码阅读步骤八

tomcat源码阅读8org.apache.catalina.cluster.session 包。这块文档太差劲了吧,开源项目的文档啊,哎!没有把英文去掉,读者尽量看吧,我也没搞明白很多!!Interface SummarySessionMessage该类在Tomcat集群节点中有Session对象创建修改或者终结的时候使用

2015-05-07 10:40:48 281

转载 tomcat源码阅读步骤十

tomcat源码阅读10org.apache.catalina.connectorClass SummaryConnectorImplementation of a Coyote connector for Tomcat 5.x.tomcat5.x中Coyote 连接器的实现ConstantsStatic constants

2015-05-07 10:40:10 267

转载 tomcat源码阅读步骤七

tomcat源码阅读7org.apache.catalina.cluster.io 包Interface SummaryListenCallbackThe listen callback interface is used by the replication system when data has been received.该接口在相应系统接受

2015-05-07 10:38:12 295

转载 tomcat源码阅读步骤六

tomcat源码阅读6org.apache.catalina.cluster.deploy 包Interface SummaryFileChangeListenerdoc中无内容Class SummaryFarmWarDeployer该类用于在集群内部署以及删除WAR形式的web应用程序Fi

2015-05-07 10:37:01 212

转载 tomcat源码阅读步骤三

tomcat源码阅读3org.apache.catalina.ant.jmx 包该包包括了在Ant上JMX的任务的实现,可用于与远程JMX RMI的JSR160适配器交互,设置获取属性,调用Tomcat内部运行的MBean和查询MBeanorg.apache.catalina.authenticator 包该包提供了各种验证的实现((BASIC, DIGEST, and F

2015-05-07 10:36:27 350

转载 tomcat源码阅读步骤五

tomcat源码阅读5org.apache.catalina.cluster.authenticator包ClusterSingleSignOn每个Valve支持用户单点登录在集群节点上,用户在web应用程序上经过验证的安全标志可以在同一个安全域的其它集群节点上使用ClusterSingleSignOnListener接受SingleSign

2015-05-07 10:36:21 288

转载 tomcat源码阅读步骤二

tomcat源码阅读2包org.apache.catalina.ant 这个软件包包含了在Ant上一系列任务的实现设置,可以用来从Tomcat的Web应用程序的运行实例进行程序部署,取消部署,列表,重新加载,启动和停止。 AbstractCatalinaTaskAnt任务的交互与动态部署和取消部署应用程序管理器的Web应用程序抽象基类。Bas

2015-05-07 10:35:21 327

转载 tomcat源码阅读步骤四

tomcat源码阅读4org.apache.catalina.cluster 包该包包含集群相关的代码(Cluster),集群的基类是实现了org.apache.catalina.Cluster并实现了集群协议的类。 仅有的集群协议是基于JGCluster.java 类的JavaGroups。CatalinaClusterA CatalinaCluster inte

2015-05-07 10:35:17 322

转载 tomcat 源码阅读步骤一

tomcat源码阅读1org.apache.catalina 包包内接口主要有:AuthenticatorAuthenticator 是一个组件(通常是一个阀门或容器),它提供了这类服务的身份验证Cluster一个Cluster 像一个当地客户服务器集群那样工作,它的实现需要支持集群内的多种交流方式Contained它是一个解耦接

2015-05-07 10:32:29 527

spring4mvc+mybatis3+freemarker+oracle完整框架demo

完整的springmvc4 +mybatis +freemarker +oracle源码框架配置demo. 拿上就可以导入myeclipse使用。直接写程序。方便,参考

2015-07-11

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除