一位前员工计划推出微服务体系结构,目前正在实施。我对设计没有什么疑问,我非常感谢你的反馈。
解释
Dematerialized UI
有一个匹配的dematerialized API
。
Dematerailized API
验证用户并通过SSO Library
生成令牌。
Flight API
进行I/O验证&通过validate request microservice
验证请求
Flight API
调用Booking API
以获得一些基于UserId
的预订
Flight API
调用Print Booking API
以使用Generate Message Microservice
生成消息
Print Booking API
必须调用Data Access API
来获取数据,然后调用Generate PDF microservices
。
Data Access API
调用数据库获取数据。
我的项目结构
FlightBookingsMicroserice.V1 //solution
ApiGatways //folder
DMZ.API/DMZ.API.csproj //Folder/project
BuildingBlocks
EventBus/EventBus.csproj
EventBus/EventBusRabbitMQ
Services
SSO
SSO.API/SSO.csproj
SSO.UnitTests
Flight
Flight.API/Flight.API.csproj
Flight.UnitTets
//Similar for all
ValidationRequest
Booking
PrintBooking
PrintBooking.API.csproj
DataAccess
DataAccess.API.csproj
GeneratePDF
GenerateMessage
UI
UI
Docker-compose
问题
我应该在Print Booking API
.
Flight API
和Microservice way of development
ASP.NET Core Web API with .NET 6
进行Dematerialized API in orange
、Function API in blue
和Microservice in purple
projects.
Dematerialized UI
传递的,如果E 144
令牌过期e 245
而CRUD操作已经执行了一些阶段的回滚更改,那么怎么办?如果每个API访问一个标识服务器并验证用户传递并为其服务生成自己的标记(紫.)
提前谢谢你。
发布于 2022-09-05 06:24:32
核心问题是,您是否真的需要所有这些服务,以及您是否使事情变得过于复杂。我认为最重要的是要认真考虑并确定你为什么要走这条路。
如果在服务之间执行同步API调用,则会创建耦合,并在长期内运行分布式monolith。
对于问题#4,用户通常使用一个访问令牌来访问公共服务,然后在具有完全不同生命期的服务之间使用不同的内部令牌集(机器对机器也称为OpenID连接厅中的客户端凭据)。
发布于 2022-09-05 11:30:28
q1: ocelot是一个API网关,它是请求的入口点。因此,它应该是用户请求在服务前面满足的第一层/服务,并根据其配置将请求转发给服务。所以,你所有的服务都在最前面。一些arch出于不同的原因提供了另一个api网关,例如用于移动请求的特定api网关。
q2:是寻找独立的服务(我不能理解函数api,但我假设它们也是服务)是的,但是微服务开发不仅仅是关于分离事物,它是关于设计和识别服务与业务上下文(领域驱动的设计).its,很难识别服务及其大小以及它们之间的通信方式(异步通信和同步通信)。
q3:微服务并不是关于语言的,而微服务体系结构的frameworks.one并不依赖于语言或框架。这可能是微服务中使用的多种语言。选择语言取决于组织策略或您自己的原因。如果您是.net开发人员,那么就选择.net。
q4:所有服务都在身份服务器上注册,并通过它验证给定的令牌。标识服务器生成带有作用域的令牌(可能有多个令牌)。来自标识用户的请求始终在标头中包含令牌,服务通过引用标识服务器验证传入令牌。此令牌具有生存期,并且标识服务器在当前令牌到期时生成刷新令牌。请看Oauth博士和rfc。同样,这个https://www.youtube.com/watch?v=Fhfvbl_KbWo&list=PLOeFnOV9YBa7dnrjpOG6lMpcyd7Wn7E8V可能会有所帮助。您可以跳过基本的主题。我从这个系列中学到了很多。
https://stackoverflow.com/questions/73604622
复制相似问题