Sobes.tech

PostgreSQL-да B-дерек индексі мен хэш индексінің айырмашылығы неде? Тағы қандай индекстерді білесіз?

289

OpenAPI спецификациясын техникалық жүзеге асыру қалай? Swagger дегеніміз не?

243

Docker туралы айтып беріңіз: негізгі жұмыс принциптері, көпқабатты құрастыру, CLI командалары

236

Go тілінде қандай линтерлер қолданасыз және оларды қайда іске қосасыз?

234

// тапсырма 2 // 1. OpenAPI + gRPC // (YAML) // ақпарат: // атауы: Кітап API // нұсқасы: .. // жолдар: // /books: // get: // жауаптар: // "200"

224

Рантайм пакеті туралы не білесіз? Қандай әдістерді қолдандыңыз?

218

Mutex және WaitGroup-тан басқа қандай синхрондау примитивтері білесің? Қолдану жағдайлары?

213

Transactional Outbox паттерні туралы айтыңыз — бұл не және ол не үшін қолданылады?

208

// жобаны жасау // жобаны ашу // go mod init project // main.go файлын жасау // vim main.go // --кодты құру-- package main import "syscall" // func main() { // msg := []byte("Hello, World!\n") // syscall.Write(1, msg) // } // --код аяқталды-- // go build -o app // ./app // go test ./... // git nint // git add . // git commit -m "бастау"

206

Transactional Outbox және Saga туралы не білесіз? Практикалық мысал келтіріңіз.

200

DDD-нің негізгі артефактілері қандай? Ол қандай бөліктерден тұрады?

198

func 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) { // ... (қалған функция іске асыруы) }(url) } // ... (қалған функция іске асыруы) } Қате: # command-line-arguments 2486763/main.go:34:9: анықталмаған: sync 2486763/main.go:35:9: анықталмаған: sync 2486763/main.go:45:32: анықталмаған: fmt.Errorf

195

Go тіліндегі goroutine жоспарлаушы туралы не білесіз?

194

Ағымдағы жобаның архитектурасы туралы айтыңыз

193

Мониторинг құрылғысы туралы айтыңыз: метрик жинаушылар, ескертулер

191

Clean Architecture DDD-ден қалай ерекшеленеді?

191

Неге сіз defer кілт сөзін қолдандыңыз?

184

/books және /books/{id} арасындағы айырмашылық неде?

180

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("failed to rtt %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

Go-да профилирование процесін сипаттап беріңіз.

179
/2