什么事微服务
服务之间无依赖,可插拔
- 不主动(不主动提供数据/上下线不通知/不告诉你服务内容)
- 不拒绝(只要遵循接口规范,任何客户端都可以调用。应该由注册中心负责负载均衡。)
- 不负责(A调用B,如果没有调通,B不负责将失败的请求转发至另外的节点上,应该由A进行服务降级。)
例如,菜单列表服务需要提供大按钮。如果提供菜单数据的服务挂了,或者超时了,此时前端需要数据的一方进行降级,去缓存中调基本菜单(兜底数据)。
A服务调用B服务,如果调用失败,需要A服务处理。
单体应用向微服务异构平台架构演变
SpringCloud Netflix/Alibaba
流量分发指标:
TPS:动态处理用户的请求,带有事务
QPS:单纯的query,理解为纯静态请求(css,js文件等)。静态资源一般放在前端高性能服务器上,如CDN服务器,或Nginx做动静分离
如何分辨哪些是静态请求,哪些是带有事务的请求?
不连接数据库的,不进行加减乘除的,落地到本地磁盘地址的,都是静态请求。