Spring Cloud应用开发(七:使用Git存储方式实现分布式配置管理 )
1、使用Git存储实现管理;
1.1、配置Git。在Git上创建microservice-study-config目录,并在目录中添加开发,预发布和测试的配置文件;
1.2、修改服务端配置文件。将microservice-config-server工程的配置文件中本地文件存储方式的配置删除(或注释),并添加git的配置信息;
1.3、修改客户端配置文件。在microservice-config-client工程的配置文件中添加属性label,并将其属性值设置为master(label属性表示Git的分支,其属性默认值为master);
1.4、启动工程,测试应用。分别启动Spring Cloud Config的服务端和客户端程序,访问地址http://localhost:8801/clientParam看能否获取到Git中的配置信息;
2、手动更新运行;
2.1、在客户端pom.xml中添加依赖spring-boot-starter-actuator,该依赖可以监控程序在运行时的状态;
2.2、在启动类上添加@RefreshScope注解,开启refresh机制;
2.3、在配置文件中讲安全认证信息的enable属性设置为false;
2.4、执行完上述3步后,下面来检测应用是否可以实现更新运行中的配置文件。启动应用并访问http://localhost:8801/clientParam,此时浏览器的显示效果如图所示,此时修改Git中的配置文件application-prod.yml,将其内容clientParam:git-prod-1.0, 修改为clientParam:git-prod-3.0后,再次通过浏览器访问,上述地址,会发现浏览器的内容并没有变化,但通过地址http://localhost:8888/application/prod访问时,会发现服务器端已经获取到了Git中的更新配置信息;
2.5、使用POST请求访问地址http://localhost:8801/refresh后,将看到请求的状态等信息;
知识点一:Spring Cloud的概念。
Spring Cloud是基于SpringBoot 提供的一套微服务解决方案,包括服务注册与发现,配置中心,全链路监控,服务网关,负载均衡,熔断器等组件。
Spring Cloud利用SpringBoot的开发便利性巧妙的简化了分布式系统基础设施的开发,Spring Cloud为开发人员提供了快速构建分布式系统的一些工具,包括配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、决策竞选、分布式会话等。它们都可以用SpringBoot的开发风格做到一键启动和部署。
知识点二:Spring Cloud 的特性及特点。
特性:
1.分布式/版本化配置。
2.服务注册和发现。
3.路由。
4.服务和服务之间的调用。
5.负载均衡。
6.断路器。
7.分布式消息传递。
特点:
1.约定优于配置。
2.开箱即用、快速启动。
3.适用于各种环境。
4.轻量级的组件。
5.组件支持丰富,功能齐全。
知识点三:Eureka的服务发现机制
Eureka是Netflix开发的服务发现框架,SpringCloud将它集成在自己的子项目spring-cloud-netflix中,实现SpringCloud的服务发现功能。
为什么要使用Eureka,因为在一个完整的系统架构中,任何单点的服务都不能保证不会中断,因此我们需要服务发现机制,在某个节点中断后,其它的节点能够继续提供服务,从而保证整个系统是高可用的。
服务发现有两种模式:一种是客户端发现模式,一种是服务端发现模式。Erueka采用的是客户端发现模式。
客户端服务发现的架构如图:
Eureka Server会提供服务注册服务,各个服务节点启动后,会在Eureka Server中进行注册,这样Eureka Server中就有了所有服务节点的信息,并且Eureka有监控页面,可以在页面中直观的看到所有注册的服务的情况。同时Eureka有心跳机制,当某个节点服务在规定时间内没有发送心跳信号时,Eureka会从服务注册表中把这个服务节点移除。Eureka还提供了客户端缓存的机制,即使所有的Eureka Server都挂掉,客户端仍可以利用缓存中的信息调用服务节点的服务。Eureka一般配合Ribbon进行使用,Ribbon提供了客户端负载均衡的功能,Ribbon利用从Eureka中读取到的服务信息,在调用服务节点提供的服务时,会合理的进行负载。
Eureka通过心跳检测、健康检查、客户端缓存等机制,保证了系统具有高可用和灵活性。
相关文章:

IOS 自定义相机, 使用 AVFoundation(附实现部分腾讯水印相机功能 demo)
原文链接:http://www.jianshu.com/p/c64bf543f16a这是一款使用 AVFoundation 自定义的相机,与系统原生相机有一样的外观但比系统的相机更好、更符合实际的开发需要、可以自己修改 UI、实现拍照、取消、闪光灯控制、前后摄像头控制、聚焦、放大缩小、拍照…

