我正在使用boto
和SNS向iOS发送推送通知。我创建了一个包装类 APNS
,它将长时间运行的boto.SNSConnection
作为成员变量。
我想将 APNS
类的实例作为全局变量,以便我可以使用 celery
在后台发送推送通知。
保留长时间运行的SNSConnection
并重复使用它是否存在任何问题,或者我是否应该在每次要发布消息时创建新连接?
您应该重用 SNS 连接以获得最佳性能。也就是说,请确保在连接关闭时检测到并重新建立连接。
查看 SNSConnection 的签名,没有超时参数,所以我猜测使用长期连接没有问题。
class SNSConnection(AWSQueryConnection):
"""
Amazon Simple Notification Service
"""
def __init__(self, aws_access_key_id=None, aws_secret_access_key=None,
is_secure=True, port=None, proxy=None, proxy_port=None,
proxy_user=None, proxy_pass=None, debug=0,
https_connection_factory=None, region=None, path='/',
security_token=None, validate_certs=True,
profile_name=None):