Warning: Undefined array key 0 in /var/www/tgoop/function.php on line 65

Warning: Trying to access array offset on value of type null in /var/www/tgoop/function.php on line 65
472 - Telegram Web
Telegram Web
This media is not supported in your browser
VIEW IN TELEGRAM
🎩 Enola Holmes

OSINT
инструмент, написанный на Go, который не поддерживает сбор и анализ информации по опреленном никнейму в сети.

Благодаря данному методу сбора можно построить цепочку всех упоминаний в интернете, в соц сетях, на сайтах и формумах.

go install github.com/theyahya/enola/cmd/enola@latest

▪️Github
👍4🎉1
🤯6🔥3
👣 Clink - это HTTP-клиент со множеством конфигураций для Go, разработанный с учетом простоты использования, расширяемости и надежности.

Он поддерживает различные функции, такие как автоматическая обработка запросов, ограничение скорости запросов и другие, что делает его идеальным как для простых, так и для сложных HTTP-запросов.

go get -u github.com/davesavic/clink

▪️Github
▪️Примеры
👍2
Добавьте в свое портфолио кейс по решению задачи с микросервисной архитектурой бесплатно и всего за пару часов

На практическом уроке «Масштабируемая архитектура для систем обработки платежей».

На вебинаре:

- рассмотрим решение задачи по построению масштабируемой отказоустойчивой системы обработки платежей;
- обсудим применения шардирования, паттерна Saga, двухфазного коммита и выбор уровня изоляции транзакций;
- получим описание верхнеуровневой архитектуры.

Занятие пройдёт 24 апреля в 20:00 мск в рамках курса «Microservice Architecture». Доступна рассрочка на обучение!

Чтобы посетить открытый урок, зарегистрируйтесь: ссылка

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Что выведет код ?

package main

import "fmt"

func reverse(arr [6]int) {
for i, j := 0, len(arr)-1; i < j; i, j = i+1, j-1 {
arr[i], arr[j] = arr[j], arr[i]
}
}

func main() {
arr := [...]int{5: 0}
for i := 1; i < 5; i++ {
arr[i] = i + 1
}
reverse(arr)
fmt.Println(arr)
}

Решение
🤡6👍1
🖥 DBChaos

Проведите стресс-тестирование своей базе данных с помощью заранее заданных запросов.

Библиотека поможет найти медленные и неэффективные запросы, которые мешают работе.

go install github.com/adaptive-scale/dbchaos@v0.4.1

▪️Github
👍1
💡 Hamlet

Шаблонный движок Haml для Go.

Haml (язык абстрактной разметки HTML) основан на одном главном принципе: разметка должна быть красивой. Это не просто красота ради красоты: Haml ускоряет и упрощает создание шаблонов.

go install github.com/stackus/hamlet/cmd/hamlet@latest

▪️Github
▪️Документация Haml
🔥4
👣 Gtkcord4

Gtkcord4 - клиент Discord на Go и GTK4.

go install -v github.com/diamondburned/gtkcord4@latest

▪️Github
🎉3
Задача с Leetcode. Поиск в двумерной матрице

Сложность: Средняя

Условие задачи: напишите эффективный алгоритм для поиска наличия нужного числа в двумерной матрице, которая имеет следующие свойства:

▪️ в строке элементы отсортированы по возрастанию (слева - направо);
▪️ в столбце элементы отсортированы по возрастанию (снизу - вверх).

Пример:

Ввод:
matrix = [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24],[18,21,23,26,30]], target = 5
Вывод: true

Решение:

func searchMatrix(matrix [][]int, target int) bool {
m, n := len(matrix), len(matrix[0])
i, j := 0, n-1
for i < m && j >= 0 {
if matrix[i][j] == target {
return true
}
if matrix[i][j] < target {
i++
} else {
j--
}
}
return false
}



Временная сложность: O(m + n)
Пространственная сложность: O(1)


Пишите свое решение в комментариях👇
👍6
Задача: Треугольник наибольшей площади

Условие: дается массив точек на плоскости X-Y, где точки [i] = [xi, yi], верните площадь самого большого треугольника, который может быть образован любыми тремя различными точками. Будут приняты ответы в пределах 10-5 от фактического ответа.

