前端和微服务之间的通信
Communicating between front-end and microservices
所以在我的 uni 项目中,教授说我们可以尝试使用微服务,那为什么不试试呢?我想到一个问题。我不知道如何从前端(客户端应用程序)到后端进行通信。
有了单体就很容易了。前端运行在 adress:port xxxx 后端运行在 adress:port yyyy 每次需要数据时只需调用端口 yyyy。
但是,如何在前端代码中没有大量不同地址的情况下使用微服务来做到这一点?
我有一个想法,就是在前端调用的中间建立一个分类服务器,该服务器将检查应该调用什么微服务,然后 return 将结果从微服务发送到前端.
基本上:
1.Frontend 为产品调用中间的服务器
2.The 中间的服务器看到前端需要产品,因此它在其端口上调用产品微服务。
3.Returns产品微服务对用户的结果。
这种方法行得通吗?
方法太多了。没有什么是对的或错的。
如果你有很多微服务,比如说超过10个,service mesh
是常用的pattern.where每个服务可能会调用1个或多个下游服务。在这种情况下,每个服务都需要知道它所依赖的其他服务的地址是什么。
如果你想通过单个服务进行路由。嗯,这是网关模式。你所有的请求都通过一项服务,然后它又路由到下游服务。
例如:
192.168.14.2:8080/账户
192.168.14.2:8080/某物
根据路由,此网关服务可以调用 accout-service
或 something-service
当您随着时间的推移添加更多服务时,这不适合。
网关服务的负载会增加,成为单点故障
例如,您可以使用 spring 云网关。这与您的解决方案完全一样
希望能回答您的问题
所以在我的 uni 项目中,教授说我们可以尝试使用微服务,那为什么不试试呢?我想到一个问题。我不知道如何从前端(客户端应用程序)到后端进行通信。
有了单体就很容易了。前端运行在 adress:port xxxx 后端运行在 adress:port yyyy 每次需要数据时只需调用端口 yyyy。 但是,如何在前端代码中没有大量不同地址的情况下使用微服务来做到这一点?
我有一个想法,就是在前端调用的中间建立一个分类服务器,该服务器将检查应该调用什么微服务,然后 return 将结果从微服务发送到前端.
基本上:
1.Frontend 为产品调用中间的服务器
2.The 中间的服务器看到前端需要产品,因此它在其端口上调用产品微服务。
3.Returns产品微服务对用户的结果。
这种方法行得通吗?
方法太多了。没有什么是对的或错的。
如果你有很多微服务,比如说超过10个,service mesh
是常用的pattern.where每个服务可能会调用1个或多个下游服务。在这种情况下,每个服务都需要知道它所依赖的其他服务的地址是什么。
如果你想通过单个服务进行路由。嗯,这是网关模式。你所有的请求都通过一项服务,然后它又路由到下游服务。
例如: 192.168.14.2:8080/账户 192.168.14.2:8080/某物
根据路由,此网关服务可以调用 accout-service
或 something-service
当您随着时间的推移添加更多服务时,这不适合。
网关服务的负载会增加,成为单点故障
例如,您可以使用 spring 云网关。这与您的解决方案完全一样
希望能回答您的问题