Size: a a a

testing_in_python

2021 February 25

T

Tishka17 in testing_in_python
взял http://ya.ru/1. Поставил 1000 повторений:
io
12.408918142318726
11.471111536026001
источник

T

Tishka17 in testing_in_python
а дальше меня яндекс забанил =D
источник

T

Tishka17 in testing_in_python
или не яндекс, а что-то с сетью
источник

T

Tishka17 in testing_in_python
хммм
источник

СС

Сказочный Сникерс... in testing_in_python
Tishka17
а дальше меня яндекс забанил =D
а я думал писать тебе или нет про публичные ресурсы))
источник

СС

Сказочный Сникерс... in testing_in_python
ванговал какой ты выберешь, гугл или яндекс. ставил на гугл. не угадал
источник

АК

Александр Кот... in testing_in_python
Сказочный Сникерс
"за раз" это как?
ну накидал N запросов, ждет пока ответ придет, ответ вернулся, отправил еще запрос, и так N процессов загружено в параллели, ожидает ответов, разве не так? поправьте пожалуйста если что
источник

АК

Александр Кот... in testing_in_python
Сказочный Сникерс
вот накидал простенький пример на коленке
О, любопытно, а у вас несколько другие либы используются.
источник

СС

Сказочный Сникерс... in testing_in_python
Tishka17
взял http://ya.ru/1. Поставил 1000 повторений:
io
12.408918142318726
11.471111536026001
докинул еще вот такие варианты

```
@timeit
def with_async_pool(w):
   pool = ThreadPool(processes=8)
   pool.map_async(w, range(count))
   pool.close()
   pool.join()


@timeit
def with_async_wrap_sync_requests():
   loop = asyncio.get_event_loop()
   session = requests.Session()

   async def async_get():
       return session.get(url)

   async_tasks = [loop.create_task(async_get()) for _ in range(count)]
   return loop.run_until_complete(asyncio.gather(*async_tasks))

```
источник

СС

Сказочный Сникерс... in testing_in_python
io
with_threads
11.086925983428955
with_processes
7.0769593715667725
synchronously
24.03195571899414
with_async_pool
3.705857276916504
with_async_wrap_sync_requests
8.745435953140259
источник

T

Tishka17 in testing_in_python
Эээ. Что тут происходит с асинкио
источник

СС

Сказочный Сникерс... in testing_in_python
осталось только aiohttp но мне лень
источник

СС

Сказочный Сникерс... in testing_in_python
Tishka17
Эээ. Что тут происходит с асинкио
враппер асинхронный, реквесты синхронно
источник

T

Tishka17 in testing_in_python
Меня сильно смущает что оно отличается по времени от последовательного варианта
источник

T

Tishka17 in testing_in_python
А ну блин, ты сессию создал
источник

T

Tishka17 in testing_in_python
ускорение не за счет аиснкио, а за счет использвания сессии
источник

T

Tishka17 in testing_in_python
по сути тут асинкио выполняет роль цикла for
источник

АК

Александр Кот... in testing_in_python
Tishka17
ускорение не за счет аиснкио, а за счет использвания сессии
мне показалось или без сессии быстрее банят?)
источник

T

Tishka17 in testing_in_python
раз на раз не приходится
источник

T

Tishka17 in testing_in_python
сессия - это переиспользование tcp коннектов, то есть мы экономим на установке соединения. Это актуально когда запрос выполняется на сервере быстро и мало данных
источник