Пример:

Ввод:
points = [[0,0],[0,1],[1,0],[0,2],[2,0]]
Вывод: 2.00000
Объяснение:

Ввод:
points = [[1,0],[0,0],[0,1]]
Вывод: 0.50000

Решение

Пишите свое решение в комментариях👇
👍1
👣 DynamoMQ

DynamoMQ - это библиотека очередей сообщений, использующая DynamoDB в качестве хранилища, написанная на Go.

$ go install github.com/vvatanabe/dynamomq/cmd/dynamomq@latest

▪️Github
👎3
Вакансия: Golang backend developer 
Компания: Market Lab 
Формат работы: гибрид (Москва) / удалёнка - по желанию
ЗП: от 320 000 до 500 000 руб. на руки

ChatLab - SaaS решение для маркетинга, реализовано в виде CRM системы с мессенджером.

📌Чем предстоит заниматься:
—Принимать участие в создании архитектуры и разработке новых фичей;
—Профилирование и оптимизация высоконагруженных микросервисов;
—Unit-testing.

💥Что ожидаем:
—Опыт на Golang от 3 лет;
—Опыт разработки микросервисов, многопоточных приложений;
—Опыт разработки Web-сервисов (REST, gRPC, Websocket), опыт с Unix-системами;
—Наличие опыта разработки на других языках.

🎁Мы предлагаем:
— Гибрид, офис или удалёнка по твоему желанию :)
— У нас нет места для лагов: мы работаем на новых Макбуках;
— Комфортный рабочий день с 11 до 18, в пятницу до 17, чтобы у тебя было время на отдых;
— Ты можешь легко выбрать удобный способ получения ЗП;
— Ценим рвение к росту и обучению и даем возможность обучаться за счет компании.

📲 Присылай резюме: @a18dima
🔥2
Наиближайшая сумма трёх

Сложность: Средняя

Условие задачи: Дан целочисленный массив и целевое значение суммы. Нужно найти три числа из массива, которые либо в результате суммирования равны значению целевой суммы либо же максимально близки к ней по модулю.

Каждый массив имеет единственное решение.

Пример:

Ввод:
nums = [-1,2,1,-4], target = 1
Вывод:
2
Объяснение:
(-1 + 2 + 1 = 2)

Ввод:
nums = [0,0,0], target = 1
Вывод:
0

Решение:

func threeSumClosest(nums []int, target int) int {
sort.Ints(nums)
ans := 0
dist := int(^uint(0) >> 1) //dist = infinity

for i :=0; i<len(nums); i++{
l := i+1
r := len(nums)-1

for l < r{
sum := nums[i] + nums[l] + nums[r]
if sum == target{
return sum
}
if sum < target{
l = l + 1
if target - sum < dist{
dist = target-sum
ans = sum
}
}else{
r = r - 1
if sum - target < dist{
dist = sum-target
ans = sum
}
}
}
}
return ans
}


Временная сложность: O(nlogn)

Пространственная сложность: O(1)

Пишите свое решение в комментариях👇
👏2🔥1🥰1
🦦 Otter

Самая быстрая библиотека golang in-memory cache, основанная на алгоритме S3-FIFO. Раюотает во много раз быстрее, чем Ristretto.

Внутри используется хеш таблица, которая имеет мьютекс на каждый бакет + seq lock для чтения + каждый бакет помещается в две кеш линии, что предотвращает false sharing и это намногооо быстрее map с мьютексом и sync.Map.
Также исрользуется несколько трюков для избегания частых локов политики вытеснения: при чтении используются wait-free буфферы, которые иногда могут терять данные, но так как главная задача кеша - хранить наиболее частые элементы, то потери незначительны + реализация mpsc очереди при записи, которая значительно превосходит каналы по перфомансу и принцип из статьи bp-wrapper, который коротко можно назвать "batch, batch, batch" aka кеш не обновляет политику мгновенно, а только после наполнения небольшого буффера.

go get -u github.com/maypok86/otter

▪️Github
👍4🔥1
2025/07/08 23:37:31
Back to Top
HTML Embed Code: