gpt4 book ai didi

php - 如何使用 ZeroMQ 和 ClankBundle 实现 "Push to an Existing Site"?

转载 作者:行者123 更新时间:2023-12-04 16:13:10 24 4
gpt4 key购买 nike

我目前正在使用 ClankBundle在我的 Symfony2 应用程序中,需要实现 Push to an Existing Site Ratchet 文档中提到的功能。但是,我没有找到有关如何使用 ClankBundle 完成此功能的线索!

我已经成功实现了Topic Handler Setup来自 ClankBundle 文档,但需要一种方法来添加对 ZeroMQ 的支持.

您能否演示(最好用代码)如何将 ZeroMQ 与 Clankbundle 一起使用?

最佳答案

我找到了一个可能对您也有用的解决方法。

在我的设置中,我有需要向主题广播新信息的定期服务,并且我有自定义主题处理程序。

首先在定期服务中注入(inject)自定义主题处理程序并将所有订阅的主题保存在主题处理程序中,如下所示:

public function onSubscribe(Conn $conn, $topic)
{
if (!array_key_exists($topic->getId(), self::$subscribedTopics)) {
self::$subscribedTopics[$topic->getId()] = $topic;
}

$topic->broadcast('connected');
}

public function getSubscribedTopics() {
return self::$subscribedTopics;
}

定期获取这些主题并对其进行广播:
public function tick()
{
$subscribedTopics = $this->topic->getSubscribedTopics();

foreach($subscribedTopics as $subscribedTopic) {
$subscribedTopic->broadcast('yey');
}
}

关于php - 如何使用 ZeroMQ 和 ClankBundle 实现 "Push to an Existing Site"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20201391/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com