Как загрузить сервер с питоном? - PullRequest
0 голосов
/ 20 февраля 2019

У меня есть WebApp на Flask + gunicorn + nginx.Мне нужно отправить 200 запросов с моего другого сервера одновременно в WebApp, сохранить ответ и его скорость.Также мне нужно отправить Json POST на эти 200 запросов.Как это сделать правильно?Использовать скрипт Python или CURL?

Ответы [ 2 ]

0 голосов
/ 20 февраля 2019

Итак, прочитав много статей, я пошел следующим образом:

Используя эту библиотеку

со следующим кодом:

import curio
import curio_http
import json
import requests

async def fetch_one(url):
    async with curio_http.ClientSession() as session:
        params =  {sample}
        response = await session.post(url, data=json.dumps(params))
        content = await response.text()
        return response, content


async def main():
    tasks = []
for x in range(300):
    task = await curio.spawn(fetch_one(sample))
    tasks.append(task)

for task in tasks:
    response, content = await task.join()
    #response = await task.join()

    print('GET %s' % response.url)
    print(content)
    print()

if __name__ == '__main__':
   curio.run(main())

И это отлично работает!

0 голосов
/ 20 февраля 2019

Я предлагаю вам использовать «Почтальон» для любого вида тестирования API.Это один из лучших инструментов на рынке для тестирования API, мониторинга, документирования, а также для обмена результатами (а также сценариями тестирования) бесплатно .Если вы не хотите использовать какой-либо другой инструмент, я предлагаю вам использовать скрипт на Python.

...