I do things.
公司使用到了Kafka,想借助一套可视化的工具更好地管理Kafka。笔者将目光瞄准了Kafka Manager。 安装Kafka 一、下载Kafka 前往http://kafka.apache.org/downloads ,根据自己的需要,下载合适版本的Kafka,笔者使用的版本是kafka_2.12-0.10.2.1。
工作原因,笔者需实现多个Git仓库数据的同步。 前面我们已经讲过使用GitLab Mirrors同步多个Git仓库( http://www.itmuch.com/work/git-repo-sync-with-gitlab-mirrors/ ),不过毕竟是定时任务,有一定的延时。
笔者需实现多个Git仓库数据的同步,大致是从一个远程的Git仓库同步代码到公司内部的GitLab仓库。经过调研,笔者将目光瞄准开源的GitLab Mirrors。
在我们的项目中,各服务整合spring-cloud-netflix-hystrix-stream ,当开启断路器的API被调用时,就会产生监控数据,这些监控数据会以MQ消息传递到RabbitMQ/Kafka中,Turbine整合spring-cloud-starter-turbine-stream ,消费MQ消息,并聚合各个服务的监控数据。
本文我们来探讨如何自定义微服务的Intance ID。Instance ID用于唯一标识注册到Eureka Server上的微服务实例。 我们可在Eureka Server的首页直观地看到各个微服务的Instance ID。
大致是这样的场景:有两个仓库,一个Git仓库,一个SVN仓库,都是非空的。现在要把SVN仓库中的内容合入Git仓库中,并保留提交记录。听起来有点奇怪,不过现实中的问题总是千奇百怪加变态。
下面咱们详细讨论实现跨域的步骤。跨域的玩法有很多,例如服务器端设置、浏览器端设置、Jsonp等等。本文只描述具体组件的具体做法,不谈论茴香豆的茴字有几种写法。
近期挺多朋友问到Zuul如何高可用,这里详细探讨一下。 Zuul的高可用非常关键,因为外部请求到后端微服务的流量都会经过Zuul。故而在生产环境中,我们一般都需要部署高可用的Zuul以避免单点故障。
本文是对Spring Boot、Dubbo项目进行Mock测试的总结与踩坑实录。 搜索了一圈,居然没发现类似的文章,莫非用Dubbo的朋友们都不Mock测试,或者有其他的办法测试吗? 简单总结了一下,希望对大家能有一定参考意义。
一、背景 假设有一个遗留的Dubbo系统,现在想改用Spring Cloud。 由于遗留Dubbo系统比较庞大,短期之内无法完成技术栈的迁移。因此需要“分步走”,即:初期实现两者共存,后期逐步绞杀Dubbo应用,最终实现技术栈的统一。
本篇有一定的学习曲线,建议先花一点时间了解一下前置知识: Spring Security:http://docs.spring.io/spring-security/site/docs/4.
本章我们来讨论如何在CentOS 7上安装Docker。Docker必须安装在CentOS7 64位机器上。如果您的系统是CentOS 6.x,请升级;如果您的机器是32位系统,请更换。
近日,Docker发布了Docker 17.03。进入Docker 17时代后,Docker分成了两个版本:Docker EE和Docker CE,即:企业版(EE)和社区版(CE)。
最近在筹备Docker系列课程,其中涉及到在CentOS 7中安装Nginx。 然而,当使用以下命令安装Nginx时,发现无法安装成功。 yum install -y nginx 需要做一点处理。
Spring Cloud默认为Zuul编写并启用了一些过滤器,这些过滤器有什么作用呢?我们不妨按照@EnableZuulServer、@EnableZuulProxy两个注解进行展开,相信大家对这两个注解都不陌生(至少都见过吧)。
阅读本文,您将了解: Zuul过滤器类型与请求生命周期 如何编写Zuul过滤器 如何禁用Zuul过滤器 Spring Cloud为Zuul编写的过滤器及其功能。
在项目迭代的过程中,不可避免需要”上线“。上线对应着部署,或者重新部署;部署对应着修改;修改则意味着风险。 目前有很多用于部署的技术,有的简单,有的复杂;有的得停机,有的不需要停机即可完成部署。
不才写了本使用Spring Cloud玩转微服务架构的书,书名是《Spring Cloud与Docker微服务架构实战》 - 周立,已于2017-01-12交稿。
我们知道,Spring Cloud是个工具集,整合了各种组件。有的组件Spring Cloud是拿来主义,有的组件Spring Cloud又进行了一些增强(例如Feign)。
本文我们来探讨Eureka的自我保护模式。自我保护模式是Eureka的重要特性。进入自我保护模式最直观的体现,是Eureka Server首页输出的警告,如图4-10所示。
不才写了本Spring Cloud微服务相关的书,书名是《Spring Cloud与Docker微服务实战》,已于2017-01-12交稿。 从书名来看,是本凑热闹的书,什么火写什么,其实是对现阶段工作的总结,希望对大家有帮助。
个人认为,如果在公司的野蛮生长阶段,一些基础类库不做约束,很可能“埋坑”,形成技术债务,最终为此付出代价。本文讲解一个最简的日志打印规范。 事实上,日志打印规范互联网上已有很多,但大多比较冗长(记不住),也不太契合我们团队(关注点不契合)。
前文我们讨论了使用/refresh 端点手动刷新配置,但是如果所有微服务节点的配置都需要手动去刷新的话,那必然是一个繁琐的工作,并且随着系统的不断扩张,会变得越来越难以维护。
本节我们来探讨如何使用Feign构造多参数的请求。笔者以GET以及POST方法的请求为例进行讲解,其他方法(例如DELETE、PUT等)的请求原理相通,读者可自行研究。
我们在Git仓库中存储的都是明文,但在很多场景下,某些敏感的配置内容(例如数据库账号、密码),应当被加密存储以提高安全性。Config Server为配置内容的加密与解密提供了支持。
阅读本文你将了解 微服务注册到Eureka Server上的粗粒度过程 eureka.instance.prefer-ip-address = true 时,发生的一些事 深度理解eureka.instance.ip-address 和eureka.instance.prefer-ip-address = true 。
阅读本文你将了解 微服务注册到Eureka Server上的粗粒度过程 为什么appname是大写。 appName的配置:spring.application.name与eureka.instance.appname,及它们的优先级。
在《4.7 Eureka Server的高可用》中,我们构建了一个双节点的Eureka Server集群,本节我们使用Compose来编排这个Eureka Server集群。
如果同一微服务的多个实例使用的端口相同,当配置修改时,使用Spring Cloud Bus不会刷新全部实例的配置。此时需要配置各个实例的spring.application.index为不同的值。
考虑到log4j很久不更新、性能相对弱,以及一些项目本身的原因,经过较为谨慎的考虑,决定改用logback。迁移还是比较顺利的,花了1个小时左右就搞定了,做个简单的笔记。
本篇很LOW。做个记录而已。 这两天遇到了一个奇葩的问题:应用启动不起来,并且不报错。没有任何征兆与线索。经过排查,是log4j的问题,log4j配置如下。
Spring Cloud中,Feign和Ribbon在整合了Hystrix后,可能会出现首次调用失败的问题,要如何解决该问题呢? 造成该问题的原因 Hystrix默认的超时时间是1秒,如果超过这个时间尚未响应,将会进入fallback代码。
Spring Cloud中,Feign常见问题的总结。 FeignClient接口,不能使用@GettingMapping 之类的组合注解 代码示例: @FeignClient("microservice-provider-user") public ...
在Spring Cloud实现一个Eureka Server是一件非常简单的事情。下面我们来写一个Eureka Server DEMO。 编码 (1) 首先创建一个Maven工程,添加内容如下: 4.
Spring Cloud中,Eureka常见问题总结。 指定Eureka的Environment eureka.environment: 指定环境 参考文档:https://github.
Eureka是Netflix开发的服务发现组件,本身是一个基于REST的服务。Spring Cloud将它集成在其子项目spring-cloud-netflix中,以实现Spring Cloud的服务发现功能。
本篇我们来探讨如何使用Feign构造多参数的请求。我们分以下两种场景讨论。 GET请求多参数的URL 假设我们请求的URL包含多个参数,例如http://microservice-provider-user/get?id=1&username=张三 ,...