mastodon.world is one of the many independent Mastodon servers you can use to participate in the fediverse.
Generic Mastodon server for anyone to use.

Server stats:

8.2K
active users

#aiohttp

2 posts2 participants1 post today
Habr<p>Почему простой парсер не всегда решает задачу: мой опыт интеграции спортивных API</p><p>В рамках собственной системы спортивной аналитики я хотел получить real-time доступ к данным о движении коэффициентов — в частности, с платформы pickingodds.com. У сервиса интересная фича — визуализация графика изменения линии по каждому событию. Это потенциально полезный источник вторичных сигналов (например, для обнаружения аномалий, связанных с резкой коррекцией маркет-мейкеров). Изначальный план был прост: интегрироваться по REST API, выкачивать данные раз в несколько минут, писать в TSDB, использовать далее для анализа и фичей в ML-пайплайнах. На практике же всё быстро ушло в зону нетривиальной оптимизации.</p><p><a href="https://habr.com/ru/articles/930360/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">habr.com/ru/articles/930360/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/pickingodds" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>pickingodds</span></a> <a href="https://zhub.link/tags/%D0%BA%D0%BE%D1%8D%D1%84%D1%84%D0%B8%D1%86%D0%B8%D0%B5%D0%BD%D1%82%D1%8B_%D1%81%D1%82%D0%B0%D0%B2%D0%BE%D0%BA" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>коэффициенты_ставок</span></a> <a href="https://zhub.link/tags/%D0%B0%D1%81%D0%B8%D0%BD%D1%85%D1%80%D0%BE%D0%BD%D0%BD%D1%8B%D0%B9_%D0%BF%D0%B0%D1%80%D1%81%D0%B8%D0%BD%D0%B3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>асинхронный_парсинг</span></a> <a href="https://zhub.link/tags/rate_limiting" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>rate_limiting</span></a> <a href="https://zhub.link/tags/aiohttp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>aiohttp</span></a> <a href="https://zhub.link/tags/Redis" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Redis</span></a> <a href="https://zhub.link/tags/Kafka" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Kafka</span></a> <a href="https://zhub.link/tags/TimescaleDB" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>TimescaleDB</span></a> <a href="https://zhub.link/tags/LightGBM" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>LightGBM</span></a> <a href="https://zhub.link/tags/ML_%D1%84%D0%B8%D0%BB%D1%8C%D1%82%D1%80%D0%B0%D1%86%D0%B8%D1%8F_%D1%81%D0%BE%D0%B1%D1%8B%D1%82%D0%B8%D0%B9" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ML_фильтрация_событий</span></a></p>
Habr<p>Асинхронный Telegram бот на PyTelegramBotAPI</p><p>В сети куча туториалов по синхронным ботам и почти ничего по асинхронным. Статья нацелена на новичков в асинхронном программировании в целом и в асинхронных ботах в частности. В этой статье не будет глубокого анализа асинхронности и технических деталей реализации со сложными терминами, только суть и практические примеры.</p><p><a href="https://habr.com/ru/articles/929990/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">habr.com/ru/articles/929990/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/%D1%82%D1%83%D1%82%D0%BE%D1%80%D0%B8%D0%B0%D0%BB" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>туториал</span></a> <a href="https://zhub.link/tags/%D0%B0%D1%81%D0%B8%D0%BD%D1%85%D1%80%D0%BE%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D1%8C" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>асинхронность</span></a> <a href="https://zhub.link/tags/python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>python</span></a> <a href="https://zhub.link/tags/telebot" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>telebot</span></a> <a href="https://zhub.link/tags/telegram" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>telegram</span></a> <a href="https://zhub.link/tags/aiohttp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>aiohttp</span></a></p>
Zło To<p>State of client side HTTP in <a href="https://101010.pl/tags/python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>python</span></a></p><p>- stdlib http.client - HTTP/1.1 only, docs recommend to use requests instead.<br>- requests - poorly maintained, in 2020 stopped working when servers deprecated older TLS versions. HTTP/1.1 only, sync only<br>- <a href="https://101010.pl/tags/httpx" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>httpx</span></a> - comparatively slow and API design is driven by compatibility with browsers. Some users plug-in aiohttp for better performance. Supports HTTP/2 but it's discouraged as not optimized.<br>- <a href="https://101010.pl/tags/aiohttp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>aiohttp</span></a> - good API, both client and server but seems more focused on the server side; HTTP/1.1 only.<br>- <a href="https://101010.pl/tags/niquests" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>niquests</span></a> - async fork of requests with HTTP/2, but uses forked urllib3 with the same package name as the original, which messes up deployment.<br>- <a href="https://101010.pl/tags/aioquic" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>aioquic</span></a> - client &amp; server, HTTP/3 only</p><p>🤦</p><p> <a href="https://101010.pl/tags/pythonRequests" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>pythonRequests</span></a> <a href="https://101010.pl/tags/programming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>programming</span></a></p>
Habr<p>Оптимизация асинхронного сервиса на Python</p><p>Всем привет! Сегодня хочу поделиться с вами нашим опытом ускорения асинхронного микросервиса на Python примерно на 25%. Я расскажу, какие действия мы предпринимали с командой, что помогло, а что оказалось не особенно полезно с точки зрения ускорения сервиса. Небольшое предисловие: мы в Иви постоянно работаем над тем, чтобы наши сервисы отвечали быстро и их максимальная предельная нагрузка повышалась. В процессе очередного анализа сервисов, мы выяснили, что один из них, о котором пойдет речь в статье, отвечает довольно медленно, учитывая его особенности. И мы решили его ускорять.</p><p><a href="https://habr.com/ru/companies/ivi/articles/920850/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/ivi/arti</span><span class="invisible">cles/920850/</span></a></p><p><a href="https://zhub.link/tags/python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>python</span></a> <a href="https://zhub.link/tags/asyncio" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>asyncio</span></a> <a href="https://zhub.link/tags/aiohttp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>aiohttp</span></a> <a href="https://zhub.link/tags/%D0%B0%D1%81%D0%B8%D0%BD%D1%85%D1%80%D0%BE%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>асинхронное_программирование</span></a> <a href="https://zhub.link/tags/%D1%82%D0%B5%D0%BB%D0%B5%D0%BC%D0%B5%D1%82%D1%80%D0%B8%D1%8F" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>телеметрия</span></a> <a href="https://zhub.link/tags/%D0%BE%D0%BF%D1%82%D0%B8%D0%BC%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>оптимизация</span></a> <a href="https://zhub.link/tags/%D0%B2%D1%80%D0%B5%D0%BC%D1%8F_%D0%BE%D1%82%D0%B2%D0%B5%D1%82%D0%B0" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>время_ответа</span></a> <a href="https://zhub.link/tags/%D0%BF%D1%80%D0%BE%D1%84%D0%B8%D0%BB%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>профилирование</span></a> <a href="https://zhub.link/tags/orjson" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>orjson</span></a></p>
Habr<p>Я устал от ограничений Strava и написал свой «швейцарский нож» для анализа тренировок на Python и FastAPI</p><p>Всем привет! Я — разработчик и велосипедист, которому надоели ограничения Strava. Знакомы боли: GPS‑треки с «телепортами», платный анализ по зонам и неудобная загрузка сегментов на Garmin? Я решил исправить это и написал свой «швейцарский нож» для анализа тренировок. Под катом — история создания pet‑проекта Peakline на Python, FastAPI и Vanilla JS. Расскажу, как устроен продвинутый FIT‑генератор для гонок с «призраком», как визуализировать исправление «сломанных» GPX‑треков и как заставить график и карту работать в связке. Поделюсь фрагментами кода, архитектурными решениями и подводными камнями при работе с API Strava. Узнать, как это сделано</p><p><a href="https://habr.com/ru/articles/920402/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">habr.com/ru/articles/920402/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/strava" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>strava</span></a> <a href="https://zhub.link/tags/fastapi" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>fastapi</span></a> <a href="https://zhub.link/tags/python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>python</span></a> <a href="https://zhub.link/tags/garmin" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>garmin</span></a> <a href="https://zhub.link/tags/fit" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>fit</span></a> <a href="https://zhub.link/tags/gps" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>gps</span></a> <a href="https://zhub.link/tags/gpx" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>gpx</span></a> <a href="https://zhub.link/tags/api" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>api</span></a> <a href="https://zhub.link/tags/aiohttp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>aiohttp</span></a></p>
#aiohttp<p>aiohttp 3.12.2 is out! Fixes Content-Length header regression for non-GET requests with None body. Now correctly sets to 0. <a class="hashtag" href="https://bsky.app/search?q=%23python" rel="nofollow noopener" target="_blank">#python</a> <a class="hashtag" href="https://bsky.app/search?q=%23aiohttp" rel="nofollow noopener" target="_blank">#aiohttp</a> <a href="https://github.com/aio-libs/aiohttp/releases/tag/v3.12.2" rel="nofollow noopener" target="_blank">github.com/aio-libs/aio...</a><br><br><a href="https://github.com/aio-libs/aiohttp/releases/tag/v3.12.2" rel="nofollow noopener" target="_blank">Release 3.12.2 · aio-libs/aioh...</a></p>
🟡🐍Sviatoslove.pie♥🇺🇦#StandWithUkraine🙏 | українець на чужині<p><a class="hashtag" href="https://bsky.app/search?q=%23Python" rel="nofollow noopener" target="_blank">#Python</a> <a class="hashtag" href="https://bsky.app/search?q=%23aiohttp" rel="nofollow noopener" target="_blank">#aiohttp</a> <a class="hashtag" href="https://bsky.app/search?q=%23aiohttp" rel="nofollow noopener" target="_blank">#aiohttp</a><br><br>RE: <a href="https://bsky.app/profile/did:plc:xamdvmcdsnzogzednxa4auol/post/3lq3lummwpk2q" rel="nofollow noopener" target="_blank">https://bsky.app/profile/did:plc:xamdvmcdsnzogzednxa4auol/post/3lq3lummwpk2q</a></p>
🟡🐍Sviatoslove.pie♥🇺🇦#StandWithUkraine🙏 | українець на чужині<p><a class="hashtag" href="https://bsky.app/search?q=%23Python" rel="nofollow noopener" target="_blank">#Python</a> <a class="hashtag" href="https://bsky.app/search?q=%23aiohttp" rel="nofollow noopener" target="_blank">#aiohttp</a> <a class="hashtag" href="https://bsky.app/search?q=%23aiohttp" rel="nofollow noopener" target="_blank">#aiohttp</a><br><br>RE: <a href="https://bsky.app/profile/did:plc:xamdvmcdsnzogzednxa4auol/post/3lpxao3l4zc2i" rel="nofollow noopener" target="_blank">https://bsky.app/profile/did:plc:xamdvmcdsnzogzednxa4auol/post/3lpxao3l4zc2i</a></p>
🟡🐍Sviatoslove.pie♥🇺🇦#StandWithUkraine🙏 | українець на чужині<p><a class="mention" href="https://bsky.app/profile/bdraco.org" rel="nofollow noopener" target="_blank">@bdraco.org</a> made the <a class="hashtag" href="https://bsky.app/search?q=%23PyConUS" rel="nofollow noopener" target="_blank">#PyConUS</a> sprint beyond productive! <a class="hashtag" href="https://bsky.app/search?q=%23aio-libs" rel="nofollow noopener" target="_blank">#aio-libs</a> <a class="hashtag" href="https://bsky.app/search?q=%23aiohttp" rel="nofollow noopener" target="_blank">#aiohttp</a> <a class="hashtag" href="https://bsky.app/search?q=%23Python" rel="nofollow noopener" target="_blank">#Python</a> <a class="hashtag" href="https://bsky.app/search?q=%23PyConUS2025" rel="nofollow noopener" target="_blank">#PyConUS2025</a><br><br>RE: <a href="https://bsky.app/profile/did:plc:xamdvmcdsnzogzednxa4auol/post/3lpnr5v3rts2n" rel="nofollow noopener" target="_blank">https://bsky.app/profile/did:plc:xamdvmcdsnzogzednxa4auol/post/3lpnr5v3rts2n</a></p>
#aio-libs: aiohttp and ecosystem<p>Had a great time hacking on <a class="mention" href="https://bsky.brid.gy/ap/did:plc:xamdvmcdsnzogzednxa4auol" rel="nofollow noopener" target="_blank">@aiohttp.org</a> (<a class="mention" href="https://bsky.brid.gy/ap/did:plc:pcaislxvfn4u2qrzhtxmoimt" rel="nofollow noopener" target="_blank">@bdraco.org</a> and <a class="mention" href="https://bsky.brid.gy/ap/did:plc:ve6s3mxkefjaxty3m4fdqumn" rel="nofollow noopener" target="_blank">@webknjaz.me</a>). Got a few new contributors and sirosen lurking in, as well as achimnol the aiosignal maintainer. Looking forward to gathering again tomorrow! <a href="https://us.pycon.org/2025/events/dev-sprints/#sprint-23" rel="nofollow noopener" target="_blank">us.pycon.org/2025/events/...</a> <a class="hashtag" href="https://bsky.app/search?q=%23aio-libs" rel="nofollow noopener" target="_blank">#aio-libs</a> <a class="hashtag" href="https://bsky.app/search?q=%23aiohttp" rel="nofollow noopener" target="_blank">#aiohttp</a> <a class="hashtag" href="https://bsky.app/search?q=%23Python" rel="nofollow noopener" target="_blank">#Python</a> <a class="hashtag" href="https://bsky.app/search?q=%23PyConUS" rel="nofollow noopener" target="_blank">#PyConUS</a></p>
@aio-libs<p>Had a great time hacking on <span class="h-card" translate="no"><a href="https://fosstodon.org/@aiohttp" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>aiohttp</span></a></span> (bdraco and <span class="h-card" translate="no"><a href="https://mastodon.social/@webknjaz" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>webknjaz</span></a></span>).</p><p>Got a few new contributors and <span class="h-card" translate="no"><a href="https://mastodon.social/@sirosen" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>sirosen</span></a></span> lurking in, as well as <span class="h-card" translate="no"><a href="https://fosstodon.org/@achimnol" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>achimnol</span></a></span> the aiomonitor maintainer.</p><p>Looking forward to gathering again tomorrow!</p><p><a href="https://us.pycon.org/2025/events/dev-sprints/#sprint-23" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">us.pycon.org/2025/events/dev-s</span><span class="invisible">prints/#sprint-23</span></a></p><p><a href="https://fosstodon.org/tags/aio" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>aio</span></a>-libs <a href="https://fosstodon.org/tags/aiohttp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>aiohttp</span></a> <a href="https://fosstodon.org/tags/Python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Python</span></a> <a href="https://fosstodon.org/tags/PyConUS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>PyConUS</span></a></p><p>UPD (May 26): typo correction — s/aiosignal/aiomonitor/</p>
Habr<p>FastOpenAPI: автодокументация OpenAPI для разных фреймворков на Python</p><p>Всем привет! Меня зовут Никита Рыженков, и я хочу поделиться опытом разработки библиотеки FastOpenAPI. Это инструмент, который приносит удобный стиль маршрутизации FastAPI и автоматическую документацию OpenAPI в целый ряд Python-фреймворков. Идея родилась из личной боли: в одном проекте приходилось поддерживать OpenAPI-документацию сразу в нескольких фреймворках, и я устал дублировать решения под каждый из них. Вдохновившись лаконичностью FastAPI, я решил создать унифицированный подход для Flask, AioHttp, Sanic, Falcon, Starlette, Quart, Tornado – назвал его FastOpenAPI​. В этой статье расскажу, какие проблемы решает FastOpenAPI, как он устроен внутри и как им пользоваться с примерами кода под каждый поддерживаемый фреймворк.</p><p><a href="https://habr.com/ru/articles/903622/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">habr.com/ru/articles/903622/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>python</span></a> <a href="https://zhub.link/tags/openapi" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>openapi</span></a> <a href="https://zhub.link/tags/flask" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>flask</span></a> <a href="https://zhub.link/tags/falcon" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>falcon</span></a> <a href="https://zhub.link/tags/aiohttp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>aiohttp</span></a> <a href="https://zhub.link/tags/sanic" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>sanic</span></a> <a href="https://zhub.link/tags/starlette" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>starlette</span></a> <a href="https://zhub.link/tags/tornado" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>tornado</span></a> <a href="https://zhub.link/tags/opensour%D1%81e" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>opensourсe</span></a> <a href="https://zhub.link/tags/%D1%81%D0%B5%D0%B7%D0%BE%D0%BD_open_source" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>сезон_open_source</span></a></p>
aiohttp<p>Thanks to months of consistent contributions by <br><span class="h-card" translate="no"><a href="https://fosstodon.org/@lysnikolaou" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>lysnikolaou</span></a></span>, all of the mandatory <span class="h-card" translate="no"><a href="https://fosstodon.org/@aio_libs" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>aio_libs</span></a></span> dependencies of <a href="https://fosstodon.org/tags/aiohttp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>aiohttp</span></a> now ship free-threaded variants of <a href="https://fosstodon.org/tags/wheels" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>wheels</span></a>!</p><p>This unblocks doing the same in aiohttp eventually!</p><p>Find a minute to thank him, will you?</p><p><a href="https://fosstodon.org/tags/aio_libs" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>aio_libs</span></a> <a href="https://fosstodon.org/tags/Python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Python</span></a> <a href="https://fosstodon.org/tags/Packaging" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Packaging</span></a> <a href="https://fosstodon.org/tags/asyncio" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>asyncio</span></a></p>
Habr<p>Лучшие практики создания отказоустойчивых систем</p><p>Разработка отказоустойчивых систем представляет собой важнейшую компетенцию для инженеров, занятых созданием распределённых и масштабируемых приложений. Под отказоустойчивостью понимается способность системы сохранять работоспособность в условиях сбоев отдельных компонентов или недоступности внешних сервисов. В данной статье рассматриваются практики обеспечения устойчивости на уровне программного кода, в частности в контексте серверных приложений, реализованных на языках Python и Java. Особое внимание уделяется методам повышения надёжности при временных сбоях, включая: повторные попытки выполнения операций с экспоненциальной задержкой (exponential backoff), использование шаблона circuit breaker, механизмы плавной деградации функциональности (graceful degradation), задание таймаутов, реализация идемпотентности, ограничение одновременных вызовов (bulkhead isolation), а также внедрение систем мониторинга и алертинга. Приводимые примеры охватывают типовые сценарии — обращение к внешним API, взаимодействие с базами данных и выполнение фоновых задач.</p><p><a href="https://habr.com/ru/articles/896638/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">habr.com/ru/articles/896638/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>python</span></a> <a href="https://zhub.link/tags/java" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>java</span></a> <a href="https://zhub.link/tags/spring_boot" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>spring_boot</span></a> <a href="https://zhub.link/tags/aiohttp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>aiohttp</span></a> <a href="https://zhub.link/tags/%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D1%8C" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>безопасность</span></a> <a href="https://zhub.link/tags/%D0%BE%D1%82%D0%BA%D0%B0%D0%B7%D0%BE%D1%83%D1%81%D1%82%D0%BE%D0%B9%D1%87%D0%B8%D0%B2%D1%8B%D0%B5_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%8B" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>отказоустойчивые_системы</span></a> <a href="https://zhub.link/tags/%D0%BE%D1%82%D0%BA%D0%B0%D0%B7%D0%BE%D1%83%D1%81%D1%82%D0%BE%D0%B9%D1%87%D0%B8%D0%B2%D0%BE%D1%81%D1%82%D1%8C" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>отказоустойчивость</span></a> <a href="https://zhub.link/tags/%D1%87%D0%B8%D1%81%D1%82%D1%8B%D0%B9_%D0%BA%D0%BE%D0%B4" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>чистый_код</span></a></p>
Habr<p>Массовая асинхронная обработка запросов с последующей синхронной CPU-bound логикой</p><p>Столкнулись с обработкой огромного числа запросов и сложной логикой? В новой статье показано, как эффективно обрабатывать до 1 000 000 запросов к API, использовать асинхронный подход для быстрого получения данных и параллельно выполнять тяжелые вычисления в отдельных процессах благодаря ProcessPoolExecutor. Узнайте, как совмещать массовый асинхронный ввод-вывод с CPU-bound обработкой, эффективно масштабировать решения и оптимизировать производительность!</p><p><a href="https://habr.com/ru/articles/869142/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">habr.com/ru/articles/869142/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/asyncio" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>asyncio</span></a> <a href="https://zhub.link/tags/aiohttp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>aiohttp</span></a></p>
Tao of Mac<p>Annotating Arcane Screenshots using Azure OpenAI, The Hard Way</p><p>To make a long story short, Arcane ended yesterday, and during some idle browsing I came across a pretty amazing set of wallpapers that someone generated by taking 4K frames and up(...)</p><p><a href="https://mastodon.social/tags/aiohttp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>aiohttp</span></a> <a href="https://mastodon.social/tags/arcane" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>arcane</span></a> <a href="https://mastodon.social/tags/azure" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>azure</span></a> <a href="https://mastodon.social/tags/captioning" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>captioning</span></a> <a href="https://mastodon.social/tags/classification" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>classification</span></a> <a href="https://mastodon.social/tags/gpt4o" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>gpt4o</span></a> <a href="https://mastodon.social/tags/image" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>image</span></a> <a href="https://mastodon.social/tags/labeling" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>labeling</span></a> <a href="https://mastodon.social/tags/openai" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>openai</span></a> <a href="https://mastodon.social/tags/python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>python</span></a> <a href="https://mastodon.social/tags/rest" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>rest</span></a> <a href="https://mastodon.social/tags/tagging" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>tagging</span></a></p><p><a href="https://taoofmac.com/space/notes/2024/11/24/1520" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">taoofmac.com/space/notes/2024/</span><span class="invisible">11/24/1520</span></a></p>
Habr<p>FastAPI + APScheduler: Простой пошаговый гайд по созданию асинхронного API для мониторинга валют по расписанию на Python</p><p>Как создать асинхронный API для мониторинга курсов валют на Python? В этом практическом руководстве мы разработаем сервис на FastAPI с интеграцией APScheduler, который будет отслеживать курсы USD и EUR в банках России. Вы узнаете, как реализовать асинхронный парсинг данных, настроить планировщик задач и развернуть приложение в облаке. Проект включает систему аутентификации, фильтрацию данных и REST API — идеальный пример для изучения современной веб-разработки на Python.</p><p><a href="https://habr.com/ru/companies/amvera/articles/859990/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/amvera/a</span><span class="invisible">rticles/859990/</span></a></p><p><a href="https://zhub.link/tags/restapi" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>restapi</span></a> <a href="https://zhub.link/tags/fastapi" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>fastapi</span></a> <a href="https://zhub.link/tags/python_api" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>python_api</span></a> <a href="https://zhub.link/tags/sqlalchemy_20" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>sqlalchemy_20</span></a> <a href="https://zhub.link/tags/sqlite3" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>sqlite3</span></a> <a href="https://zhub.link/tags/aiosqlite" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>aiosqlite</span></a> <a href="https://zhub.link/tags/%D0%BF%D0%B0%D1%80%D1%81%D0%B8%D0%BD%D0%B3_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>парсинг_данных</span></a> <a href="https://zhub.link/tags/%D0%B0%D1%81%D0%B8%D0%BD%D1%85%D1%80%D0%BE%D0%BD%D0%BD%D1%8B%D0%B9_%D0%BF%D0%B0%D1%80%D1%81%D0%B8%D0%BD%D0%B3_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>асинхронный_парсинг_данных</span></a> <a href="https://zhub.link/tags/aiohttp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>aiohttp</span></a> <a href="https://zhub.link/tags/%D0%BA%D1%83%D1%80%D1%81_%D0%B2%D0%B0%D0%BB%D1%8E%D1%82_%D0%BD%D0%B0_python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>курс_валют_на_python</span></a></p>
🇺🇦 Sviatoslav Sydorenko<p>✈️ Going home following the <a href="https://mastodon.social/tags/aiohttp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>aiohttp</span></a> <a href="https://mastodon.social/tags/sprint" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>sprint</span></a> at @ManGroup hackathon. Got to see two other active maintainers IRL 🎉, and maintainers of other wonderful projects (@tiangolo <span class="h-card" translate="no"><a href="https://fosstodon.org/@jarekpotiuk" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>jarekpotiuk</span></a></span>).</p><p>Met many outstanding contributors and had fun exploring rabbit holes!</p><p>Tnx, Man!</p><p><a href="https://mastodon.social/tags/python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>python</span></a></p>
🇺🇦 Sviatoslav Sydorenko<p>Off to Man Group hackathon in London to lead an <a href="https://mastodon.social/tags/aiohttp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>aiohttp</span></a> sprint day with two other maintainers (Nick Koston nand Sam Bull).</p><p>Looking forward to seeing a bunch of folks I haven't seen in a while (👋 <span class="h-card" translate="no"><a href="https://fosstodon.org/@tiangolo" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>tiangolo</span></a></span> and <span class="h-card" translate="no"><a href="https://fosstodon.org/@jarekpotiuk" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>jarekpotiuk</span></a></span>).</p><p><a href="https://mastodon.social/tags/python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>python</span></a> <a href="https://mastodon.social/tags/opensource" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>opensource</span></a></p>
Habr<p>Настраиваем взаимодействие с внутренним API приложения через свой API-proxy</p><p>Что делать, если хочется повзаимодействовать с приложением-мессенджером, но его издатель такой опции в виде API для нас не предусмотрел? Конечно же стоит попробовать себя в качестве джуниор-минус реверс-инженера - всего лишь на уровне перехвата HTTP-запросов с их последующим воспроизведением.</p><p><a href="https://habr.com/ru/articles/821345/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">habr.com/ru/articles/821345/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/python" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>python</span></a> <a href="https://zhub.link/tags/api" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>api</span></a> <a href="https://zhub.link/tags/aiohttp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>aiohttp</span></a> <a href="https://zhub.link/tags/charles_proxy" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>charles_proxy</span></a></p>