《微服务设计》读后感700字
微服务这个词,已经出现很久了,但是一直没有去了解一下,连最基本的概念都不清楚,然后百度了一下,了解了一些相关的概念,然后就找到了这本书,就大致看了一下,有些章节没有看,因为要看的技术很多,我目前的目标是形成自己的一个技术知识体系,所以不会在具体的技术上花费太多的时间,没有那么多精力去从前往后认真的看,有个大概的了解就差不多了,将来如果涉及到这方面的工作再去细看。
下面是微服务的一些大的原则。
第1点围绕业务概念建模,微服务,比较难的一点是划分上下文边界,也就是,这个微服务,他需要实现什么业务?另外一个,建模要围绕着业务来而不是技术。
第2点,自动化的文化。由于把单个系统拆分成多个微服务,那么多个微服务的部署以及之间的协同、测试就会比较复杂。如果每次部署发布版本,都是通过手工的方式去做这些检查的话那么效率就太低了,所以在开发微服务之前,为微服务提供配套的工具和流水线是非常有必要的。
第3点,隐藏内部实现细节。服务和服务之间通过对外接口来实现协作即可,而服务内部的实现不应该暴露出去,以防服务和服务之间发生耦合。
第4点是一切去中心化。应该使用单机单服务模式。如果把多个微服务部署在一台机器上,如果服务对于机器的环境有所依赖的话,那么,部署在一台机器上就有可能存在兼容性问题。
第5点,独立部署。你可以更改单个服务,然后把它部署到环境里,并且无需联动地部署其他的服务,这应该是常态。
第6点,隔离失败,当其中一个服务出现异常时不能造成连级异常,所以对服务要考虑超时的处理,断路器和舱壁等。
第7点是高度可观察,提供日志监控和诊断,可以方便快速的定位问题。