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如何扩展写的很清楚了。

图书

  • .NET Microservices Architecture Guidance

目前涉及到Ocelot的图书只有一本微软.NET团队写的《.NET 微服务:适用于容器化 .NET 应用程序的体系结构》引用的微服务应用程序 eShopOnContainers 使用的是 Ocelot,这是一个简单的轻量级 API 网关,可与微服务/容器一起部署到任意位置


会议演讲

  • .NET Core 在腾讯财付通的企业级应用开发实践

虽然我在社区举办过多次活动介绍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 作为一款扩展性很强的开发库,社区中也涌现了很多非常有价值的项目,这些项目都是在生产环境应用过的,让有定制需求的同学少走很多弯路,这也体现了这个项目的活跃性。

开源贡献者

  • Tom Pallister

  • Philip Wood

  • geffzhang

  • 阿凌

  • Phil Proctor

  • Thiago Loureiro

  • Felix Boers

  • Marcelo Castagna

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 增长图

640?wx_fmt=png

截至2019.2.11,Ocelot项目目前有Star 3076个,从上图可以看出从.NET Core 2.0发布以来,增长的曲线是一条笔直上升图,这也侧面反应了.NET Core的采用率也在直线上升。

原文地址:https://www.cnblogs.com/shanyou/p/10363360.html

.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com
640?wx_fmt=jpeg


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/317318.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

P6698-[BalticOI 2020 Day2]病毒【AC自动机,dp,SPFA】

正题 题目链接:https://www.luogu.com.cn/problem/P6698 题目大意 有一个包含0∼G−10\sim G-10∼G−1的字符集,其中有nnn种变换,能够将一个字符ai(ai>1)a_i(a_i>1)ai​(ai​>1)变为一串字符bib_ibi​,当一个字符串中只剩下000和1…

[TJOI2017]城市(未解决)

