我正在尝试创建以下内容:
dictionary = {
'key1': ['val1','val2'],
'key2': @key1
}
Run Code Online (Sandbox Code Playgroud)
其中@ key1引用了字典['key1'].先感谢您.
是否有可能在NAT后面运行akka节点(每个节点都在单独的nat后面,公共端口是DNAT到私有)?目前我正在尝试在docker容器中部署akka节点.Docker是natting公共端口到实例私有端口,问题是akka节点的地址是从akka.remote.netty.tcp.hostname创建的,但在natted环境中它与面向公共端口的主机名不同.来自公共接口的消息被拒绝,因为akka绑定到私有ip.是否有可能改变阿卡节点地址不尊重akka.remote.netty.tcp.hostname,可以说,目前的节点地址是akka.tcp://ClusterSystem@172.16.10.5:2551,其中172.16.10.5是akka.remote.netty .tcp.hostname,但我想改变它akka.tcp://ClusterSystem@10.2.0.222:2551,其中10.2.0.222是公共访问的地址,但仍然阿卡应172.16.10.5:2551被监听.
是否有可能使用python的标准库xmlrpclib与gevent?目前我尝试使用monkey.patch_all(),但没有成功.
from gevent import monkey
monkey.patch_all()
import gevent
import time
import xmlrpclib
from SimpleXMLRPCServer import SimpleXMLRPCServer
import urllib2
def fetch(url):
g = gevent.spawn(urllib2.urlopen, url)
return g.get().read()
def is_even(n):
return n%2 == 0
def req(url):
return fetch(url)
server = SimpleXMLRPCServer(("localhost", 8000))
print "Listening on port 8000..."
server.register_function(is_even, "is_even")
server.register_function(req, "req")
server.serve_forever()
Run Code Online (Sandbox Code Playgroud)
urllib2.urlopen阻止服务器.在我看来,monkey.patch_all没有修补socket,这就是它阻塞的原因.
我有守护进程,它具有到handlerSocket的连接池。我有2种类型的客户端,它们的协议不同。我想设置2个侦听器,用于处理每个协议并共享它们之间的连接池。在扭曲中,这相对容易实现,但是找不到在gevent中如何做到这一点。谢谢!