GoProg

 
Топ хэштегов


Архив

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

В 1940-х годах известный математик Джон фон Нейман пытался создать гипотетическую машину, которая может воспроизводить сама себя. Джону фон Нейману удалось создать математическую модель такой машины с очень сложными правилами. Спустя годы Джон Конвей заинтересовался этой проблемой и попытался упростить… Читать дальше

Наверно, многие из вас слышали про алгоритм сжатия Snappy, разработанный в недрах Google (в прошлом Zippy). На данный момент Snappy активно используется в таких проектах как Big Table, MapReduce, Apache Cassandra… Читать дальше

Фильтр Блума (Bloom filter) — это вероятностная структура данных, придуманная Бертоном Блумом в 1970 году, позволяющая компактно хранить множество элементов и проверять принадлежность заданного элемента к множеству. При этом существует возможность… Читать дальше

SQLite — это встраиваемая библиотека, написанная на Си, в которой реализован движок реляционной СУБД с поддержкой многих вещей из стандарта SQL 92. При этом вся база данных хранится в единственном стандартном файле на машине… Читать дальше

До Go 1.16 чтобы встроить файл в наш бинарник на Go, например, какие-то шаблоны, html файлы, если это веб сервер или даже README.md, нам приходилось либо саморучно затаскивать их в наш код, либо пользоваться сторонними пакетами. Первый способ… Читать дальше

BoltDB — это простое встраиваемое хранилище, построенное по принципу ключ/значение, полностью написанное на языке программирования Go, что в значительной степени упрощает его поддержку. Изначально целью проекта было создать простое, быстрое и надежное хранилище, которое может быть использовано в проектах… Читать дальше

GitHub Actions — это CI/CD система, интегрированная в GitHub. Сервис бесплатен для открытых проектов, и даже для закрытых, если ваши билды собираются не слишком долго и/или не слишком часто. Более экшенс обеспечивают очень простой способ для конвейеров GitOps, так как вам не нужен дополнительный… Читать дальше

TensorFlow — это ML-framework от Google, который предназначен для проектирования, создания и изучения моделей глубокого обучения. Вы можете использовать TensorFlow, чтобы производить численные вычисления. Само по себе это не кажется специфичным, однако эти вычисления производятся с помощью data-flow графов. В этих графах… Читать дальше

Apache Kafka очень производительный инструмент, который нужен для перенаправления потоков данных из одного места в другое, с обработкой и без. Проект достаточно зрелый и написан на Scala и Java, а среди тех, кто его активно использует, много гигантов IT индустрии: LinkedIn, Netflix, Yahoo, Twitter, Pinterest, и другие. Проект стал невероятно популярным во многом благодаря своим неоспоримым… Читать дальше