问题是为什么一些应用程序(如ejabberd)使用自己的钩子模块(例如ejabberd_hooks.erl)而不是gen_event?Erlang:钩子vs gen_event
4
A
回答
12
Ejabberd钩子和gen_event是完全不同的东西。 Ejabberd钩子由调用它们的进程评估 - gen_event处理程序在单个gen_event进程中运行。由于Ejabberd需要为大多数消息运行多个钩子,因此将每个xmpp消息发送到许多不同的gen_event进程不会像Ejabberd方法那样获得如此高的消息吞吐量。
2
不要指望答案太有趣。要么是因为作者不熟悉gen_event,要么是在2004年添加ejabberd_hooks时效果不佳。
相关问题
- 1. Erlang gen_event不工作
- 2. erlang事件vs线程有多重?
- 3. Erlang Gen_call vs Gen_cast
- 4. Erlang vs Elixir Macros
- 5. ejabberd 2.1.11 Erlang模块钩子上的错误
- 6. gen_event handle_info没有被调用
- 7. Erlang concurrency/distribution - then vs. now
- 8. Erlang数组vs列表
- 9. 并发模型:Erlang vs Clojure
- 10. TSLint预先挂钩钩子
- 11. git环境vs precommit钩
- 12. Winsock LSP vs API挂钩
- 13. 钩子的ghostscript
- 14. mercurial-server钩子
- 15. jquery ajax:何时使用回调钩子vs设置函数?
- 16. 黄瓜:什么时候使用标签/钩子vs背景
- 17. erlang vs jvm(scala)递归性能
- 18. Erlang:远程调用vs发送消息
- 19. Git子树帖子挂钩
- 20. Firefox pr_write挂钩。 DLL注入,windows钩子
- 21. 异步git钩子?
- 22. std ::复制钩子
- 23. Git post-rebase钩子
- 24. posts_where使用钩子
- 25. React-Router onChange钩子
- 26. Drupal Form Alter钩子
- 27. Express.js关机钩子
- 28. Subversion中的钩子
- 29. Codeigniter中的钩子
- 30. Boost Intrusive List钩子
我倾向于同意基督教。 – jldupont 2009-11-11 19:07:18
+1,如果你的问题是针对你应该使用的?然后与gen_event一起去,直到它不再满足您的需求。 – 2009-11-11 20:25:27