SpringBoot是一个可使用Java构建微服务的微框架,在了解SpringBoot之前,要知道什么是微服务?
什么是微服务
微服务有哪些好处
微服务会带来哪些挑战
一、什么是微服务
微服务给我最直观的感觉就是,将功能进行拆分,将服务粒度做小,使之可以独立承担对外服务的职责,按这个思路进行开发和交付的软件实体就要做微服务。
就像是“茶壶煮饺子”,原来我们可以将饺子煮在一个茶壶里,但是如果饺子有不同的口味,如果全放在一个里面煮的话,那如何判断哪些是你喜欢吃的,哪些是你不喜欢吃的呢?现在(微服务化之后)则基本上是在一个茶壶里煮一个饺子,而这些饺子就是服务的功能,茶壶则是将这些服务功能打包交付的服务单元。
二、微服务带来哪些好处
显然,随着系统复杂度的提升,以及对系统扩展性的要求越来越高,微服务化就是一个很好的方向。
一方面微服务可以帮助我们应对飙升的系统复杂度,另一方面,微服务可以帮助我们进行更大范围的扩展。从开发阶段项目并行开发的扩展,到交付阶段并行交付的扩展,再到相应的组织结构和组织能力的扩展,都会因微服务而受惠。
三、微服务会带来哪些挑战
微服务并非只有好处,还有一些相应的挑战。
服务“微”化之后,一个显著的问题就是,我们的服务数量增多了。
如果将软件开发和交付也作为一个生产模式来看的话,那么众多的微服务实际上就是类似于传统生产线上的产品,而在传统生产模式下,为了能够高效的生产大量的产品,通常采用的就是标准化生产,例如汽车制造业&