技术选型:自己做?我要选什么?怎么选?考虑效率、性能、成本等
为什么要进行技术选型?1.降低开发成本;2.提高研发效率
微服务架构的产生
1、巨石应用
2、SOA架构
3、微服务
SOA和微服务的思维区别:
微服务分层架构图
SpringCloud家族
数据库连接池选型:
定义:JDBC连接池,解决需要自己手动建立连接(TCP连接)、关闭连接、连接复用的问题。JDBC连接池有一个标准的接口javax.sql.DataSource,常用的JDBC连接池如下:
(Druid支持功能多,hikari最快)
消息中间件选型:
消息模式:P2P模式、订阅模式
MQ如何选型:功能不应该具备一票选择权;重视扩展性、性能;看技术栈、团队驾驭能力
远程通信框架选型:
本地可以调用的方法变成远程可以调用的方法
远程通信框架关注点、核心技术点:
常用开源远程通信框架综合对比:
网关层技术选型:
网关分类:
- 流量网关:关注稳定安全:
全局性留空、防止Web攻击、屏蔽工具扫描、黑白IP名单、证书/加解密处理
- 业务网关:提供更好的服务:
服务级别流控、服务降级与熔断、路由与负载均衡、灰度策略、服务过滤、聚合与发现、多级缓存策略
API网关部署形式:单节点网关与多点网关
比较: