Python 以干净的方式限制发布中的订阅者&;订阅模式
在中,我想限制给定Python 以干净的方式限制发布中的订阅者&;订阅模式,python,websocket,autobahn,Python,Websocket,Autobahn,在中,我想限制给定@exportSub(…)的订户数量。你怎么知道订户的数量 (来自) 我可能可以使用自己的WampServerFactory,重写onClientSubscribed和onClientSubscribed方法,并使用内部数组变量来完成此操作。。。但我想知道是否有更干净的方法 class MyFactory(WampServerFactory): def onClientSubscribed(self, *a, **k): WampServerFac
@exportSub(…)
的订户数量。你怎么知道订户的数量
(来自)
我可能可以使用自己的WampServerFactory
,重写onClientSubscribed
和onClientSubscribed
方法,并使用内部数组变量来完成此操作。。。但我想知道是否有更干净的方法
class MyFactory(WampServerFactory):
def onClientSubscribed(self, *a, **k):
WampServerFactory.onClientSubscribed(self, a, k)
print '=== client subscribed '
def onClientUnsubscribed(self, *a, **k):
WampServerFactory.onClientUnsubscribed(self, a, k)
print '=== client unsubscribed '
可以找到代码。不幸的是,目前没有支持该功能的公共API 我同意类似于
myWampFactory.getSubscribers(someTopic)
的东西在某些情况下是有用的。如果您介意,请在GitHub上提交一个问题,以便我们跟踪功能请求
在您提到的两个解决方法中,重写OnClient Subscribed似乎会导致订阅的第二次簿记,我发现这比访问内部(myFactory.subscriptions
)更令人不满意
class MyFactory(WampServerFactory):
def onClientSubscribed(self, *a, **k):
WampServerFactory.onClientSubscribed(self, a, k)
print '=== client subscribed '
def onClientUnsubscribed(self, *a, **k):
WampServerFactory.onClientUnsubscribed(self, a, k)
print '=== client unsubscribed '