27 Mayıs 2012, Pazar
Birleştiren node.js ve Python
Node.js bizim web projesi için mükemmel bir maç olduğunu, ancak Python tercih ederiz birkaç hesaplama görevi vardır. Biz de zaten onlar için bir Python kodu var. Bir Python "" bir asenkron engellenmeyen? node.js çalışan nasıl en zarif yolu ne hız konusunda oldukça endişeliyiz,
CEVAP
27 Mart 2013, ÇARŞAMBA
Bu zeroMQ iyi bir uyum olacak bir senaryo gibi geliyor. TCP veya Unıx soketleri kullanarak benzer mesajlar bir çerçeve var, ama çok daha güçlü (http://zguide.zeromq.org/py:all)
ZeroMQ oldukça iyi çalışan bir RPC çerçeve sağlamak için kullandığı bir kütüphane var. ZeroRPC (http://zerorpc.dotcloud.com/) deniyor. Merhaba Dünya işte.
"Merhaba x" sunucu: . Python
import zerorpc
class HelloRPC(object):
'''pass the method a name, it replies "Hello name!"'''
def hello(self, name):
return "Hello, {0}!".format(name)
def main():
s = zerorpc.Server(HelloRPC())
s.bind("tcp://*:4242")
s.run()
if __name__ == "__main__" : main()
Ve node.js müşteri:
var zerorpc = require("zerorpc");
var client = new zerorpc.Client();
client.connect("tcp://127.0.0.1:4242");
//calls the method on the python object
client.invoke("hello", "World", function(error, reply, streaming) {
if(error){
console.log("ERROR: ", error);
}
console.log(reply);
});
Ya da tersi, node.js sunucu:
var zerorpc = require("zerorpc");
var server = new zerorpc.Server({
hello: function(name, reply) {
reply(null, "Hello, " name, false);
}
});
server.bind("tcp://0.0.0.0:4242");
Ve python istemci
import zerorpc, sys
c = zerorpc.Client()
c.connect("tcp://127.0.0.1:4242")
name = sys.argv[1] if len(sys.argv) > 1 else "dude"
print c.hello(name)
Bunu Paylaş:
node.js eşdeğer python's __adı== ...
Çalışan node.js bağımlılıklar için Win...
Verim anahtar kelime Python ne yapar?...
Python bir metaclass nedir?...
Python kullanarak bir dosya var olup o...