加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

zend-framework – Zend Framework应用程序中的事件

发布时间:2020-12-13 18:02:13 所属栏目:PHP教程 来源:网络整理
导读:我正在寻找一个基于Zend Framework的事件驱动架构的良好实现的参考.你能分享一下这个话题的经验吗? 我找到了两个解决方案,但尚未使用它们: http://framework.zend.com/wiki/display/ZFPROP/Zend_Event+-+Alvar+Vilu http://components.symfony-project.org
我正在寻找一个基于Zend Framework的事件驱动架构的良好实现的参考.你能分享一下这个话题的经验吗?

我找到了两个解决方案,但尚未使用它们:

> http://framework.zend.com/wiki/display/ZFPROP/Zend_Event+-+Alvar+Vilu
> http://components.symfony-project.org/event-dispatcher/

编辑:

例:

> http://www.slideshare.net/beberlei/towards-the-cloud-eventdriven-architectures-in-php

我在这个主题上没有太多的实践经验,但由于似乎没有其他人回复,我想我会分享我对此的看法……

这在程序中可能有点棘手,因为它们通常仅在请求期间运行,因此在该短阶段期间能够订阅和侦听通用事件的好处可能不是很大.

但是,我认为允许您更多地解耦代码可能会有一些好处.

据我所知,Symfony调度员看起来更好 – 主要是因为它看起来更简单.

我自己使用了一种dojo pubsub类型的系统:基本上你有一个事件发布者,类可以发布事件.这是一种全局事件处理,您没有专门订阅类本身 – 而是订阅特定事件,并且哪个类发布事件无关紧要.

这与订阅特定类的好处是代码更加分离:在我的情况下,它是一个ZF应用程序,订阅事件的类可以简单地在引导程序中执行,而不必在控制器中执行订阅(或者创建发布者的地方)

这种方法的缺点是它可以使事物之间的依赖关系更难跟踪.例如,您只看到一个事件发布调用,但是如果不深入研究代码,您根本不知道它是什么类型的事情.

在我的情况下,我真的不知道应用程序是否从使用这种架构中获得任何好处 – 实际上我已经多次考虑完全删除它并且只使用直接监听事件的对象.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读