【发布时间】:2013-06-01 19:30:08
【问题描述】:
我正在构建一个 OTP 应用程序,该应用程序遵循类似于 trapexit 中描述的模式,其中我使用 gen_server:call/3 实现了一个非阻塞 gen_server 以启动一个带有后端的事务并将事务 id 的映射存储到From pid。当 gen_server 收到来自后端的消息时,它会提取事务 id 并使用此映射来查找正确的 pid,然后将消息转发到。
在 trapexit 示例中,此映射是使用 ets 实现的,但是我发现让 gen_server 的状态包含具有这些映射的 dict 是一个非常自然的解决方案。
对于我的特定用例,映射最多包含 200 个条目。
推荐哪种实现方式?
提前致谢!
【问题讨论】:
标签: erlang erlang-otp