如何成为一个好的测试工程师(转载,大意)
对于测试功能是的两个不同观点:软实力和技术能力。 个人觉得技术能力80%可以被大众掌握,但是软实力是需要花费很多时间去培养和塑造的。一下几点也是能够衡量个人技能的一些标准: 1,沟通技能-口头和书面能力 与人的第一印象&#…

ubuntu下7z文件的解压方法
apt-get install p7zip-full 控制台会打出以下信息: 正在读取软件包列表... 完成正在分析软件包的依赖关系树 正在读取状态信息... 完成 建议安装的软件包: p7zip-rar下列【新】软件包将被安装: p7zip-full升级了 0 个软件包&…

Docker的使用(一:Docker入门程序)
1、编写Dockerfile文件; 注:创建一个空的Docker工作目录dockerspace,进而进入该目录,并创建编写dockerfile文件; 2、编写外部文件。 注:在当前目录(dockerspace)下分别创建require…
iOS OpenCV 图像灰度处理
2017-06-21 小溪彼岸 Cocoa开发者社区推荐人:wo709128079 有时候开发过程中,切图满足不了我们的需求,此时我们需要对图像进行灰度处理,例如QQ头像在线、离线等不同状态等。 可以尝试的解决方案: 第一种:让U…

【VS开发】【电子电路技术】RJ45以太网传输线研究
RJ45以太网传输线研究 最近研究远距离差分视频传输方案,理所当然想到了LVDS协议。至于选用cameralink传输线,还是选用其他方案,本人更倾向于廉价的RJ45以太网线来实现LVDS差分信号的传输。 由于RJ45网线内部为4对双绞线,至于以太网…

Wiz开发 定时器的使用与处理
这只是一些代码片段,由于Wiz开发的资料实在不多,而且内容都不够新。这里的代码主要参考Tools.Timer这个插件,但是由于内部实现的很多变化,Tools.Timer这个插件基本上已经无法使用了。定时器的注册与删除 使用定时器,是…

Docker的使用(二:Docker客户端常用指令练习)
1、列出镜像; 2、搜索镜像; 3、拉取镜像; 4、构建镜像; 4.1、在Dockerfile文件所在目录构建镜像; 4.2、在其他目录构建镜像; 4.3、查看镜像是否构建成功; 5、删除镜像; 6、创建并启…
实现简书个人中心UI效果
这两天比较闲,简单实现了一下个人中心页面scrollView嵌套的效果,也就是下边这个页面,大家感受一下先: JSDemo2.gif 首先讲下实现思路,很多人看到这个界面觉得是多个scrollView嵌套实现的,其实苹果不推荐scrollView的嵌…

PHPCMSv9首页显示分页点击下一页跳转链接出现错误,跳转到后台的解决方案
1 引用页写为 {pc:content action"lists" catid"10" order"updatetime DESC" thumb"0" num"1" page"$_GET[page]"}{loop $data $v}....{/loop}{$pages} {/pc}2 phpcms/libs/functions/global.func.php文件 get_…

顺序查找和二分查找
{线性的顺序查找}function seqSearch(sArr: array of Integer;aCount: Integer;const index: Integer):Integer;var i: Integer;begin Result : -1; for i : 0 to aCount do if sArr[i]index then begin Result : i; Break; end;end;{对数性的二分查找}f…

Docker的使用(三:Docker Hub远程镜像管理)
1、登录 Docker Hub; 2、修改镜像名称; 3、登录认证; 4、推送镜像; 5、查看验证;

啊里大鱼短信发送API
https://api.alidayu.com/doc2/apiDetail?spm0.0.0.0.SEe3dm&apiId25450 转载于:https://www.cnblogs.com/shiningrise/p/5626708.html

