责任链模式(职责链模式)详解

在现实生活中,一个事件需要经过多个对象处理是很常见的场景。例如,采购审批流程、请假流程等。公司员工请假,可批假的领导有部门负责人、副总经理、总经理等,但每个领导能批准的天数不同,员工必须根据需要请假的天数去找不同的领导签名,也就是说员工必须记住每个领导的姓名、电话和地址等信息,这无疑增加了难度。

在计算机软硬件中也有相关例子,如总线网中数据报传送,每台计算机根据目标地址是否同自己的地址相同来决定是否接收;还有异常处理中,处理程序根据异常的类型决定自己是否处理该异常;还有 Struts2 的拦截器、JSP 和 Servlet 的 Filter 等,所有这些,都可以考虑使用责任链模式来实现。

继续阅读责任链模式(职责链模式)详解

划分微服务边界的5个特征

你的微服务是否太小?或者太紧密耦合?本设计指南可以提供帮助。

设计微服务往往更像是一门艺术而不是科学。本文提出五个建议:

1.它不会与其他服务共享数据库表

2.它拥有最少量的数据库表

3.它设计为有状态的或无状态的

4.其数据可用性需求

5.这是真相的唯一来源

继续阅读划分微服务边界的5个特征

当我们在说微服务治理的时候究竟在说什么

自从微服务架构开始变得火热以后,越来越多的系统被拆解成了很多个细胞一样的微服务。设想一下,如果你的系统有100个微服务构成,要对这100个微服务进行管理,这绝对是一个不小的挑战。所以紧接着又出现了一堆让人头晕眼花的概念:服务注册发现,请求链路追踪,服务熔断,服务限流,服务管控配置,服务预警。还有就是一抓一大把的开源工具:Eurake,Zuul,Ribbon,hystrix,zipkin,dubbo,Sleuth,Elastic Search,grafna,Promethues。

继续阅读当我们在说微服务治理的时候究竟在说什么

转:我与CMDB不得不说的故事

每次读到配置管理相关的书籍时,我总在想:“这些定义很精准,流程也很完整,但这不是真正的难题。”对于一个配置管理者来说,真正的难题不是绘制“庞大而精美”的数据模型,不是设计“全天候、无死角”的管控流程,而是如何促进数据的消费,并在消费过程中持续的改善数据质量。

继续阅读转:我与CMDB不得不说的故事