Sobes.tech

Golang

PostgreSQL'da B- daraxt indeks va hash indeks o'rtasidagi farq nima? Yana qanday indekslarni bilasiz?

279

OpenAPI spetsifikatsiyasini texnik jihatdan qanday amalga oshirish mumkin? Swagger nima?

243

Go'da qaysi lintlarni ishlatasiz va ularni qayerda ishga tushirasiz?

232

// vazifa 2 // 1. OpenAPI + gRPC // (YAML) // info: // title: Kitob API // version: .. // paths: // /books: // get: // responses: // "200"

224

Docker haqida gapir: asosiy ishlash prinsiplari, ko'p bosqichli qurilishlar, CLI buyruqlari

216

Mutex va WaitGroupdan tashqari qanday boshqa sinxronizatsiya primitiplarini bilasiz? Foydalanish holatlari?

213

Transactional Outbox naqshini haqida gapirib bering — bu nima va nima uchun ishlatiladi?

208

// mkdir loyiha // cd loyiha // go mod init loyiha // touch main.go // vim main.go // --kodni yaratish-- package main import "syscall" // func main() { // msg := []byte("Salom, Dunyo!\n") // syscall.Write(1, msg) // } // --kod tugallandi-- // go build -o app // ./app // go test ./... // git nint // git add . // git commit -m "init"

204

DDD ning asosiy artefaktlari nima? Qaysi qismlardan iborat?

198

Runtime paket haqida nima bilasiz? Qaysi metodlarni ishlatgansiz?

198

Transactional Outbox va Saga haqida nima bilasiz? Amaliy holatni aytib bering

196

Go'dagi goroutine rejalashtiruvchisi haqida nima bilasiz?

194

Monitoring tizimi haqida gapir: metrik yig'uvchilar, ogohlantirishlar

189

funksiya main() { ctx := context.Background() urls := []string{ "vk.ru", "ozon.ru", "pi.zone.ru", "lamoda.ru", "adidas.com", } pingMap, err := collectRTT(ctx, urls) if err != nil { fmt.Println("ERR:", err) return } data, _ := json.Marshal(pingMap) fmt.Println("RTT:", string(data)) } func collectRTT(ctx context.Context, urls []string) (map[string]time.Duration, error) { pingMap := make(map[string]time.Duration, len(urls)) var mu sync.Mutex var wg sync.WaitGroup errCh := make(chan error, 1) for _, url := range urls { wg.Add(1) go func(u string) { // ... (rest of the function implementation) }(url) } // ... (rest of the function implementation) } Xato: # command-line-arguments 2486763/main.go:34:9: undefined: sync 2486763/main.go:35:9: undefined: sync 2486763/main.go:45:32: undefined: fmt.Errorf

189

func collectRTT(ctx context.Context, urls []string) (map[string]time.Duration, error) { pingMap := make(map[string]time.Duration, len(urls)) var mu sync.Mutex var wg sync.WaitGroup errCh := make(chan error, 1) for _, url := range urls { wg.Add(1) go func(u string) { defer wg.Done() dur, err := rtt(ctx, u) if err != nil { select { case errCh <- fmt.Errorf("RTT uchun xato %s, %w", u, err): default: } return } mu.Lock() pingMap[u] = dur mu.Unlock() }(url) } wg.Wait() close(errCh) if err := <-errCh; err != nil { return nil, err } return pingMap, nil }

179

Gorutinni qanday yakunlash mumkin? Qanday usullar mavjud?

176
/2