zhub.link is one of the many independent Mastodon servers you can use to participate in the fediverse.

Administered by:

Server stats:

28
active users

#golang

10 posts9 participants0 posts today
Мя :sparkles_lesbian: ��<p>Remember I said, I want <a href="https://mastodon.ml/tags/golang" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>golang</span></a> Iterator::map implementation on a poster?<br>I wasn't joking, so here it is, and im gonna print it on photo-paper tomorrow</p><p>(Contact for SVG source)</p>
Habr<p>Коротко про regexp в Go</p><p>Привет, Хабр! Сегодня рассмотрим regexp — стандартный пакет Go для работы с регулярными выражениями. Если вы уже пользовались регулярками в других языках (например, Python, JavaScript или Perl), то знаете, как они могут нагружать процессор и вызывать некоторые подвисания. Основное отличие Go — он использует движок RE2 , который не поддерживает бэктрекинг. Это значит, что он работает за линейное время и не устроит сюрпризов в виде зависшего сервера.</p><p><a href="https://habr.com/ru/companies/otus/articles/889320/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/otus/art</span><span class="invisible">icles/889320/</span></a></p><p><a href="https://zhub.link/tags/regexp" class="mention hashtag" rel="tag">#<span>regexp</span></a> <a href="https://zhub.link/tags/golang" class="mention hashtag" rel="tag">#<span>golang</span></a> <a href="https://zhub.link/tags/%D1%80%D0%B5%D0%B3%D1%83%D0%BB%D1%8F%D1%80%D0%BD%D1%8B%D0%B5_%D0%B2%D1%8B%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F" class="mention hashtag" rel="tag">#<span>регулярные_выражения</span></a></p>
Habr<p>15 мс на ответ: как мы добились высокой скорости работы API Gateway</p><p>Меня зовут Николай Кокоулин, я бэкенд-разработчик в Ви.Tech — это IT-дочка ВсеИнструменты.ру. В этой статье поделюсь нашим опытом о том, как мы в ходе разделения монолитного приложения на микросервисы столкнулись с вызовом: как сохранить производительность и масштабируемость системы при росте нагрузки.</p><p><a href="https://habr.com/ru/articles/890954/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="">habr.com/ru/articles/890954/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/golang" class="mention hashtag" rel="tag">#<span>golang</span></a> <a href="https://zhub.link/tags/%D0%BA%D1%8D%D1%88%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5" class="mention hashtag" rel="tag">#<span>кэширование</span></a> <a href="https://zhub.link/tags/api" class="mention hashtag" rel="tag">#<span>api</span></a> <a href="https://zhub.link/tags/lru" class="mention hashtag" rel="tag">#<span>lru</span></a> <a href="https://zhub.link/tags/lfu" class="mention hashtag" rel="tag">#<span>lfu</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="tag">#<span>оптимизация</span></a></p>
Habr<p>Меньше кода, больше результата: применяем sqlc для работы с БД</p><p>Привет, Хабр! Инструмент, который генерирует производительный и безопасный код для работы с базой данных — миф или реальность? В этой статье обсудим, что такое sqlc, откуда он появился и какие идеи в него заложены. Разберём его возможности и ограничения, а также кейсы, когда он подходит лучше всего.</p><p><a href="https://habr.com/ru/companies/uzum/articles/890654/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/uzum/art</span><span class="invisible">icles/890654/</span></a></p><p><a href="https://zhub.link/tags/go" class="mention hashtag" rel="tag">#<span>go</span></a> <a href="https://zhub.link/tags/sqlc" class="mention hashtag" rel="tag">#<span>sqlc</span></a> <a href="https://zhub.link/tags/golang" class="mention hashtag" rel="tag">#<span>golang</span></a> <a href="https://zhub.link/tags/postgresql" class="mention hashtag" rel="tag">#<span>postgresql</span></a> <a href="https://zhub.link/tags/uzum" class="mention hashtag" rel="tag">#<span>uzum</span></a> <a href="https://zhub.link/tags/uzumtech" class="mention hashtag" rel="tag">#<span>uzumtech</span></a></p>
darq<p>Why is the <a href="https://goeppingen.social/tags/LLM" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>LLM</span></a> space dominated by <a href="https://goeppingen.social/tags/Python" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Python</span></a>?<br>Why not <a href="https://goeppingen.social/tags/golang" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>golang</span></a> or <a href="https://goeppingen.social/tags/rust" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>rust</span></a>?<br>Wouldn't that tremendously increase efficiency? <br>What does Python have that those 2 languages don't?</p>
Dmitry Kudryavtsev<p><a href="https://mstdn.social/tags/Microsoft" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Microsoft</span></a> rewrites a tool from dynamic language to statically compiled language and surprised by increased performance.</p><p>It's as if we forgot the roots of software engineering.</p><p><a href="https://devblogs.microsoft.com/typescript/typescript-native-port/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">devblogs.microsoft.com/typescr</span><span class="invisible">ipt/typescript-native-port/</span></a></p><p><a href="https://mstdn.social/tags/golang" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>golang</span></a> <a href="https://mstdn.social/tags/typescript" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>typescript</span></a></p>
muesli<p>Microsoft rewriting TypeScript in <a href="https://mastodon.social/tags/golang" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>golang</span></a> wasn't on my Bingo card for this year 🤔</p><p><a href="https://devblogs.microsoft.com/typescript/typescript-native-port/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">devblogs.microsoft.com/typescr</span><span class="invisible">ipt/typescript-native-port/</span></a></p>
Habr<p>Fan-Out, Fan-In с динамической балансировкой горутин в Golang</p><p>Привет, Хабр! Когда речь заходит о конкурентности в Go, паттерн Fan-Out, Fan-In — одна из важных концепций на мой взгляд. Он позволяет распределять задачи между несколькими горутинами и затем собирать результаты обратно в один поток.</p><p><a href="https://habr.com/ru/companies/otus/articles/886740/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/otus/art</span><span class="invisible">icles/886740/</span></a></p><p><a href="https://zhub.link/tags/golang" class="mention hashtag" rel="tag">#<span>golang</span></a> <a href="https://zhub.link/tags/%D0%BA%D0%BE%D0%BD%D0%BA%D1%83%D1%80%D0%B5%D0%BD%D1%82%D0%BD%D0%BE%D1%81%D1%82%D1%8C" class="mention hashtag" rel="tag">#<span>конкурентность</span></a> <a href="https://zhub.link/tags/%D0%B3%D0%BE%D1%80%D1%83%D1%82%D0%B8%D0%BD%D1%8B" class="mention hashtag" rel="tag">#<span>горутины</span></a></p>
Habr<p>Как я настроил Observability для своих pet-проектов. Часть 2</p><p>В первой части мы развернули базовый стек для сбора метрик, логов и трейсов и интегрировали его с приложением на Laravel. Теперь покажу настройку Observability на примере простого Golang-приложения — настроим в нём структурированные логи, распределённый трейсинг и метрики, а также интегрируем с нашим стеком.</p><p><a href="https://habr.com/ru/articles/888682/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="">habr.com/ru/articles/888682/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/golang" class="mention hashtag" rel="tag">#<span>golang</span></a> <a href="https://zhub.link/tags/go" class="mention hashtag" rel="tag">#<span>go</span></a> <a href="https://zhub.link/tags/observability" class="mention hashtag" rel="tag">#<span>observability</span></a> <a href="https://zhub.link/tags/monitoring" class="mention hashtag" rel="tag">#<span>monitoring</span></a> <a href="https://zhub.link/tags/tracing" class="mention hashtag" rel="tag">#<span>tracing</span></a> <a href="https://zhub.link/tags/logging" class="mention hashtag" rel="tag">#<span>logging</span></a> <a href="https://zhub.link/tags/jaeger" class="mention hashtag" rel="tag">#<span>jaeger</span></a> <a href="https://zhub.link/tags/grafana" class="mention hashtag" rel="tag">#<span>grafana</span></a> <a href="https://zhub.link/tags/vector" class="mention hashtag" rel="tag">#<span>vector</span></a> <a href="https://zhub.link/tags/opentelemetry" class="mention hashtag" rel="tag">#<span>opentelemetry</span></a></p>
Несерьёзный Выдумщик<p>Открытие Эндрю Крапивина о хеш-таблицах и микро-указателях?<br>Чисто гипотетически, может и актуально, но лишь в чистой и голой computer science теории.<br>На практике же полно нюансов реализации, сводящихся к оптимизациям конкретных аппаратных платформ.</p><p>Например, есть <a class="hashtag" href="https://idealists.su/tag/swisstable" rel="nofollow noopener noreferrer" target="_blank">#SwissTable</a> известные с 2018 года, недавно <a class="hashtag" href="https://idealists.su/tag/golang" rel="nofollow noopener noreferrer" target="_blank">#Golang</a> перешёл на них (с версии 1.24). И до него на SwissTable перейти успел <a class="hashtag" href="https://idealists.su/tag/rust" rel="nofollow noopener noreferrer" target="_blank">#Rust</a>.</p><p>Хеш-таблицы Google <a href="https://abseil.io/about/design/swisstables" rel="nofollow noopener noreferrer" target="_blank">SwissTable</a> и Facebook <a href="https://github.com/facebook/folly/blob/main/folly/container/F14.md" rel="nofollow noopener noreferrer" target="_blank">F14</a> примерно одинаковые, одно лишь вариант другого.</p><p>Идея оптимизации работы вокруг использования <a class="hashtag" href="https://idealists.su/tag/simd" rel="nofollow noopener noreferrer" target="_blank">#SIMD</a> инструкций для поиска занятых ячеек и проверки ключа. И в тотально подавляющем большинстве случаев хватает одной проверки блока из восьми элементов.</p><p>Надо ещё много раз поиграться с вариантами реализации какой-либо идеи из чистого computer science. Посмотрев как оно ложится на аппаратную платформу сродни x86-64.</p><ol><li><p>Есть <a href="https://en.wikipedia.org/wiki/Cache_prefetching" rel="nofollow noopener noreferrer" target="_blank">prefetching</a> памяти и работа с ОЗУ идёт через загрузку целиком всей <a href="https://en.wikipedia.org/wiki/CPU_cache#Cache_entries" rel="nofollow noopener noreferrer" target="_blank">cache line</a> в ЦПУ, даже при обращении <strong>на чтение</strong> лишь к одному значению в пару байт.</p></li><li><p>Предыдущий пункт не только про cache misses, но и «локальность данных». Как повышающую производительность, так и приводящих к false sharing при многопоточном использовании структуры данных. &nbsp;</p></li><li><p>Необходимо учитывать и размер страницы виртуальной памяти, чтобы снизить «давление» на TLB и уйти от <a href="https://en.wikipedia.org/wiki/Translation_lookaside_buffer#TLB-miss_handling" rel="nofollow noopener noreferrer" target="_blank">TLB miss</a>.</p></li></ol><p>Для пример, в нагруженных системах используется донастройка системы на huge pages, например, все кто используют модный <a class="hashtag" href="https://idealists.su/tag/dpdk" rel="nofollow noopener noreferrer" target="_blank">#DPDK</a> сам по себе или с каким-нибудь <a class="hashtag" href="https://idealists.su/tag/seastar" rel="nofollow noopener noreferrer" target="_blank">#Seastar</a>:</p><ul><li>Выбравшие не оригинальную <a class="hashtag" href="https://idealists.su/tag/kafka" rel="nofollow noopener noreferrer" target="_blank">#Kafka</a>, а её более производительный аналог <a class="hashtag" href="https://idealists.su/tag/redpanda" rel="nofollow noopener noreferrer" target="_blank">#RedPanda</a>.</li><li>Использующие вместо Apache <a class="hashtag" href="https://idealists.su/tag/cassandra" rel="nofollow noopener noreferrer" target="_blank">#Cassandra</a> более производительную <a class="hashtag" href="https://idealists.su/tag/scylladb" rel="nofollow noopener noreferrer" target="_blank">#ScyllaDB</a></li></ul><p>Голая теория computer science это хорошо и замечательно, но практика омерзительна свой приземлённостью. Прямой проход перебором по небольшому массиву оказывается быстрее, чем использование binary search tree. И совершенно не важно какого именно красно-чёрного или же АВЛ.</p><p>Это не вопрос ретроградства и вызова 40-летней теории :)</p><p><a class="hashtag" href="https://idealists.su/tag/software" rel="nofollow noopener noreferrer" target="_blank">#software</a> <a class="hashtag" href="https://idealists.su/tag/softwaredevelop" rel="nofollow noopener noreferrer" target="_blank">#SoftwareDevelop</a> <a class="hashtag" href="https://idealists.su/tag/программирование" rel="nofollow noopener noreferrer" target="_blank">#программирование</a> <a class="hashtag" href="https://idealists.su/tag/разработка" rel="nofollow noopener noreferrer" target="_blank">#разработка</a> <a class="hashtag" href="https://idealists.su/tag/programming" rel="nofollow noopener noreferrer" target="_blank">#programming</a> <span class="h-card"><a class="u-url mention" href="https://mastodon.social/@russian_mastodon" rel="nofollow noopener noreferrer" target="_blank">@<span>russian_mastodon</span></a></span> <span class="h-card"><a class="u-url mention" href="https://lor.sh/@ru" rel="nofollow noopener noreferrer" target="_blank">@<span>ru</span></a></span> <span class="h-card"><a class="u-url mention" href="https://3zi.ru/@Russia" rel="nofollow noopener noreferrer" target="_blank">@<span>Russia</span></a></span></p>
Habr<p>Syscall и cgo в Go</p><p>Привет, Хабр! В этой статье рассмотрим работу с системными утилитами в Go. Будем напрямую общаться с ядром, дергать системные вызовы и писать код на C, чтобы Go не чувствовал себя одиноким.</p><p><a href="https://habr.com/ru/companies/otus/articles/886062/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/otus/art</span><span class="invisible">icles/886062/</span></a></p><p><a href="https://zhub.link/tags/golang" class="mention hashtag" rel="tag">#<span>golang</span></a> <a href="https://zhub.link/tags/%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%BD%D1%8B%D0%B5_%D1%83%D1%82%D0%B8%D0%BB%D0%B8%D1%82%D1%8B" class="mention hashtag" rel="tag">#<span>системные_утилиты</span></a> <a href="https://zhub.link/tags/syscall" class="mention hashtag" rel="tag">#<span>syscall</span></a> <a href="https://zhub.link/tags/cgo" class="mention hashtag" rel="tag">#<span>cgo</span></a></p>
Habr<p>Запилил 100 проектов на Go и вот что скажу</p><p>Когда начинаешь новый проект, то надо какое то время потратить чтобы подобрать подходящие библиотеки, подготовить структуру проекта, связать все воедино. Это занимает прилично времени. Целый день вполне может уйти. А экономить на этом шаге не стоит. Это ведь как фундамент. И вот, 5 лет назад я опубликовал каркас , который собрал для себя, чтобы делать с ним проекты на Go. С тех пор мне обращались люди и с вопросами и с советами. Я менял компоненты, смотрел что получалось. Благо проектов было предостаточно. Вот и давайте подведем некий итог, что в заложенной структуре хорошо, а что не очень. DI По теме DI ко мне в чаще всего обращались с критикой, в том числе и коллеги. Поэтому с этого и начнем. В основном предлагали 2 идеи</p><p><a href="https://habr.com/ru/articles/887946/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="">habr.com/ru/articles/887946/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/go" class="mention hashtag" rel="tag">#<span>go</span></a> <a href="https://zhub.link/tags/golang" class="mention hashtag" rel="tag">#<span>golang</span></a> <a href="https://zhub.link/tags/%D0%BA%D0%B0%D1%80%D0%BA%D0%B0%D1%81" class="mention hashtag" rel="tag">#<span>каркас</span></a></p>
Habr<p>Как управлять сборками в Go с помощью build tags</p><p>Привет, Хабр! Вы когда-нибудь сталкивались с ситуацией, когда нужно собрать Go-приложение под несколько платформ? Или выключить часть кода в проде, оставив её активной в дев-среде? Возможно, вы просто хотите поддерживать разные версии сборки с кастомными фичами без тонны if runtime.GOOS == &quot;windows&quot; {} ? В этом вам помогут build tags.</p><p><a href="https://habr.com/ru/companies/otus/articles/886044/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/otus/art</span><span class="invisible">icles/886044/</span></a></p><p><a href="https://zhub.link/tags/golang" class="mention hashtag" rel="tag">#<span>golang</span></a> <a href="https://zhub.link/tags/%D0%B4%D0%B6%D0%B5%D0%BD%D0%B5%D1%80%D0%B8%D0%BA%D0%B8" class="mention hashtag" rel="tag">#<span>дженерики</span></a></p>
Habr<p>Как создать свой алгоритм шифрования: от идеи до готового CLI-приложения</p><p>В эпоху цифровых технологий защита информации становится одним из самых актуальных вопросов. На первый взгляд, создание собственного алгоритма шифрования может показаться задачей исключительно для элитных криптографов. Однако, понимание основных принципов, демонстрация работы алгоритма и эксперименты с кодом – вполне достижимая цель для разработчика, желающего углубиться в мир криптографии. В этой статье мы разберем, какие шаги необходимо предпринять для создания собственного алгоритма шифрования, и покажем пример реализации на языке Go.</p><p><a href="https://habr.com/ru/articles/887740/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="">habr.com/ru/articles/887740/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/%D1%88%D0%B8%D1%84%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5" class="mention hashtag" rel="tag">#<span>шифрование</span></a> <a href="https://zhub.link/tags/%D1%88%D0%B8%D1%84%D1%80" class="mention hashtag" rel="tag">#<span>шифр</span></a> <a href="https://zhub.link/tags/golang" class="mention hashtag" rel="tag">#<span>golang</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="tag">#<span>безопасность</span></a> <a href="https://zhub.link/tags/%D0%B3%D0%B0%D0%B9%D0%B4" class="mention hashtag" rel="tag">#<span>гайд</span></a></p>
Habr<p>Выходим за рамки: создание оператора для наблюдения за внешними ресурсами в Kubernetes</p><p>В этой статье мы рассмотрим, как создать оператор, который выходит за рамки кластера и взаимодействует с внешним миром. На примере мониторинга HTTP-серверов вы узнаете, как использовать kubebuilder для разработки custom-операторов и как организовать работу с внешними ресурсами. Статья будет полезна разработчикам, желающим расширить возможности своих Kubernetes-кластеров.</p><p><a href="https://habr.com/ru/companies/flant/articles/884566/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/flant/ar</span><span class="invisible">ticles/884566/</span></a></p><p><a href="https://zhub.link/tags/kubernetes" class="mention hashtag" rel="tag">#<span>kubernetes</span></a> <a href="https://zhub.link/tags/golang" class="mention hashtag" rel="tag">#<span>golang</span></a> <a href="https://zhub.link/tags/%D0%BE%D0%BF%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80" class="mention hashtag" rel="tag">#<span>оператор</span></a> <a href="https://zhub.link/tags/%D0%BA%D0%BE%D0%BD%D1%82%D1%80%D0%BE%D0%BB%D0%BB%D0%B5%D1%80" class="mention hashtag" rel="tag">#<span>контроллер</span></a> <a href="https://zhub.link/tags/devops" class="mention hashtag" rel="tag">#<span>devops</span></a></p>
Really Lazy Bear<p>Still an estimated 10 TiB donated in a month..</p><p>Just a tiny little higher, 10.81 TiB instead of 10.73 TiB from last measurement.</p><p><a href="https://mastodon.social/tags/torproject" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>torproject</span></a> <a href="https://mastodon.social/tags/snowflake" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>snowflake</span></a> <a href="https://mastodon.social/tags/tor" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>tor</span></a> <a href="https://mastodon.social/tags/onion" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>onion</span></a> <a href="https://mastodon.social/tags/snowflakeproxy" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>snowflakeproxy</span></a> <a href="https://mastodon.social/tags/proxmox" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>proxmox</span></a> <a href="https://mastodon.social/tags/gnu" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>gnu</span></a> <a href="https://mastodon.social/tags/freesoftware" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>freesoftware</span></a> <a href="https://mastodon.social/tags/opensource" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>opensource</span></a> <a href="https://mastodon.social/tags/foss" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>foss</span></a> <a href="https://mastodon.social/tags/tails" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>tails</span></a> <a href="https://mastodon.social/tags/tailsos" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>tailsos</span></a> <a href="https://mastodon.social/tags/linux" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>linux</span></a> <a href="https://mastodon.social/tags/torbrowser" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>torbrowser</span></a> <a href="https://mastodon.social/tags/orbot" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>orbot</span></a> <a href="https://mastodon.social/tags/censorship" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>censorship</span></a> <a href="https://mastodon.social/tags/anticensor" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>anticensor</span></a> <a href="https://mastodon.social/tags/privacy" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>privacy</span></a> <a href="https://mastodon.social/tags/security" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>security</span></a> <a href="https://mastodon.social/tags/anonymity" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>anonymity</span></a> <a href="https://mastodon.social/tags/deepweb" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>deepweb</span></a> <a href="https://mastodon.social/tags/darkweb" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>darkweb</span></a> <a href="https://mastodon.social/tags/debian" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>debian</span></a> <a href="https://mastodon.social/tags/fedora" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>fedora</span></a> <a href="https://mastodon.social/tags/fedoralinux" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>fedoralinux</span></a> <a href="https://mastodon.social/tags/golang" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>golang</span></a> <a href="https://mastodon.social/tags/javascript" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>javascript</span></a></p>
Really Lazy Bear<p>Snowflake proxy update 4</p><p>Uptime: 5d 02:35<br>Total download bandwidth donated: ~877 GiB<br>Total upload bandwidth donated: ~917 GiB</p><p>Just a little more till the first terabyte...</p><p><a href="https://mastodon.social/tags/torproject" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>torproject</span></a> <a href="https://mastodon.social/tags/snowflake" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>snowflake</span></a> <a href="https://mastodon.social/tags/tor" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>tor</span></a> <a href="https://mastodon.social/tags/onion" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>onion</span></a> <a href="https://mastodon.social/tags/snowflakeproxy" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>snowflakeproxy</span></a> <a href="https://mastodon.social/tags/proxmox" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>proxmox</span></a> <a href="https://mastodon.social/tags/gnu" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>gnu</span></a> <a href="https://mastodon.social/tags/freesoftware" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>freesoftware</span></a> <a href="https://mastodon.social/tags/opensource" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>opensource</span></a> <a href="https://mastodon.social/tags/foss" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>foss</span></a> <a href="https://mastodon.social/tags/tails" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>tails</span></a> <a href="https://mastodon.social/tags/tailsos" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>tailsos</span></a> <a href="https://mastodon.social/tags/linux" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>linux</span></a> <a href="https://mastodon.social/tags/torbrowser" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>torbrowser</span></a> <a href="https://mastodon.social/tags/orbot" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>orbot</span></a> <a href="https://mastodon.social/tags/censorship" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>censorship</span></a> <a href="https://mastodon.social/tags/anticensor" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>anticensor</span></a> <a href="https://mastodon.social/tags/privacy" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>privacy</span></a> <a href="https://mastodon.social/tags/security" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>security</span></a> <a href="https://mastodon.social/tags/anonymity" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>anonymity</span></a> <a href="https://mastodon.social/tags/deepweb" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>deepweb</span></a> <a href="https://mastodon.social/tags/darkweb" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>darkweb</span></a> <a href="https://mastodon.social/tags/debian" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>debian</span></a> <a href="https://mastodon.social/tags/fedora" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>fedora</span></a> <a href="https://mastodon.social/tags/fedoralinux" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>fedoralinux</span></a> <a href="https://mastodon.social/tags/golang" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>golang</span></a> <a href="https://mastodon.social/tags/javascript" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>javascript</span></a></p>
Habr<p>Страх и Ненависть в Ви.Tech: от монолита к не микросервисам</p><p>Представьте: у вас есть монолит на PHP. Большой, сложный, местами запутанный – но такой родной. Он верой и правдой служит бизнесу много лет. А потом случается неизбежное – компания растет, нагрузки увеличиваются, и ваш надежный монолит начинает... задыхаться. Я – Кирилл Кузин, go-разработчик платформенной команды Ви.Tech (IT-дочка ВсеИнструменты.ру). Последние три года мы переводим высоконагруженные части нашего кода с монолита на Go-сервисы. За это время успели перенести критически важные компоненты, увеличить производительность в десятки раз и найти свой путь между монолитом и микросервисами. О нем я сегодня и расскажу. Сесть в машину без верха</p><p><a href="https://habr.com/ru/articles/886810/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="">habr.com/ru/articles/886810/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/golang" class="mention hashtag" rel="tag">#<span>golang</span></a> <a href="https://zhub.link/tags/golangconf" class="mention hashtag" rel="tag">#<span>golangconf</span></a> <a href="https://zhub.link/tags/soa" class="mention hashtag" rel="tag">#<span>soa</span></a> <a href="https://zhub.link/tags/%D0%BC%D0%B8%D0%BA%D1%80%D0%BE%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D1%8B" class="mention hashtag" rel="tag">#<span>микросервисы</span></a> <a href="https://zhub.link/tags/%D0%BC%D0%BE%D0%BD%D0%BE%D0%BB%D0%B8%D1%82" class="mention hashtag" rel="tag">#<span>монолит</span></a> <a href="https://zhub.link/tags/%D0%BC%D0%BE%D0%BD%D0%BE%D1%80%D0%B5%D0%BF%D0%BE%D0%B7%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%B9" class="mention hashtag" rel="tag">#<span>монорепозиторий</span></a> <a href="https://zhub.link/tags/%D0%B0%D1%80%D1%85%D0%B8%D1%82%D0%B5%D0%BA%D1%82%D1%83%D1%80%D0%B0_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%8B" class="mention hashtag" rel="tag">#<span>архитектура_системы</span></a> <a href="https://zhub.link/tags/%D0%B0%D1%80%D1%85%D0%B8%D1%82%D0%B5%D0%BA%D1%82%D1%83%D1%80%D0%B0_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9" class="mention hashtag" rel="tag">#<span>архитектура_приложений</span></a> <a href="https://zhub.link/tags/diy" class="mention hashtag" rel="tag">#<span>diy</span></a></p>
Golang Weekly<p>Calling Rust from cursed Go</p><p><a href="https://pthorpe92.dev/cursed-go/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="">pthorpe92.dev/cursed-go/</span><span class="invisible"></span></a></p><p>Discussions: <a href="https://discu.eu/q/https://pthorpe92.dev/cursed-go/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">discu.eu/q/https://pthorpe92.d</span><span class="invisible">ev/cursed-go/</span></a></p><p><a href="https://mastodon.social/tags/golang" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>golang</span></a> <a href="https://mastodon.social/tags/programming" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>programming</span></a> <a href="https://mastodon.social/tags/rustlang" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>rustlang</span></a></p>
Habr<p>Приложение на Go шаг за шагом. Часть 2: отправка ответов в формате JSON</p><p>Привет! Я Владислав Попов, автор курса</p><p><a href="https://habr.com/ru/companies/yandex_praktikum/articles/885946/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/yandex_p</span><span class="invisible">raktikum/articles/885946/</span></a></p><p><a href="https://zhub.link/tags/go" class="mention hashtag" rel="tag">#<span>go</span></a> <a href="https://zhub.link/tags/golang" class="mention hashtag" rel="tag">#<span>golang</span></a> <a href="https://zhub.link/tags/json" class="mention hashtag" rel="tag">#<span>json</span></a></p>