Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说golang微服务网关 用户服务_golang开发网络防火墙,希望能够帮助你!!!。
1.亿级流量的网站框架中,网关是一个核心。
它作为接入层承载了流量的转发、负载均衡、服务限流、熔断降级等功能。
如果一个流量小的单机服务可能不需要网关,但是服务要想横向扩展支持高并发就离不开网关了。大型公司的中台服务
比如,ES、Redis要覆盖多个业务线,需要做各种的流量统计、权限校验等,其核心是围绕着网关加底层的服务架构展开的。
2.作为一个后端开发者来说掌握网关技术,重要性是不言而喻。
掌握网关是后端技术的一个分水岭,懂得设计网关才能知道架构的精妙所在,才能更加深刻认识到微服务的架构。
3.当前世面上网关大多与nginx有关,golang借助本身高并发的优势,更加适合企业级高效开发网关。
1、支持多种协议代理:tcp、http、https、websocket、grpc
2、网关可以支持多种负载均衡策略:轮询、权重轮询、hash一致性轮询
3、支持下游服务发现:主动探测、自动服务发现
4、支持横向扩容:加机器就能解决高并发
1、限流:请求QPS限制
2、熔断:错误率达到预制则服务熔断
3、降级:确保核心业务可用
4、权限认证:请求拦截