从本地 gearman 客户端调用远程 gearman worker?
Calling remote gearman worker from local gearman client?
是否可以从本地系统调用远程 gearman worker?我尝试使用我的远程 azure 服务器 IP 调用:
本地系统上的客户端:
gm_client = gearman.GearmanClient(['204.43.9.41:4730'])
sent = sys.argv[1]
completed_job_request = gm_client.submit_job("load_db", sent)
远程工作人员:
def __init__(self):
self.gm_worker = gearman.GearmanWorker(['204.43.9.41:4730'])
self.context = self.init_context()
res = self.gm_worker.register_task('load_db', self.run_query)
当我将 worker 运行 保留在远程服务器上并从本地客户端调用时,它给出了这个错误:
gearman.errors.ServerUnavailable: Found no valid connections: GearmanConnection 204.43.9.41:4730 connected=False
有一个非常简单的方法可以做到这一点:
将本地主机 gearman 端口与远程 gearman 端口绑定:
sudo ssh -L 4730:localhost:4730 azureuser@servername.azurecloudapp.net
现在在远程服务器上保留工作人员 运行
从本地系统进行简单调用
python worker.py 'input parameter'
是否可以从本地系统调用远程 gearman worker?我尝试使用我的远程 azure 服务器 IP 调用:
本地系统上的客户端:
gm_client = gearman.GearmanClient(['204.43.9.41:4730'])
sent = sys.argv[1]
completed_job_request = gm_client.submit_job("load_db", sent)
远程工作人员:
def __init__(self):
self.gm_worker = gearman.GearmanWorker(['204.43.9.41:4730'])
self.context = self.init_context()
res = self.gm_worker.register_task('load_db', self.run_query)
当我将 worker 运行 保留在远程服务器上并从本地客户端调用时,它给出了这个错误:
gearman.errors.ServerUnavailable: Found no valid connections: GearmanConnection 204.43.9.41:4730 connected=False
有一个非常简单的方法可以做到这一点:
将本地主机 gearman 端口与远程 gearman 端口绑定:
sudo ssh -L 4730:localhost:4730 azureuser@servername.azurecloudapp.net
现在在远程服务器上保留工作人员 运行
从本地系统进行简单调用
python worker.py 'input parameter'