home.social

#каналы — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #каналы, aggregated by home.social.

fetched live
  1. [Перевод] Fire‑and‑forget в Go: практический гайд по управляемым фоновым задачам

    У go func() есть неприятная особенность: вместе с результатом выполнения легко потерять контроль над самой задачей. Разберём, как пропускать такую работу через единый пул воркеров, отвязывать её от контекста запроса и при этом гарантированно дождаться уже принятых задач при штатной остановке сервиса. Разобрать решение

    habr.com/ru/companies/otus/art

    #Go #горутины #конкурентность #многопоточность #каналы #фоновые_задачи #воркеры #контекст #производительность #архитектура_приложений

  2. Конвейеры на Channels: как не получить тихую утечку памяти и вечно висящий воркер

    Неограниченный канал спокойно работает до первого замедления потребителя, после чего очередь начинает расти, память — заканчиваться, а фоновый воркер может зависнуть при остановке сервиса. В статье разберём, как строить конвейеры на System.Threading.Channels : настраивать обратное давление, корректно завершать обработку, не терять исключения и безопасно использовать каналы в ASP.NET Core.

    habr.com/ru/companies/otus/art

    #SystemThreadingChannels #C# #NET #ASPNET_Core #асинхронное_программирование #каналы #конвейеры_обработки_данных #обратное_давление #фоновые_задачи #утечка_памяти

  3. Зоопарк каналов в Rust: какой выбрать и как не споткнуться

    Каналы - механизм передачи данных между потоками или асинхронными задачами. Идея простая: один конец отправляет сообщения (отправитель), другой их получает (получатель), а вся синхронизация спрятана внутри. За этим стоит целый подход: вместо того чтобы разделять память и вручную её блокировать, данные передают сообщением. На практике же стоит копнуть глубже, и оказывается, что каналов в экосистеме Rust целый зоопарк: std::sync::mpsc , crossbeam-channel , tokio::sync , flume , async-channel , kanal и ещё несколько менее известных. Они отличаются моделью, поддержкой асинхронности, скоростью и кучей мелких деталей, о которые легко споткнуться. В этой статье разберёмся, какие каналы бывают, чем они отличаются и какой брать под конкретную задачу.

    habr.com/ru/articles/1044648/

    #rust #каналы #flume #tokio #crossbeam #kanal #многопоточность #channels #sync #асинхронность

  4. Насколько блокировка Telegram эффективна?

    Я задался вопросом: насколько блокировка Telegram оказалась эффективной со стороны цензоров? Косвенно можно оценить и уровень использования VPN среди населения. Логика простая: Telegram — один из крупнейших каналов распространения информации, и если доступ к нему ограничивается, поведение аудитории должно это отразить. Отдельный плюс исследования — его воспроизводимость: при желании любой может повторить подход и проверить результаты.

    habr.com/ru/articles/1018532/

    #Telegram #блокировка #цензура #VPN #аудитория #просмотры #каналы #политика #анализ #распространение_информации

  5. Каналы в Go

    Каналы — инструмент для передачи данных между горутинами. Это фундаментальная концепция, на которой строится вся модель параллелизма в языке, и одна из ключевых особенностей, которая делает Go уникальным среди современных языков программирования. За внешней простотой синтаксиса ch <- value и <-ch скрывается сложная реализация, которая включает в себя кольцевые буферы, системы очередей, механизмы блокировки и тесную интеграцию с планировщиком горутин. В этой статье разберем их внутреннее устройство на уровне runtime и рассмотрим паттерны использования.

    habr.com/ru/articles/926292/

    #go #golang #ch #chan #channel #каналы #каналы_в_go

  6. Введение в конкуренцию Go

    Конкуренция (concurrency) в программировании позволяет разным частям программы выполняться независимо друг от друга. Это помогает повысить производительность и эффективнее использовать системные ресурсы. Конкуренция особенно важна для современных приложений, таких как сетевые сервисы или программы, работающие с множеством пользовательских запросов. Go предлагает уникальный подход к реализации конкуренции, который отличается от других языков программирования. В основе этого подхода лежат горутины и каналы — основные инструменты для написания конкурентного кода. В этом материале мы рассмотрим, как Go помогает решать задачи конкуренции, чем конкуренция отличается от параллелизма и почему использование этих инструментов делает приложения более быстрыми и масштабируемыми.

    habr.com/ru/articles/896940/

    #go #golang #конкуренция #параллелизм #каналы #горутины

  7. Совместная работа для тех, кого за 100: коммуникация, команды и контроль задач для среднего бизнеса

    В своей предыдущей статье я рассказывала о том, как организовать совместную работу в небольших, но быстро растущих компаниях. Сегодня посмотрим на компании, которые преодолели первые точки роста, увеличили штат и, возможно, внедрили базовые принципы совместной работы. Важная задача на этом этапе — осознать, что ставшие привычными инструменты совместной работы больше не работают, необходимо искать другие решения. Сам термин «совместная работа» с нами уже очень давно, но каждый вкладывает в него разные понятия. Во многом это зависит и от размера компании. Для маленьких и растущих компаний — это прежде всего удобные коммуникации. Для более крупного бизнеса — это контроль, продуктивность, безопасность. Посмотрим, с какими задачами совместной работы сталкиваются компании среднего размера и как можно их решить.

    habr.com/ru/articles/885182/

    #Совместная_работа #чаты #каналы #видеозвонки #структура_компании #задачи #коллабы

  8. Да мля.... мало нам одних долбоклювов в Туркмении (поливают гигантские парки, изливают фантаны, сливают дренаж ради пафоса в пустыню... вдруг наполнится!), так теперь Узбекистон начал аналогичной хренью заниматься.
    Наблюдал в том году по спутниковым снимкам как они копают канал куда-то. Канала обычный, земляная канава. + строят гидроузел на дренажном канале с полей.
    А оно вон чо!
    Сейчас заметил, что начали наполнять озеро как пару-тройку месяцев.
    Вот так мы экономим воду и возражаем Аральское море, ага.

    #арал #каналы

  9. Этот парень был из тех, кто просто любит связь

    Однажды в 1957 году советский инженер подал заявку на выдачу патента на устройство вызова и коммутации каналов радиотелефонной связи. По сути, это был мобильный телефон, по форме — трёхкилограммовая коробка с диском для набора номера, по содержанию — система с приёмником, преобразователем, передатчиком, коммутатором и дешифратором. — Два, двенадцать, восемьдесят пять, ноль, шесть — это твой номер Инженера звали Леонид Куприянович, а устройство — ЛК-1.

    habr.com/ru/companies/gazpromb

    #банк #финансы #коммуникация #устройство #связь #каналы #радиотелефонная_связь

  10. Как мы написали конкурентные структуры данных на C++ и научились их верифицировать

    Привет! В команде ВКонтакте мы переписываем рантайм движков баз данных — они становятся быстрее, надёжнее, а ещё с новым рантаймом проще писать код. Однако есть нюанс: в новом рантайме много конкурентных структур данных, в том числе нужных для работы с корутинами из С++20. Появляется интересная задача — проверять корректность этих конкурентных структур данных до выхода кода в продакшен. Для решения этой задачи команда ВКонтакте вместе со студентами из университетов ИТМО и СПбГУ работала над научно-исследовательским проектом — верификацией конкурентных структур данных на языке C++. В этой статье подробно расскажем, как мы в рамках проекта проверяли корректность наших конкурентных структур данных и заодно исправили найденную в нашем новом рантайме ошибку.

    habr.com/ru/companies/vk/artic

    #concurrency #корутины #каналы #верификация #c++ #многопоточность #параллельное_программирование #tla+

  11. [Перевод] Xv6: учебная Unix-подобная ОС. Глава 8. Файловая система

    Файловая система организует и хранит данные. Пользователи и программы работают с данными, а файловая система сохранит данные даже после перезагрузки компьютера. Файловая система xv6 предлагает Unix-подобные файлы, директории и пути и хранит данные на virtio-диске . Глава расскажет, какие задачи решает файловая система xv6.

    habr.com/ru/articles/805243/

    #xv6 #файловая_система #inode #журнал #директории #каналы #файловые_дескрипторы #пути_к_файлам #сбои #восстановление

  12. [Перевод] Xv6: учебная Unix-подобная ОС. Глава 7. Планирование процессов

    Глава расскажет, что такое мультиплексирование процессов, как xv6 переключает процессы, как xv6 синхронизирует процессы с помощью sleep и wakeup, как работает семафор, как работает канал (pipe), как случаются инверсии приоритетов и образуются конвои процессов, как правильно убить процесс и укротить грохочущее стадо процессов.

    habr.com/ru/articles/801567/

    #xv6 #семафор #переключение_контекста #мультиплексирование #условные_переменные #планировщик #sleep #wakeup #взаимоблокировки #каналы

  13. [Перевод] Xv6 Глава 1: Интерфейсы операционной системы

    Эта книга рассказывает о принципах работы операционных систем на примере xv6. Операционная система xv6 реализует базовый интерфейс, который Кен Томпсон и Деннис Ритчи предложили в операционной системе Unix, и подражает внутреннему устройству Unix. Комбинации простейших механизмов Unix дают удивительную свободу действий. Современные операционные системы признали успех Unix и реализуют похожие интерфейсы - BSD, Linux, macOS, Solaris, и даже Microsoft Windows. Изучение xv6 поможет понять работу и других операционных систем.

    habr.com/ru/articles/789478/

    #xv6 #операционная_система #unix #системные_вызовы #файловая_система #процесс #вводвывод #shell #каналы #ядро

  14. Квантовое распределение ключей в оптических транспортных сетях

    Особенности мультиплексирования квантовых и информационных каналов оптической транспортной сети В современном мире, где информация стала самым ценным ресурсом, безопасность передачи данных приобретает критическое значение. Ассиметричные методы криптографии, на которых основана большая часть современных систем безопасности, смогут быть подвержены новым угрозам, связанным с развитием квантовых компьютеров. В это время на сцену выходит квантовая криптография, обещающая революцию в области защиты информации. Квантовая криптография использует законы квантовой физики для создания абсолютно защищенных способов передачи информации. В центре этой технологии находится процесс, известный как квантовое распределение ключей (КРК). Этот процесс позволяет двум сторонам формировать у себя коррелированные битовые последовательности, которые в дальнейшем могут быть использованы сторонами как симметричные криптографические ключи. При этом никакой злоумышленник не сможет перехватить или скопировать этот ключ без обнаружения благодаря уникальным свойствам квантовых частиц, таких как фотоны, которые изменяют свое состояние при попытке измерения или копирования, тем самым сигнализируя о попытке вмешательства. Таким образом, квантовое распределение ключей предлагает решение, устойчивое к атакам даже с использованием квантовых компьютеров. При этом даже в случае, если полноценный квантовый компьютер никогда не появится, технология принесет пользу в части автоматизации процесса выработки и распределения симметричных ключей, тем самым исключая из него человеческий фактор.

    habr.com/ru/companies/quanttel

    #распределение_ключей #транспортная_сеть #информационные_каналы #усилитель #системы #фотоны #диапазон #каналы #сигналы #процесс