Asynchronous 异步GRPC?

Asynchronous 异步GRPC?,asynchronous,rabbitmq,grpc,synchronous,Asynchronous,Rabbitmq,Grpc,Synchronous,我正在设计一个新的系统,它将接受一系列汽车数据的散列,然后使用这些数据调用一个单独的API,该API返回一个布尔值,然后我将返回给原始调用方汽车模型,无论是真是假 该系统需要从其他应用程序调用,因此我正在研究GRPC以解决该问题。我的问题围绕着如何在GRPC中实现这个解决方案,以及像RabbitMQ这样的东西是否会更好 制作一个双向流式GRPC解决方案有意义吗?在这个解决方案中,客户机在车辆列表中进行流式处理,然后在服务器端生成(比如服务器上的每个请求都有一个延迟的作业)?然后,当每个延迟的作业

我正在设计一个新的系统,它将接受一系列汽车数据的散列,然后使用这些数据调用一个单独的API,该API返回一个布尔值,然后我将返回给原始调用方汽车模型,无论是真是假

该系统需要从其他应用程序调用,因此我正在研究GRPC以解决该问题。我的问题围绕着如何在GRPC中实现这个解决方案,以及像RabbitMQ这样的东西是否会更好

制作一个双向流式GRPC解决方案有意义吗?在这个解决方案中,客户机在车辆列表中进行流式处理,然后在服务器端生成(比如服务器上的每个请求都有一个延迟的作业)?然后,当每个延迟的作业完成处理时,我将该值返回到流中的原始调用者


这是一个优雅的解决方案还是有更好的方法来实现我的目标?谢谢。

gRPC的流媒体系统通常是为异步通信而设计的,因此它应该非常适合您的使用情况


在这种情况下,一般的设计思想是把每个在流中发送的独立消息视为独立的。基本上,确保您的原始消息包含应用程序需要解析和处理的所有信息,而不需要以前调用的任何上下文。

gRPC的流媒体系统通常是为异步通信设计的,因此它应该非常适合您的使用情况


在这种情况下,一般的设计思想是把每个在流中发送的独立消息视为独立的。基本上,确保proto消息包含应用程序需要解析和处理的所有信息,而不需要以前调用的任何上下文。

即使在流中,调用也不是“同步”的,因为每个proto消息都是逐个发送的,客户端正在等待完整的响应结束?双向流不是这样工作的,不。当数据到达时,你会得到数据,没有你所描述的双稳态系统。事实上,grpc的整个设计都是围绕着异步的。事实上,各种同步函数只是在异步版本的基础上进行的,并在等待。此外,在我的服务器文件中,我可以让事情正常工作,除非对活动记录表进行查询,我如何从grpc服务器调用ruby后端文件中的方法,该方法通过活动记录更新我后端的表?该文件还执行http请求。即使在流中,调用也不是“同步”的,因为每个原始消息都在一个接一个地发送,客户端正在等待完整的响应结束?双向流不是这样工作的,不。当数据到达时,您会得到数据,而没有您描述的双稳态系统。事实上,grpc的整个设计都是围绕着异步的。事实上,各种同步函数只是在异步版本的基础上进行的,并在等待。此外,在我的服务器文件中,我可以让事情正常工作,除非对活动记录表进行查询,我如何从grpc服务器调用ruby后端文件中的方法,该方法通过活动记录更新我后端的表?该文件还执行http请求。