Kafka yi yiqilganda voqealarni yuborish nima bo'ladi?
Golang
JSON teglar bilan model (masalan, RegisterUserRequest) domen modelimi? DTO va domain entity ni qanday to'g'ri ajratish mumkin?
Siz Hexagonal Arxitekturasi bilan tanishmisiz? Uning tuzilishi haqida gapiring.
Hexagonal arxitekturada kiruvchi so'rov handler orqali domen modeligacha qanday ishlov beriladi? Bu arxitektura uchta elementdan iborat: adapter, port va markaziy ilova.
Bildirishnoma xizmatining tomonida orqa tomon — Inbox shablonini qanday amalga oshirish mumkin? Voqealarni qayta ishlashda idempotentlikni qanday ta'minlash mumkin?
// Kodni to'g'ri qilish uchun so'rovlar raqobatlashgan va javob kodini chiqaradigan qilib tuzish // va xatolik yuzaga kelsa, uni logga yozib, ishlov berishni davom ettirish package main import "net/http" var addrs = []string{"[link]"} func main() { for _, url := range addrs { resp, err := http.Get(url) if err != nil { log.Error(err) continue } // Agar kerak bo'lsa, resp ni ishlash } }
Siz DDD va CQRS bilan ishlaganmisiz? Bu haqda gapiring.
// So'rovlar raqobatlashadigan qilib va javob kodini chiqaradigan qilib kodni tuzatish // va xatolik yuzaga kelsa, logni chiqarib, ishlov berishni davom ettirish package main import "net/http" var addrs = []string{"[link] "[link] "[link] "[link] "[link] "[link] "[link] func main() { var wg sync.WaitGroup data := make(map[string]bool) for _, url := range addrs { wg.Add(1) if !data[url] { data[url] = true go func(url string) { defer wg.Done() resp, err := http.Get(url) if err != nil { log.Println(err) return } log.Println(resp.StatusCode) }(url) } } wg.Wait() }
Mikroxizmat arxitekturasida har bir xizmat o'zining ma'lumotlar bazasiga ega. Kafka hali xabarni olmagan bo'lsa, Outbox naqshini bu kontekstda qanday ishlaydi?
Transactional Outbox naqshini haqida gapiring — u qanday ishlaydi va nima uchun ishlatiladi?
Yig‘ma har doim bir tranzaksiya darajasida ishlaydi. DDDda yig‘malar haqida yana nima bilish kerak?