Service Mesh(服务网格)概念及Istio初体验
分布式架构发展史: 单机小型机时代: 1969年,阿帕网诞生,最初是为了军事目的,后来衍变成Internet。2000年左右,互联网在中国开始盛行起来,但是那时候网民数较少,所以多数企业服务单一,采用集中式部署的方式就能满足需求 但是这样的部署方式带来了一定的问题,一旦小型机或者数据库出现问题,会导致整个系统的故障,而且功能修改发布也不方便,所以不妨把大系统拆分成多个子系统,比如“用户”,“商品”,“论坛“等,也就是”垂直拆分“,并且每个子系统都有各自的硬件 集群化负载均衡时代: 用户量越来越大,就意味着需要更多的小型机,价格昂贵,操作维护成本高,不妨把小型机换成普通的PC机,采用多台PC机部署同一个应用的方案,但是此时就需要对这些应用做负载均衡,因为客户端不知道请求哪一个。 负载均衡可以分为硬件和软件,硬件比如F5,软件比如LVS(Linux Virtual Server),nginx,haproxy。负载均衡的思路是对外暴露一个统一的接口,然后根据用户的请求进行对应规则的转发。同时负载均衡还可以做健康检查、限流等有了负载均衡,后端的应用就可以根据流量的大小进行动态的扩缩容了,也就是“水平扩展”。 服务化时代: 此时发现在用户,商品和订单等中有重复的功能,比如登录、注册、邮件等。一旦项目大了,集群部署多了,这些重复的功能无疑是浪费资源,不妨把重复的功能抽取出来