【发布时间】:2020-01-09 22:32:08
【问题描述】:
我有一个使用 Phoenix 用 Elixir 编写的 API 服务。它具有以下端点:
- 接收字符串参数。
- 检查结果是否已经存在于缓存中(数据库或文件,参数为缓存键):
- 如果是,立即返回结果。
- 如果否,则向第三方服务执行外部请求,处理请求响应,缓存结果然后返回。
它工作正常。但是现在我想在并发请求之间共享结果:如果有一个请求A正在等待第三方服务响应或处理结果,其他具有相同参数的请求不应该做同样的工作,他们应该等待来自请求A的结果.
如果有人能帮我找到解决方案,我将不胜感激。
【问题讨论】: