home.social

#многопроцессность — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #многопроцессность, aggregated by home.social.

fetched live
  1. Погружение в многозадачность Python: процессы, потоки, GIL и асинхронность

    Многозадачность кажется простой темой, пока дело не доходит до Python и GIL. В статье разбирается: чем процесс отличается от программы, зачем нужны потоки, что такое ядро процессора и в чём разница между конкурентностью и параллелизмом. Затем – специфика Python: как GIL влияет на потоки, когда стоит использовать процессы, асинхронность или корутины, и чем они отличаются от green threads. Материал сопровождается схемами, рабочими примерами кода и реальными замерами производительности для CPU-bound и I/O-bound задач, а в конце – практические выводы о том, что и когда выбирать.

    habr.com/ru/articles/1048886/

    #python #gil #многопоточность #многопроцессность #asyncio #конкурентность #параллелизм #gevent

  2. Решаем архитектурную проблему nginx с HTTP/3: опыт Angie и магия eBPF

    Для пользователя может показаться, что переход с HTTP/2 на HTTP/3 — это просто замена TCP на UDP в конфиге. Но для серверного ПО с многопроцессной архитектурой этот шаг превращается в настоящую «головную боль». Классическая схема с accept() , на которой годами строилась работа с TCP‑соединениями, в мире QUIC попросту не существует. Пакеты летят в UDP‑порт, и ядро ОС больше не знает, какому именно рабочему процессу их отдать. В оригинальном nginx это привело к тому, что поддержка HTTP/3 уже долгое время остается «экспериментальной» и ограниченной: она страдает от проблем с обрывами сессий при миграции клиентов и деградации сервиса при обновлении конфигурации. Для многих это стало стоп‑фактором для внедрения протокола в реальный продакшен. В этой статье мы расскажем, как в Angie 1.11 нам удалось устранить эти фундаментальные недостатки. Мы не просто добавили поддержку протокола, а пересмотрели механику взаимодействия с ядром. Путь от простых хешей до создания полноценного аналога accept() для QUIC с помощью BPF‑программ позволил нам заявить: реализация HTTP/3 в Angie закончена, лишена «детских болезней» nginx и полностью готова к эксплуатации в высоконагруженных средах. Добро пожаловать под капот современного транспорта данных.

    habr.com/ru/articles/989748/

    #http3 #nginx #quic #сетевое_программирование #ebpf #bpf #angie #h3 #многопроцессность #udp

Share on Mastodon

Enter the server where you have an account.