Category Archives: golang

GO. Способ объединения кода в пакеты

https://medium.com/@benbjohnson/standard-package-layout-7cdbc8391fc1 Основные идеи: 1. Основные пакеты не зависят от других пакетов в приложении 2. Группировать подпакеты по зависимостям 3. Моки должны быть в отдельном подпакете для использования в подпакетах другого пакета 4. Основной пакет связывает все пакеты Зависимости от сторонних пакетов лучше обернуть с свои обёртки и использовать везде их. Самое интересное — их так …

Read more

Выбор совпадений подстрок в названиях

Был у меня список клиник, который забивали руками. Хотелось найти сетевые клиники путём поиска похожих названий, а именно — совпадений подстрок. Делал на go. Из-за скорости и наколеночности делал всё в одном файле, без тестов и код там не так чтобы хорош. Код здесь — https://github.com/bullgare/lzd_cllinics/blob/master/utils/parser/main.go#L312. Реализация не самая удачная, нет тестов, и всё в …

Read more

SRE на GO в Dropbox

Вячеслав Бахмутов from CodeFest https://youtu.be/EWsXbsUBm-M

Go: библиотека для конкурентного доступа к мапе

https://github.com/golang/sync/blob/master/syncmap/map.go

Подсветка go-кода

Онлайн сервис подсветки golang — http://hilite.me/ Мне больше нравится стиль autumn.

Goroutine leaktest detector

https://github.com/fortytw2/leaktest

Инструмент для визуализации зависимостей в go

https://github.com/TrueFurby/go-callvis Вызов:

Что почитать по конкурентности в go

https://github.com/golang/go/wiki/LearnConcurrency А вот и видео хорошее https://youtu.be/f6kdp27TYZs

Как twitch помогал улучшать сборщик мусора в go

https://blog.twitch.tv/gos-march-to-low-latency-gc-a6fa96f06eb7#.i950758x6

HTTP stress testing tools

Старый добрый ab, из минусов — только http 1.0, задействует только одно ядро. JMeter wrk hey (бывший boom) — написан на go. Yandex.Tank Siege