pressure_test.py 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. """
  2. @author: luojunhui
  3. """
  4. import time
  5. import requests
  6. import argparse
  7. from concurrent.futures import ThreadPoolExecutor
  8. def request_data(_url):
  9. index = _url.split("#")[0]
  10. url = _url.split("#")[1]
  11. body = {
  12. "version": "v2",
  13. "features": {
  14. "channel": "小年糕",
  15. "out_user_id": "66506470",
  16. "mode": "author",
  17. "out_play_cnt": 698,
  18. "out_like_cnt": 1,
  19. "out_share_cnt": 41,
  20. "title": "收藏好这九种中成药,让你少往医院跑。?",
  21. "lop": 701 / 24698, # like_cnt + 700 / play_cnt + 24000
  22. "duration": 180
  23. }
  24. }
  25. t = time.time()
  26. res = requests.post(url, json=body)
  27. e = time.time()
  28. print(index)
  29. print(e - t)
  30. print(res.json())
  31. if __name__ == "__main__":
  32. parser = argparse.ArgumentParser() # 新建参数解释器对象
  33. parser.add_argument("--thread")
  34. args = parser.parse_args()
  35. thread = int(args.thread)
  36. dt = ["{}#http://127.0.0.1:8000/lightgbm_score".format(i) for i in range(1, 1001)]
  37. total_s = time.time()
  38. with ThreadPoolExecutor(max_workers=thread) as pool:
  39. pool.map(request_data, dt)
  40. total_e = time.time()
  41. print(total_e - total_s)