Url rewriting 在前端映射微服务
这可能是一个有点基于观点的问题,但我会尽量做到技术性,以保持相关性 考虑使用几种微服务:Url rewriting 在前端映射微服务,url-rewriting,architecture,microservices,Url Rewriting,Architecture,Microservices,这可能是一个有点基于观点的问题,但我会尽量做到技术性,以保持相关性 考虑使用几种微服务:a,b,c 要在前端提供此功能,可以通过以下方式提供: https://host/services/a https://host/services/b https://host/services/c 然而,端点在不同的服务之间被分割的事实对于前端来说是无关紧要的,基本上,如果我们能够保证端点不会冲突,那么直接提供这些服务将是非常好的: a/endpoint1->https://host/services
a
,b
,c
要在前端提供此功能,可以通过以下方式提供:
https://host/services/a
https://host/services/b
https://host/services/c
->a/endpoint1
https://host/services/endpoint1
->a/endpoint2
https://host/services/endpoint2
->b/endpoint3
https://host/services/endpoint3
->c/endpoint4
https://host/services/endpoint4
映射微服务URL的最佳实践是什么?我唯一想到的是OpenApi的一些导出,FE可以处理这些导出以获得正确的路径。但是,每个服务都会生成自己的OpenApi json,因此我们基本上回到了原始问题。您确定前端团队需要所有公开的端点吗?通常,前端与API网关进行对话,或者,就像现在酷孩子们所说的,“前端后端” 简而言之,它是一种特殊的服务,只负责公开前端所需的功能/端点。它将呼叫转发到相关服务,或者在必要时呼叫多个服务并聚合结果 在大多数情况下,这些API网关没有db,因为它们正在从其他服务检索所有数据。然而,他们可能会利用缓存层来加速事情
您甚至可以有多个API网关,每个前端一个(例如桌面、移动)。您确定前端团队需要所有公开的端点吗?通常,前端与API网关进行对话,或者,就像现在酷孩子们所说的,“前端后端” 简而言之,它是一种特殊的服务,只负责公开前端所需的功能/端点。它将呼叫转发到相关服务,或者在必要时呼叫多个服务并聚合结果 在大多数情况下,这些API网关没有db,因为它们正在从其他服务检索所有数据。然而,他们可能会利用缓存层来加速事情 您甚至可以有多个API网关,每个前端一个(例如桌面、移动设备)。您检查了吗?您检查了吗?