学习.net Core有段时间了发现.net Core非常契合微服务架构,现在整理一下.net Core现在市场上微服务使用的架构。好以后回顾。
Service Fabric
微软的微服务框架基于Azure Service Fabric后开源,在Azure云上可以节省开发效率
Steeltoe OSS
基于Spring Cloud的微服务框架
网关
Ocelot
国内大神张善友张队力推
可以限流、熔断等网关功能还提供其他非网关类库。
https://threemammals.com/ocelot
分布式日志
Exceptionless
分布式日志系统
https://exceptionless.com/
服务发现
Consul
用于服务发现和健康检测等功能
微服务通讯
gRPC
grpc采用http2的通讯方式比一半的http请求速度快2倍,假如对性能有要求的建议用gRPC在最新的.net 5中已经内置了
https://grpc.io/
身份认证
identityserver
identityserver是一款身份认证库,包括单点登录,身份管理,授权和API安全。
https://identityserver.io/
监控
grafana
grafana是一款监控系统,开发API可以供开发者调用访问服务器参数和程序的参数性能达到监控的效果。
https://grafana.com/
zabbix
zabbix是一个基于界面的提供分布式系统,以及网络监视功能的企业级的开源解决方案。
https://www.zabbix.com/
虚拟化管理
Docker
Docker 是一个[开源]的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的[Windows] [Linux]机器上,也可以实现[虚拟化]。容器是完全使用[沙箱]机制,相互之间不会有任何接口。
Kubernetes
kubernetes,简称K8s。是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的一种机制。
配置中心
ratel
https://github.com/wangchengqun/ratel
Disconf.Net
https://github.com/qkbao/Disconf.Net
Apollo
携程的配置管理中心支持.net 和java 虽然github上说只支持.net framework4.0+实际已经支持.net shard2.0了
暂时比较推荐
https://github.com/ctripcorp/apollo
配置中心暂时还没有特别好的库,可以暂时观望一下。
分享一个大神搭建的微服务Git地址
https://github.com/geffzhang/NanoFabric-ServiceFabric