GCD API
(可直接复制到Xcode中查看) /***********************************************************************************************************************************##目录##知识点:GCD中有2个核心概念:任务和队列任务&#…

查看Linux系统中某目录的大小
命令:du -sh 目录名来查看,如下 du -sh /root 命令显示结果为:1.2M /root 检查是否有分区使用率use%过高,如发现某个分区空间接近用完,可以进入该分区的挂载点,用以下命令找出占用空间最多的文件…

Docker的使用(四:Docker Registry本地私有仓库搭建知识点总结)
任务一: Docker Registry本地私有仓库搭建 1、启动Docker Registry; 2、重命名镜像; 3、推送镜像; 4、浏览器查看验证; 5、文件查看验证; 任务二:Docker Registry本地私有仓库配置;…
iOS多线程全套:线程生命周期,多线程的四种解决方案,线程安全问题,GCD的使用,NSOperation的使用(上)
2017-07-08 remember17 Cocoa开发者社区目的 本文主要是分享iOS多线程的相关内容,为了更系统的讲解,将分为以下7个方面来展开描述。 多线程的基本概念 线程的状态与生命周期 多线程的四种解决方案:pthread,NSThreadÿ…
C基础知识小总结(十)
"如有不正确之处,请指出,谢谢" --Mood <指针和函数> 指针函数 函数指针 <最基本的使用函数指针> < 函数指针做为形参 > <字符指针> <字符数组> < 返回局部变量指针 > < 结构体指针> 指向结构体变…

支付方式(2)——支付宝集成及使用
每一个支付平台都有自己的加密、解密的原理;还有各种签名的原理;通过各种内容发送数据,防止恶意攻击等功能的原理。 接下来对于部署支付方式,首先要分清几个名词: 集成接入:支付宝已经集成好各种原理和函数…

Kali Linux攻防系统(一:攻防系统Kali Linux下载安装与更新)
任务一:攻防系统Kali Linux下载安装与更新 1.1、安装Kali Linux虚拟机 1.1.1、电脑硬件配置至少达到 CPU 内存 存储 >四核 >4G >20G 1.1.2、VMware Workstations版本为14及以上; 1.1.3、虚拟机系统版本选择Debian 8.X或者Ubuntu&#x…

iOS多线程全套:线程生命周期,多线程的四种解决方案,线程安全问题,GCD的使用,NSOperation的使用(下)
2017-07-08 remember17 Cocoa开发者社区7NSOperation的理解与使用 No.1:NSOperation简介 NSOperation是基于GCD之上的更高一层封装,NSOperation需要配合NSOperationQueue来实现多线程。 NSOperation实现多线程的步骤如下: 1. 创建任务&#x…

linux网卡绑定脚本
2013-08-20 15:30:51 此脚本适用于CentOS5.x和CentOS6.x。 #!/bin/bash #******************************************** # Copyright (c) Beijing DaoWoo Times Technology Co., Ltd. 2011 # # Author : Wu XuLei (wuxuleidaowoo.com) # FILE : bonding.sh …

EBS 抓trace 文件
如果要对FORM的操作做TRACE操作,可以使用 帮助->诊断->跟踪 中启用跟踪功能来实现。 但是如果要实现对并发请求的trace,需要在 系统管理员->并发->方案->定义 里找到对应的并发请求,并勾选”启用跟踪”项。然后提交这个并发请…

Kali Linux攻防系统(三:在Kali Linux系统中配置安全测试浏览器及系统清理备份)
任务三:配置安全测试浏览器及系统清理备份 3.1、汉化Firefox并安装安全插件 3.1.1、汉化Firefox浏览器,安装中文插件,并更改设置; 3.1.2、在浏览器附加组件管理器中查找“Web Developr”插件 3.1.3、安装添加附件组件 3.2、手动…

一篇文章学懂Shell脚本
Shell脚本,就是利用Shell的命令解释的功能,对一个纯文本的文件进行解析,然后执行这些功能,也可以说Shell脚本就是一系列命令的集合。 Shell可以直接使用在win/Unix/Linux上面,并且可以调用大量系统内部的功能来解释执行程序&#…

OC系列foundation Kit基础-NSDate
一.获取当前时间 1.1创建一个日期对象 NSDate *date [NSDate date];NSLog("%",date);输出结果: 2016-07-01 17:31:02.410 OCString[907:402963] 2016-07-01 09:31:02 0000 //因为时区不一样,需要格式化为本地时间 Program ended with exit…

sql server 中将由逗号“,”分割的一个字符串,转换为一个表,并应用与 in 条件...
select * from tablenmae where id in(1,2,3) 这样的语句和常用,但是如果in 后面的 1,2,3是变量怎么办呢,一般会用字符串连接的方式构造sql语句 string aa"1,2,3";string sqltxt"select * from tablename where id…

Nmap安装和扫描(一:Nmap安装和扫描基础知识点总结)
实验目的及要求 完成VMware Workstations14平台安装,会应用相关操作;完成Windows 7操作系统及Kali Linux操作系统的安装;掌握安全扫描的概念、意义及应用分析;掌握Nmap扫描器的安装;针对特定扫描目的,掌握…

最新最全的 Android 开源项目合集(一)
原文链接:https://github.com/opendigg/awesome-github-android-ui 抽屉菜单 MaterialDrawer ★7337 - 安卓抽屉效果实现方案 Side-Menu.Android ★3865 - 创意边侧菜单 FlowingDrawer ★1744 - 向右滑动流动抽屉效果 SlidingRootNav ★1338 - 仿DrawerLayout的View…

dotNet core Windows上 部署
转载于:https://www.cnblogs.com/yiyanwannian/p/5637896.html