[TJOI2017]城市 题意: 一棵树,现在要求你将一条边改变他的位置,(即改变左右所连接的端点,权值不变),修改后任意两点相互可达,且使得两个点之间的最大交通费用最小 题解: 有O(n^2…

数论三之组合数学Ⅰ-Max-Min Sums,Binomial Coefficient is Fun,Strivore,Bubble Sort,放棋子,LOJ6671,Iroha and a Grid

组合计数我最爱Max-Min SumsdescriptionsolutioncodeBinomial Coefficient is FundescriptionsolutioncodeStrivoredescriptionsolutioncodeBubble Sortdescriptionsolutioncode[HAOI2016]放棋子descriptionsolutioncodeEntropyIncreaser 与 MinecraftdescriptionsolutioncodeD…

12.15模拟:总结

前言 20分 《好耶》 很好的把所有错误都犯了一遍。 8:30写完AB题 11:00还是只写完AB题, T1代码没有提交 T2数组算错空间全RE T3快结束了发现CE了删掉第二档后还交成了之前写的失败版本(结果靠这破玩意水到了仅有的20分) T4考场其实猜到了结论但没证出来…

语言之争与读书有感

移动互联网无处不在的今天,不同的学习方式让我们受益颇多。有人喜欢通过手机阅读各类技术专家的公众号分享;有人喜欢通过逛逛不同的博客,来了解当前时下的技术;也有人喜欢通过社区的形式,跟优秀的导师们一起梳理和发展…

CF566E-Restoring Map【bitset】

正题 题目链接:https://www.luogu.com.cn/problem/CF566E 题目大意 有一棵树,但是你不知道它的形态。你现在只知道距离每个点距离不超过222的点集,但是你不知道每个点集是对应哪个点的。 现在要你求这棵树。 2≤n≤10002\leq n\leq 10002≤n≤1000 解…

所有人都可以是开发人员——《Office 365开发入门指南》视频教程即将上市

今天是春节假期的最后一天,在这里给全国的朋友们拜个晚年,祝大家身体健康,晚年幸福啊。这个春节大家过的怎么样啊,我自己是在老家过的年,家乡的年味还是比较浓的,也再次感谢朋友圈的大家给我看了各地的风光…

CodeForces: 360(div1)361(div2)

文章目录前言CF361A Levko and TableDescription\text{Description}DescriptionSolution\text{Solution}SolutionCode\text{Code}CodeCF361B Levko and PermutationDescription\text{Description}DescriptionSolution\text{Solution}SolutionCode\text{Code}CodeCF360A Levko a…

数论三之排列组合Ⅱ——Virus Tree 2,RGB Coloring,123 Triangle,排列计数,排队,卡农

丝且人一口Virus Tree 2descriptionsolutioncodeRGB Coloringdescriptionsolutioncode123 Triangledescriptionsolutioncode[SDOI2016]排列计数descriptionsolutioncode[HNOI2012]排队descriptionsolutioncode[HNOI2011]卡农descriptionsolutioncodeVirus Tree 2 description …

B - Labyrinth Gym - 102798B

B - Labyrinth Gym - 102798B 题意&#xff1a; n * m的地图&#xff0c;有k个障碍物&#xff0c;给你起点到终点&#xff0c;从起点到终点的最短距离 1<n,m<200000 nm<200000 0<k<42 1<q<100000 题解&#xff1a; 如果没有障碍物&#xff0c;两点之间…

P2483-[模板]k短路/[SDOI2010]魔法猪学院【主席树,堆】

正题 题目链接:https://www.luogu.com.cn/problem/P2483 题目大意 给出一个nnn个点mmm条边的一张带权有向图&#xff0c;求一个最大的kkk使得1∼n1\sim n1∼n的前kkk短路径长度和不超过EEE。 2≤n≤5000,1≤m≤2105,1≤E≤1072\leq n\leq 5000,1\leq m\leq 2\times 10^5,1\le…

.NET Core开发日志——OData

简述OData&#xff0c;即Open Data Protocol&#xff0c;是由微软在2007年推出的一款开放协议&#xff0c;旨在通过简单、标准的方式创建和使用查询式及交互式RESTful API。类库在.NET Core中想要使用OData功能的话需要添加Microsoft.AspNetCore.OData包。dotnet add package M…

数论四之综合训练——Magic Pairs,Crime Management,Top Secret,组合数问题

数论综合训练Magic PairsproblemsolutioncodeCF107D Crime ManagementproblemsolutioncodeUVA12183 Top SecretproblemsolutioncodeP3746 [六省联考2017]组合数问题problemsolutioncodeMagic Pairs problem 已知A0xB0y≡0(modn)A_0xB_0y\equiv 0\pmod nA0​xB0​y≡0(modn)恒…

P6776-[NOI2020]超现实树

正题 题目链接:https://www.luogu.com.cn/problem/P6776 题目大意 定义一次操作为将一棵树的叶子换成另一棵树。 定义一棵树TTT的grow(T)grow(T)grow(T)表示所有树TTT能够通过操作变成的树的集合。 现在给出mmm棵树TiT_iTi​&#xff0c;定义SSS为所有grow(Ti)grow(T_i)grow…

CodeForces:749(div1)750(div2)

文章目录前言CF450A Jzzhu and ChildrenDescription\text{Description}DescriptionSolution\text{Solution}SolutionCode\text{Code}CodeCF450B Jzzhu and SequencesDescription\text{Description}DescriptionSolution\text{Solution}SolutionCode\text{Code}CodeCF449A Jzzhu …

Steins;Game Gym - 102798J(未解决)

Steins;Game Gym - 102798J 题意&#xff1a; 给定n堆石子a&#xff0c;每堆石子被染成了黑色或者白色&#xff0c;现在两个人轮流进行以下的其中一个操作&#xff1a; 1、从石子数量最少的一个黑色石堆中拿走若干石子 2、从任意一个白色石堆中拿走若干石子 两个人都采取最优…

ML.NET 0.10特性简介

IDataView被单独作为一个类库包IDataView组件为表格式数据提供了非常高效的处理方式&#xff0c;尤其是用于机器学习和高级分析应用。它被设计为可以高效地处理高维数据和大型数据集。并且也适合处理属于更大的分布式数据集中的单个数据区块结点。在ML.NET 0.10中&#xff0c;I…

模板:模拟退火

文章目录前言解析流程示例代码trick所谓模拟退火&#xff0c;就是通过代码模拟退火 &#xff08;逃&#xff09; 前言 终于学了这个神奇的骗分算法 几次在大赛中都发现这算法是真的有学的必要 FFC可能真的要想想自己的题目对OI界的导向作用了 但学完以后还是感觉挺有意思的&a…

讨“动态规划“檄

我一直遵循着人不犯我我不犯人的原则&#xff0c;但是鉴于动态规划(dp)三番两次的挑衅&#xff0c;我忍无可忍决定发起反击&#xff0c;特写本文记录一下。 (本文整理一下以前做过的dp问题&#xff0c;并且把之前囤的大量dp都做做) acwing提高组 第一章 动态规划 背包模型题目集…

数论五之容斥——硬币购物,Gerald and Giant Chess,幸运数字,Sky Full of Stars,已经没有什么好害怕的了

容斥的神[HAOI2008]硬币购物problemsolutioncodeCF559C Gerald and Giant Chessproblemsolutioncode[SCOI2010]幸运数字problemsolutioncodeCF997C Sky Full of Starsproblemsolutioncode已经没有什么好害怕的了problemsolutioncode[JLOI2015]骗我呢problemsolutioncode容斥要么…