Ocelot 资源汇总
前言
最近一两年.NET Core的关注度持续上升, 微服务及云原生应用开发上采用.NET Core也越来越多,Ocelot 作为.NET Core平台下一款开源的API 网关开发库越来越得到社区的认可,应用到生产中的案例也有好几百了。春节抽空整理了现有网上公开的Ocelot相关的资源,包括示例项目、扩展插件、博客文章、视频等, 供大家参考。
我把整理好的资源放在github:https://github.com/geffzhang/awesome-ocelot,欢迎大家一起来丰富这个资源,资源来自全世界,所以内容以世界语言英文方式组织。
系列文章
- Developing an Open Source API Gateway at Moonpig
- Designing and implementing API Gateways with Ocelot in .NET Core containers and microservices architectures
- Implement API Gateways with Ocelot
- Building API Gateway Using Ocelot In ASP.NET Core - Basic
- Building API Gateway Using Ocelot In ASP.NET Core - Authentication
- Building API Gateway Using Ocelot In ASP.NET Core - Logging
- Building API Gateway Using Ocelot In ASP.NET Core - Rate Limiting
- Building API Gateway Using Ocelot In ASP.NET Core - QoS (Quality of Service)
- Building API Gateway Using Ocelot In ASP.NET Core - Load Balancing
- Building API Gateway Using Ocelot In ASP.NET Core - Service Discovery (Eureka)
- Microservices with IdentityServer4 and Ocelot Fronting a .NET Core API
- Ocelot简易教程
- Ocelot API网关的实现剖析
- 基于Ocelot的API网关实现--http/https协议篇
- 基于Ocelot的API网关Relay实现--RPC篇
- .NET Core微服务实战-统一身份认证 开篇及目录索引
从系列文章中第一篇是Tom 当时所在的公司 的文章,你可以了解到Ocelot的诞生过程,这里面很多文章都是我们身边的同学写的,比如7篇文章虽是英文的,但是你知道他是NCC的项目https://github.com/dotnetcore/EasyCaching 作者黄文清同学哦,后面的几篇中文的文章更是把Ocelot如何扩展写的很清楚了。
图书
目前涉及到Ocelot的图书只有一本微软.NET团队写的《.NET 微服务:适用于容器化 .NET 应用程序的体系结构》引用的微服务应用程序 eShopOnContainers 使用的是 Ocelot,这是一个简单的轻量级 API 网关,可与微服务/容器一起部署到任意位置
会议演讲
虽然我在社区举办过多次活动介绍Ocelot, 录制有视频的是2017年我和徐玉涛在微软Summit 2017上的演讲,当时.NET Core 2.0 还是刚发布,我们当时线上跑的是1.1版本,其中也涉及到了定制Ocelot的内容都是上面的文章中有详细的文字阐述。
社区项目
- Ocelot Extensions is the project containing some extension to the popular open-source API Gateway engine Ocelot
- Ocelot.Provider.Database
- This library makes ocelot easy to integrate swagger
- SwaggerHelper 工具是在使用 Ocelot 时,为了将多个微服务的 Swagger.json 文件进行合并,以方便在 API 网关中使用 Swagger 工具
- MMLib.SwaggerForOcelot contains swagger extension for ocelot
- Ocelot.JWTAuthorize is a JWT Authorize based on Ocelot API Gateway
- Ocelot.Security.AuthorizationToken.EntityFramework
- grpc service gateway used ocelot
- grpc service gateway used ocelot
- Repo for ZooKeeper integration with Ocelot
- Repo for Etcd integration with Ocelot
- Orleans can use Ocelot Api Gateway
- Ocelot 的配置工具
- A configuration editor for Ocelot
Ocelot 作为一款扩展性很强的开发库,社区中也涌现了很多非常有价值的项目,这些项目都是在生产环境应用过的,让有定制需求的同学少走很多弯路,这也体现了这个项目的活跃性。
开源贡献者
Ocelot 现在一起参与贡献过代码的63位,我这里只列出了在项目中持续活跃的以及对项目有重要贡献,这个列表我还会持续更新。
示例项目
- FamilyBucket 集合.net core、ocelot、consul、eventbus、configserver、tracing、sqlsugar等构建的微服务一条龙应用示例
- Simple samples that use Ocelot to build API Gateway
- DMS将会是一个集中式的中间件框架,每一个小型中间件将会是完全独立的,如:gRPC,Thrift,netty,Wcf,Exceptionless,Ocelot,RabbitMQ,Redis,IdentityServer,Consul,Zookeeper等,Demo中会有每一个中间件的实例方便开发者了解
- 基于Consul + .NET Core + Polly + Ocelot + Exceptionless + IdentityServer等开源项目的微服务开发框架
- Ocelot使用案例,结合IdentityServer4进行鉴权,结合Consul进行服务治理
- 一个基于IdentityServer4和Ocelot的统一验证与授权ASP.NET Core微服务示例程序项目
- 基于ocelot扩展自定义网关
- ASP.NET Core 2.2 Web API Gateway Demo
- 集IdentityServer4,Ef Core,dapper,Policy,领域驱动设计,consul,zipkin,Swagger,Cap+RabbitMq,Ocelot网关一体的项目
- docker Ocelot Console Identityserver4
- 重写Ocelot配置文件获取方式从数据库中获取,并重写认证以及限流功能。可以针对每个客户端对每个API的访问进行限制
相对于扩展组件,有很多同学在研究学习Ocelot,以及投入生产项目以示例的形式在github上开源,这些项目不仅仅是围绕Ocelot,同时围绕.NET Core的微服务的各个方面都会有涉及,也是大家打造微服务框架的一个参考项目,我这里节选了github上面的一部分项目,发现这些项目都是中文的,肯定都是我们身边的同学贡献的。
视频
- https://www.youtube.com/watch?v=kl-NeEAb1WQ
- https://www.youtube.com/watch?v=Kvj1g6dLAZw
- Ocelot Api Gateway with ASP.NET Core 2.1 and VS Code
- Tencent updates web and mobile payment infrastructure for better scalability and agility
有几个视频都需要借助梯子,老外做的几个视频很不错,最后一个视频是微软和我们一起拍摄的3分钟的宣传视频。
用户
欢迎大家 在这里提供你们使用Ocelot的信息 https://github.com/geffzhang/awesome-ocelot/issues/1 ,据说所知目前Ocelot的用户案例是很多的,我创建了一个国内的Ocelot用户的微信群,当前只要列了两个大用户。
Ocelot项目的Star 增长图
截至2019.2.11,Ocelot项目目前有Star 3076个,从上图可以看出从.NET Core 2.0发布以来,增长的曲线是一条笔直上升图,这也侧面反应了.NET Core的采用率也在直线上升。
Ocelot 资源汇总的更多相关文章
- Kinect开发资源汇总
Kinect开发资源汇总 转自: http://www.sigvc.org/bbs/forum.php?mod=viewthread&tid=254&highlight=kinec ...
- 微信小程序(应用号)资源汇总整理
微信小应用资源汇总整理 开源项目 WeApp - 微信小程序版的微信 wechat-weapp-redux-todos - 微信小程序集成Redux实现的Todo list wechat-weapp- ...
- 【特别推荐】Node.js 入门教程和学习资源汇总
这篇文章与大家分享一批很有用的 Node.js 入门教程和学习资源.Node 是一个服务器端的 JavaScript 解释器,它将改变服务器应该如何工作的概念.它的目标是帮助程序员构建高度可伸缩的应用 ...
- Github上PHP资源汇总大全,php学习的好资料
Github上PHP资源汇总大全,php学习的好资料 国外程序员ziadoz 在Github上收集整理了PHP的各种资源,内容包括模板.框架.数据库.安全等方面的库和工具.汇总了各种PHP资源,供各位 ...
- 知名杀毒软件Mcafee(麦咖啡)个人版 资源汇总兼科普(来自卡饭)
虽然早已不是用咖啡了,但我也实时关注的咖啡的一举一动,潜水看帖日久,发现小白众多,好多有价值的帖子淹没于帖海当中,甚是惋惜. 我有如下建议 1.咖啡区管理层,能否吧一些优秀的资源教程 ...
- GitHub最全的前端资源汇总仓库(包括前端学习、开发资源、求职面试等)
在GitHub上收集的最全的前端资源汇总(包括前端学习.前端开发资源.前端求职面试等) 个人结合github上各位大神分享的资源进行了简单的汇总整理,每一个条目下面都有丰富的资料,是前端学习.工作的好 ...
- 数据可视化的优秀入门书籍有哪些,D3.js 学习资源汇总
习·D3.js 学习资源汇总 除了D3.js自身以外,许多可视化工具包都是基于D3开发的,所以对D3的学习就显得很重要了,当然如果已经有了Javascript的经验,学起来也会不费力些. Github ...
- KbmMW资源汇总(更新中…)
KbmMW框架是收费的,不在此提供下载,如需购买,请自行联系作者Kim Madsen. 网址资源: 官网主页:http://www.components4programmers.com/product ...
- ENode简介与各种资源汇总
ENode简介与各种资源汇总 ENode是什么 ENode是一个.NET平台开源的应用开发框架,为开发人员提供了一套完整的基于DDD+CQRS+ES+(in-memory)+EDA架构风格的解决方案. ...
随机推荐
- 解决WordPress无法上传媒体文件以及无法下载和安装主题与插件的问题
前言: 我的个人博客网站荒原之梦在安装成功WordPress之后本来是可以上传媒体文件,安装主题和插件的,但是后来不知道怎么回事就出了问题:不能上传媒体文件也不能安装主题和插件了.出现这个问题后我尝试 ...
- SpringCloud实战7-Config分布式配置管理
分布式环境下的统一配置框架,已经有不少了,比如百度的disconf,阿里的diamand 官方文档对spring Cloud Config的描述如下:: Spring Cloud Config为分布式 ...
- python中 __cmp__
对 int.str 等内置数据类型排序时,Python的 sorted() 按照默认的比较函数 cmp 排序,但是,如果对一组 Student 类的实例排序时,就必须提供我们自己的特殊方法__cmp_ ...
- selenium获取元素后用click()点击没有作用,用Keys.ENTER就可以成功
selenium获取元素后用click()点击没有作用,用键盘输入enter(Keys.ENTER)就可以成功 #coding = utf-8 from selenium import webdriv ...
- BZOJ_4476_[Jsoi2015]送礼物_01分数规划+单调队列
BZOJ_4476_[Jsoi2015]送礼物_01分数规划+单调队列 Description JYY和CX的结婚纪念日即将到来,JYY来到萌萌开的礼品店选购纪念礼物. 萌萌的礼品店很神奇,所有出售的 ...
- BZOJ_3944_Sum_杜教筛
BZOJ_3944_Sum_杜教筛 Description Input 一共T+1行 第1行为数据组数T(T<=10) 第2~T+1行每行一个非负整数N,代表一组询问 Output 一共T行,每 ...
- 安卓开发笔记(三十一):shape标签下子类根结点的具体使用
在我的上一篇博文当中阐述了我们如何使用shape标签进行自定义控件,这里对shape控件的属性进行阐述,不知道如何使用这些属性的可以参见我的上一篇博文(自定义Button):https://www.c ...
- eShopOnContainers 知多少[8]:Ordering microservice
1. 引言 Ordering microservice(订单微服务)就是处理订单的了,它与前面讲到的几个微服务相比要复杂的多.主要涉及以下业务逻辑: 订单的创建.取消.支付.发货 库存的扣减 2. 架 ...
- Mybatis:缓存,动态SQL,注解SQL以及动态标签使用
1 转义字符 字符 转义 描述 < < 小于 <= <= 小于等于 > > 大于 >= >= 大于等于 <> <> 不等于 &a ...
- jdk源码阅读笔记-ArrayList
一.ArrayList概述 首先我们来说一下ArrayList是什么?它解决了什么问题?ArrayList其实是一个数组,但是有区别于一般的数组,它是一个可以动态改变大小的动态数组.ArrayList ...