当前位置:网站首页>(1) ASP.NET Introduction to core3.1 Ocelot
(1) ASP.NET Introduction to core3.1 Ocelot
2020-11-06 01:32:00 【itread01】
1. Introduction
Ocelot It was originally designed to be associated with .NET Core Used together , It's a .NET API Gate runner , As usage oriented .NET Perform microservices / Service oriented architecture requires a unified system entry point , That is, when the client (Web Site , Cell phones APP) Etc Web API When ,Ocelot As a unified entry point, it will be distributed to the corresponding API Go to the website ( Address ). and Ocelot It also integrates a lot of features , Example routing , Certification , Authorization , Speed limit and other function points ,Ocelot The official website also suggests that authentication should be followed by authentication (IdentityServer4) Use it together , Easy integration of bearer tokens . You can go to the official website for details (https://ocelot.readthedocs.io/en/latest/introduction/bigpicture.html) Get to know .
And examine Ocelot Source code , We will see Ocelot It's a bunch of intermediary software in a specific order (Middleware) The pipes that make up .
Ocelot Will HttpRequest The object operates to the state specified by its configuration , Until it reaches the request builder mediation Software , In mediation software, it creates a HttpRequestMessage thing , This object is used to make requests to downstream Services . The intermediary request is made by the software Ocelot The last thing in the pipeline . It doesn't call the next intermediary . Responses from downstream services are stored in the repository for each request scope , And ask to return Ocelot When the pipeline is retrieved . There is a piece of intermediary software that will HttpResponseMessage It's mapped to HttpResponse thing , It is then returned to the client .
2.Ocelot To configure
According to the official website ,Ocelot There are five configurations :
2.1 Basic integration (Basic Implementation)
When a client visits a downstream service site , Will be unified through Ocelot Gate runner ,Ocelot Gate runner Host The host will first read configuration.json Configuration information , According to the configuration file to find the corresponding downstream service site and return the processing results to the client . This process can be called routing addressing .
2.2 Integrate IdentityServer(With IdentityServer)
When the service site involves authentication and Authorization , It can be done through Ocelot Integrated on the gate IdentityServer, When a client visits a downstream service site , Will pass first IdentityServer After authentication and authorization, they are distributed to downstream service sites .
2.3 Multiple gateways are clustered (Multiple Instances)
Single Ocelot The gate is dangerous , If this gateway goes down , All downstream service sites will be inaccessible , It is impossible to achieve high availability in this way . To solve this problem , You can deploy multiple Ocelot Gateway clustering , and Ocelot Also integrated with load balancer .
2.4 Integrate Consul Service discovery (With Consul)
Check the official website file load balancing column , We know Ocelot Simple load function has been supported , When there are multiple service nodes in the downstream site ,Ocelot Can take on the role of load balancing . But it doesn't provide health checks , The service registration can only be completed by manually adding in the configuration file . It's not flexible enough and there are risks to some extent . At this time we can use Consul To do service discovery , It can relate to Ocelot Perfect combination .
2.5 Integrate Service Fabric(With Service Fabric)
If you are in Service Fabric Central government has a service , The naming service is usually used to access them .
3. Summary
Ocelot The gateway is the system's only access to the outside world , It's like the company's doorman is responsible for addressing 、 Access restrictions 、 Safety check 、 Location guidance and other functions . It also provides routing , Authentication 、 Monitoring 、 Load balancing 、 Get it 、 Request fragmentation and management 、 Static response processing and other functions .Ocelot The key point of the gateway is , All clients and consumers access microservices through a unified gateway , All non business functions are handled at the gateway level . Usually the gateway also provides REST/HTTP Access to API, The server registers and manages services through the gateway . After that chapter , I will continue to base on GitHub Contributors open source projects Ocelot Demo The example describes its functions .Ocelot Demo Address https://github.com/catcherwong-archive/APIGatewayDemo.
References :
Ocelot Official website
版权声明
本文为[itread01]所创,转载请带上原文链接,感谢
边栏推荐
- ES6学习笔记(五):轻松了解ES6的内置扩展对象
- Arrangement of basic knowledge points
- Named entity recognition in natural language processing: tanford core LP ner (1)
- What is the difference between data scientists and machine learning engineers? - kdnuggets
- In order to save money, I learned PHP in one day!
- Skywalking series blog 5-apm-customize-enhance-plugin
- Three Python tips for reading, creating and running multiple files
- Nodejs crawler captures ancient books and records, a total of 16000 pages, experience summary and project sharing
- use Asponse.Words Working with word templates
- Python filtering sensitive word records
猜你喜欢
How to encapsulate distributed locks more elegantly
NLP model Bert: from introduction to mastery (2)
How to customize sorting for pandas dataframe
Architecture article collection
IPFS/Filecoin合法性:保护个人隐私不被泄露
每个前端工程师都应该懂的前端性能优化总结:
Discussion on the technical scheme of text de duplication (1)
Python Jieba segmentation (stuttering segmentation), extracting words, loading words, modifying word frequency, defining thesaurus
Summary of common string algorithms
Network security engineer Demo: the original * * is to get your computer administrator rights! 【***】
随机推荐
比特币一度突破14000美元,即将面临美国大选考验
Let the front-end siege division develop independently from the back-end: Mock.js
零基础打造一款属于自己的网页搜索引擎
Vite + TS quickly build vue3 project and introduce related features
Synchronous configuration from git to consult with git 2consul
Python filtering sensitive word records
React design pattern: in depth understanding of react & Redux principle
PN8162 20W PD快充芯片,PD快充充电器方案
If PPT is drawn like this, can the defense of work report be passed?
Word segmentation, naming subject recognition, part of speech and grammatical analysis in natural language processing
How to customize sorting for pandas dataframe
仅用六种字符来完成Hello World,你能做到吗?
Recommendation system based on deep learning
6.5 request to view name translator (in-depth analysis of SSM and project practice)
NLP model Bert: from introduction to mastery (2)
Nodejs crawler captures ancient books and records, a total of 16000 pages, experience summary and project sharing
前端基础牢记的一些操作-Github仓库管理
Analysis of react high order components
Construction of encoder decoder model with keras LSTM
use Asponse.Words Working with word templates