语境:
1)我们有一个调度程序,它通过以阻塞方式调用另一个 rest-call 来获取作业并处理它们。
2)调度程序线程需要等待休息调用完成并根据结果依次执行一些其他任务。
3) 对于实时性没有任何限制。
问题陈述:
1)我们想要的是在进行外部调用后立即释放调度程序线程,因为外部调用需要大量时间才能完成。
2)我们应该被告知从外部调用收到的结果,因为我们需要根据结果进行一些处理。
我心中的想法:
1)我们可以将事件推送到队列中,而不是使用同步Http调用来调用外部系统。
2)另一个系统的API使用者将从队列中读取事件并执行长时间运行的任务。并且后期处理将结果推送回不同主题的队列。
3)我们的系统现在可以从队列(第二个主题)中读取响应并执行必要的操作。
这是我的设计方法之一
我需要关于我们是否可以以某种方式改进设计的建议。
1)这可以在不引入队列的情况下完成吗?
2)有没有更好的方法来实现异步处理?