def test():
    conf = config.Config()
    conf.set("client", "service", "python_test$EchoService")
    conf.set("client", "zk_connect_str", "192.168.137.111:2181")
    # 每个进程创建一个 client,多个协程公用一个client
    manager = client.Client(TutorialService.Client, conf)
    proxy_client = manager.create_proxy()

    def test_echo(msg):
        for i in range(req_num):
            try:
                proxy_client.echo(msg)
            except Exception as e:
                print("request error:%s" % e)
    jobs = []
    for i in range(Coroutines):
        jobs.append(gevent.spawn(test_echo,test_msg))
    gevent.joinall(jobs)
コード例 #2
0
def test():
    # 创建协程,多协程公用一个proxy_client
    conf = config.Config()
    conf.set("client", "service", "python_test$EchoService")
    conf.set("client", "zk_connect_str", "192.168.137.111:2181")
    manager = client.Client(TutorialService.Client, conf)
    proxy_client = manager.create_proxy()

    def test_echo(msg):
        global error
        for i in range(req_num):
            try:
                proxy_client.echo(msg)
            except Exception as e:
                error += 1

    jobs = []
    for i in range(Coroutines):
        jobs.append(gevent.spawn(test_echo, test_msg))
    gevent.joinall(jobs)
コード例 #3
0
def process(process_num):
    conf = config.Config()
    conf.set("client", "service", "python_test$EchoService")
    conf.set("client", "zk_connect_str", "192.168.137.111:2181")
    # 每个进程创建一个 client,多个线程公用一个client
    manager = client.Client(TutorialService.Client, conf)
    proxy_client = manager.create_proxy()
    jobs = []

    def test(num):
        for i in range(0, req_num):
            try:
                proxy_client.echo(data)
            except Exception as e:
                print("request error: %s" % e)

    thread_jobs = []
    for j in range(0, threads):
        ttd = threading.Thread(target=test, args=(j, ))
        ttd.start()
        thread_jobs.append(ttd)
    for thread_job in thread_jobs:
        thread_job.join()
コード例 #4
0
import time
import logging

from tutorial import TutorialService
from jdd.prpc import client
from jdd.prpc.common import config

logging.basicConfig(
    level=logging.DEBUG,
    format='%(asctime)s %(name)-12s %(levelname)-8s %(message)s',
    filename='./logs/directclient.log',
    filemode='w')

if __name__ == '__main__':
    # read config file
    # conf = config.Config("./etc/direct_client.conf")

    # setting config direct connect
    conf = config.Config()
    conf.set("client", "use_zk", "False")  # 不是用zk
    conf.set("client", "direct_address",
             "172.18.1.101:19999")  # ip:port 对应server的ip 和 端口

    manager = client.Client(TutorialService.Client, conf)
    proxy_client = manager.create_proxy()
    for i in range(0, 4):
        print(proxy_client.echo("hello world!"))
        time.sleep(0.1)
    manager.close()
コード例 #5
0
# -*- coding: utf-8 -*-
import time
import logging
from tutorial import TutorialService # 导入thrift生成的service
from jdd.prpc import client  # 导入prpc 的client
from jdd.prpc.common import config # 导入prpc 配置库

logging.basicConfig(level=logging.DEBUG,
                    format='%(asctime)s %(name)-12s %(levelname)-8s %(message)s',
                    filename='./logs/clientdemo.log',
                    filemode='w')

if __name__ == '__main__':
    # read config file
    conf = config.Config("./etc/demo_client.conf") #读取配置文件
    # setting config  use zk
    # conf = config.Config() # 初始化配置文件
    # conf.set("client", "service", "python_test$EchoService") # 设置服务名,此处和server的相同
    # conf.set("client", "zk_connect_str", "192.168.137.111:2181") # zk 连接地址

    # setting config direct connect, 不通过zk 进行直连的方式连接server
    # conf = config.Config()
    # conf.set("client", "use_zk", "False")
    # conf.set("client", "direct_address", "127.0.0.1:9095") # ip:port 对应server的ip 和 端口
    manager = client.Client(TutorialService.Client, conf)  #TutorialService.Client thrift生成的Client
    proxy_client = manager.create_proxy()
    for i in range(0, 40):
        print(proxy_client.echo("hello world!"))
        time.sleep(0.1)
    manager.close()