PYTHONOMANIA
273 subscribers
195 photos
3 videos
1 file
616 links
Откройте для себя мир Python в PYTHONOMANIA!

Идеально подходит как для начинающих, так и для опытных разработчиков. Присоединяйтесь к нам, чтобы достичь совершенства в Python!

Сайт: https://pythonomania.github.io/
Download Telegram
📱Runloom.

Runloom
- это библиотека для Python, которая позволяет запускать сотни тысяч задач одновременно, не усложняя при этом код.

Если говорить простыми словами: обычно, чтобы сделать программы в Python быстрыми и параллельными, разработчикам приходится переписывать весь проект под async и await. Runloom позволяет писать самый обычный, понятный код (без асинхронной «лапши»), но выполняет его так же быстро и эффективно, как язык Go (Golang).

❓В чём главная фишка.

🔘Без async и await: Вы пишете привычные функции, а библиотека сама незаметно переключает задачи в фоновом режиме, пока одна из них ждет ответа от сети или диска.

🔘Молниеносная скорость: Переключение между задачами написано на низкоуровневом Ассемблере и C. Переход от одной задачи к другой занимает считанные наносекунды.

🔘Работа на всех ядрах: Идеально раскрывается на новых версиях Python (3.13+ и 3.14+ с отключенным GIL), позволяя честно загрузить процессор на 100%.

🔘Каналы как в Go: Позволяет удобно и безопасно передавать данные между параллельными процессами.

🔘Прокачка старого кода в 1 строчку: Функция runloom.monkey.patch() умеет на лету превращать стандартные «медленные» библиотеки (например, urllib или socket) в параллельные без переписывания вашего кода.

🔻Простой пример:

import threading
import runloom
from urllib.request import urlopen

# Делаем стандартные сетевые запросы параллельными
runloom.monkey.patch()

def download(url):
# Код выглядит так, будто он блокирует программу и ждет ответа...
# Но Runloom не дает ему зависнуть и скачивает всё одновременно!
body = urlopen(url).read()
print("Скачано байт:", len(body))

def main():
# Запускаем 64 скачивания параллельно
for _ in range(64):
runloom.fiber(download, "http://example.com")

# Распределяем работу на 8 ядер процессора
runloom.run(8, main)


📦Установка:

pip install runloom


✅Отличное решение, если нужно выжать максимум скорости из параллельных запросов, но нет желания усложнять проект асинхронными фреймворками!

#Python #Runloom #Performance #Async #Concurrency #Go #Golang #DevTools #OpenSource #Программирование

📱Ссылка на репозиторий:
https://github.com/robertsdotpm/runloom
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍2🔥21