I've built an app written on python, based on ZeroMQ
, but now I'm facing perfomance issues. So I decided to rewrite some modules of my app using, let's say, Golang. But when I try to establish messaging between sockets, implemented by different languages, anything does not work.
I've searched so far, but I didn't find any info about compatibility problems of ZeroMQ
using different languages.
So the question is: Can I use golang for server implementation based on ZeroMQ
and client written on python to connect to it?
Or do I have to use only one language?
EDIT: here are typical server and client that I'm trying to get working properly
server:
import zmqctx = zmq.Context()
sock = ctx.socket(zmq.REP)
sock.bind("tcp://*:57000")
msg = sock.recv()
client:
package main
import (
zmq "github.com/pebbe/zmq4"
)
func main() {
ctx, _ := zmq.NewContext()
sock, _ := ctx.NewSocket(zmq.REQ)
sock.Connect("tcp://localhost:57000")
sock.Send("simple message", 0)
}
Server stucks at sock.recv()