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架构风格的解决方案. ...
随机推荐
- Linux时间子系统之(三):用户空间接口函数
专题文档汇总目录 Notes:用户空间时间相关接口函数: 类型 API 精度 说明 时间 time stime time_t 精度为秒级 逐渐要被淘汰.需要定义__ARCH_WANT_SYS_TIME ...
- 在单用户模式下修改CentOS的root密码
我们在使用CentOS的过程中可能会发生忘记root用户密码的情况,本文就从应用的角度简单介绍一下如何在单用户模式下修改root用户的密码. 开启CentOS,进入系统启动菜单 将光标停留在系统开机时 ...
- web页面测试
一.Web的功能测试 1.超链接测试 a.链接与链接的说明文字要匹配 (注:也可以是图片) b.链接的文字要描述正确 c.链接的文字要精简有效 d.链接 ...
- Python实现控制台密码星号输入
import msvcrt, sys, os print('password: ', end='', flush=True) li = [] while 1: ch = msvcrt.getch() ...
- Java中能否利用函数参数来返回值
转自https://blog.csdn.net/da_da_xiong/article/details/70039532 我们在写代码时通常会遇到一种情况,就是我们可能希望在一个函数操作完成后返回两个 ...
- NOIP2013华容道 大爆搜
预处理出每个点周围四个点互相到达的最短路,再在整个图上跑SPFA,要记录路径 #include<cstdio> #include<cstring> #include<io ...
- BZOJ_1029_ [JSOI2007]建筑抢修_贪心+堆
BZOJ_1029_ [JSOI2007]建筑抢修_贪心+堆 Description 小刚在玩JSOI提供的一个称之为“建筑抢修”的电脑游戏:经过了一场激烈的战斗,T部落消灭了所有z部落的入侵者.但是 ...
- 虚拟机console基础环境部署——配置本地YUM源
1. CD/ROM装载系统镜像2. 挂载设备3. 配置本地源4. 总结 有关YUM源及Linux系统三大软件管理方式,参照博客<CentOS系统三大软件管理>,笔记内链:CentOS系统三 ...
- OutputStream与PrintWriter的使用与区别
1.OutputStream 使用步骤: 获取输出流 设置中文 将字符串转换成字节数组 调用outputStream.write() 这里只贴出doGet方法的内容: protected void d ...
- C#相等性 - 三个方法和一个接口
简介 C#(.NET)的object类里面有三个关于判断相等性的方法: public virtual bool Equals(object obj) public static bool Equals ...