Фарқи байни индексҳои B-дараҷа ва hash дар PostgreSQL чист? Шумо дигар индексҳоро медонед?
Golang
Чӣ тавр ба таври техникӣ муайян кардани спецификацияи OpenAPI? Swagger чист?
Кадом линтерҳоро дар Go истифода мебарӣ ва дар куҷо онҳоро иҷро мекунӣ?
// вазифа 2 // 1. OpenAPI + gRPC // (YAML) // info: // title: Китоб API // version: .. // paths: // /books: // get: // responses: // "200"
Дар бораи Docker гап зан: принсипҳои асосӣ, сохтани бисёрқадамӣ, фармонҳои CLI
Дар бораи бастаи runtime чӣ медонӣ? Кадом усулҳоро истифода бурдӣ?
Кадом дигар primitives-и ҳамоҳангсозӣ, ба ғайр аз mutex ва WaitGroup, мешиносӣ? Ҳолатҳои истифода?
Дар бораи намунаи Transactional Outbox нақл кунед — ин чист ва барои чӣ истифода мешавад?
// mkdir loyiha // cd loyiha // go mod init loyiha // touch main.go // vim main.go // --код яратиш-- package main import "syscall" // func main() { // msg := []byte("Салом, Дунё!\n") // syscall.Write(1, msg) // } // --код якунланди-- // go build -o app // ./app // go test ./... // git nint
Шумо дар бораи Transactional Outbox ва Saga чӣ медонед? Як мисоли амалиро нақл кунед
Артфакти асосии DDD чӣ гунаанд? Аз кадом қисмҳо иборат аст?
функсия 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) } Гръшка: # 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
Дар бораи нақшакашии goroutine дар Go чӣ медонӣ?
Дар бораи системаи назорат гап зан: ҷамъкунандаи метрикҳо, огоҳиномаҳо
Дар бораи меъмории лоиҳаи ҳозира гап зан
Чаро калиди калиди defer?
Ҳикоят кунед, ки чӣ гуна профилингро дар Go анҷом медиҳед
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 %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 }
Фарқи байни /books ва /books/{id} чист?
Чӣ гуна метавон гурутиниро ба охир расонд? Кадом роҳҳо ҳастанд?