Fork me on GitHub
解决Turbine Stream无法注册到Eureka Server上的问题

解决Turbine Stream无法注册到Eureka Server上的问题

在我们的项目中,各服务整合spring-cloud-netflix-hystrix-stream ,当开启断路器的API被调用时,就会产生监控数据,这些监控数据会以MQ消息传递到RabbitMQ/Kafka中,Turbine整合spring-cloud-starter-turbine-stream ,消费MQ消息,并聚合各个服务的监控数据。架构如图所示: 代码非常简单,你懂的,就不贴了。至此,各服务可以正常产生Hystrix监控数据;Turbine也可以正常聚合各服...

如何自定义微服务的Instance ID

如何自定义微服务的Instance ID

本文我们来探讨如何自定义微服务的Intance ID。Instance ID用于唯一标识注册到Eureka Server上的微服务实例。 我们可在Eureka Server的首页直观地看到各个微服务的Instance ID。例如,图11-1中的itmuch:microservice-provider-user:8000 就是Intance ID。 图11-1 Eureka Server上的微服务列表 在Spring Cloud中,服务的Instance ID的默认值...

合并两个不相关的Git仓库

大致是这样的场景:有两个仓库,一个Git仓库,一个SVN仓库,都是非空的。现在要把SVN仓库中的内容合入Git仓库中,并保留提交记录。听起来有点奇怪,不过现实中的问题总是千奇百怪加变态。既然遇到了,总得想办法解决。花了将近1个小时,简单总结一下。 按照问题的描述,问题可以演变成两部分: 将SVN仓库转换成Git仓库,这一步很简单。百度说:上我吧,我能给你100页的答案;谷歌说:上我吧,我能给你1000页的答案(Sounds weird)。简单来说,就是使用git s...

跨域访问支持(Spring Boot、Nginx、浏览器)

最近家中事多,好久没有写点啥了。一时间竟然不知从何说起。先说下最近家里发生的事情吧: 老爸肺气肿住院; 老妈甲状腺囊肿 儿子喘息性支气管炎住院 我莫名其妙尿脓。不要误会,我没有大保健。有空了考虑将去医院检查的经历写出来,绝对狗血、精彩!! 家里的事情竟然能按条标记,真是可悲。顾影自怜一下。好,言归正传。最近出于某些原因,笔者需要实现跨域请求。 下面咱们详细讨论实现跨域的步骤。跨域的玩法有很多,例如服务器端设置、浏览器端设置、Jsonp等等。本文只描述具体组件的具体做...

Zuul的高可用

Zuul的高可用

近期挺多朋友问到Zuul如何高可用,这里详细探讨一下。 Zuul的高可用非常关键,因为外部请求到后端微服务的流量都会经过Zuul。故而在生产环境中,我们一般都需要部署高可用的Zuul以避免单点故障。 笔者分两种场景讨论Zuul的高可用。 Zuul客户端也注册到了Eureka Server上这种情况下,Zuul的高可用非常简单,只需将多个Zuul节点注册到Eureka Server上,就可实现Zuul的高可用。此时,Zuul的高可用与其他微服务的高可用没什么区别。 图...

Spring Boot、Dubbo项目Mock测试踩坑与总结

Spring Boot、Dubbo项目Mock测试踩坑与总结

本文是对Spring Boot、Dubbo项目进行Mock测试的总结与踩坑实录。 搜索了一圈,居然没发现类似的文章,莫非用Dubbo的朋友们都不Mock测试,或者有其他的办法测试吗? 简单总结了一下,希望对大家能有一定参考意义。如果有更好的测试方法,请联系我的邮箱eacdy0000@126.com ,帮忙告知一下。 背景手上有个整合了Dubbo的Spring Boot应用,在应用中需要消费其他服务的API。由于我依赖的服务并不由我所在的项目组维护(对方可能接口中途会发...

Spring Cloud与Dubbo共存方案总结

一、背景假设有一个遗留的Dubbo系统,现在想改用Spring Cloud。 由于遗留Dubbo系统比较庞大,短期之内无法完成技术栈的迁移。因此需要“分步走”,即:初期实现两者共存,后期逐步绞杀Dubbo应用,最终实现技术栈的统一。 p.s. 这里并没有贬低Dubbo的意思,仅是按照该场景讨论。 二、头脑风暴架构迁移、技术栈更换、项目重构时的第一步往往不是“改造”,而是“停止修改”。基于这个原则,个人不太倾向于去立即大幅重构Dubbo应用原先的代码。原因有二:首先是原则...

Spring Cloud Security系列教程一:入门

Spring Cloud Security系列教程一:入门

本篇有一定的学习曲线,建议先花一点时间了解一下前置知识: Spring Security:http://docs.spring.io/spring-security/site/docs/4.2.2.RELEASE/reference/htmlsingle/ OAuth2(重点),参考文档:http://www.ruanyifeng.com/blog/2014/05/oauth_2_0.html Spring Security OAuth2,参考文档:http://do...

Docker 17.03系列教程(二)CentOS 7安装Docker

本章我们来讨论如何在CentOS 7上安装Docker。Docker必须安装在CentOS7 64位机器上。如果您的系统是CentOS 6.x,请升级;如果您的机器是32位系统,请更换。 卸载老版本DockerDocker老版本(例如1.13),叫做docker-engine。Docker进入17.x版本后,名称发生了变化,叫做docker-ce或者docker-ee。因此,如果有安装老版本的Docker,必须先删除老版本的Docker。 执行以下命令即可: 1sud...

Docker 17.03系列教程(一)Docker EE/Docker CE简介与版本规划

Docker 17.03系列教程(一)Docker EE/Docker CE简介与版本规划

近日,Docker发布了Docker 17.03。进入Docker 17时代后,Docker分成了两个版本:Docker EE和Docker CE,即:企业版(EE)和社区版(CE)。那么这两个版本有什么区别呢?不仅如此,Docker进入17.03后,版本命名方式跟之前完全不同,以后Docker又会有怎样的版本迭代计划呢?本文将为您一一解答。 版本区别Docker EE Docker EE由公司支持,可在经过认证的操作系统和云提供商中使用,并可运行来自Docker S...