Co się dzieje z wysyłaniem zdarzeń, jeśli Kafka się zawiesi?
Golang
Czy model z tagami JSON (np. RegisterUserRequest) jest modelem domenowym? Jak poprawnie rozdzielić DTO i encję domenową?
Czy znasz architekturę heksagonalną? Opowiedz o jej strukturze.
Jak obsługiwane jest przychodzące żądanie przez handler do modelu domeny w architekturze heksagonalnej, składającej się z trzech elementów: adaptera, portu i centralnej aplikacji?
Jak zaimplementować odwrotną stronę — wzorzec skrzynki odbiorczej po stronie usługi powiadomień? Jak zapewnić idempotentność przetwarzania zdarzeń?
// Napraw kod, aby zapytania były konkurencyjne i wyświetlały kod odpowiedzi // a w przypadku błędu, wyświetl log i kontynuuj przetwarzanie 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 } // Przetwarzaj resp jeśli to konieczne } }
Czy pracowałeś kiedyś z DDD i CQRS? Opowiedz o tym.
// Napraw kod tak, aby żądania były konkurencyjne i wyświetlały kod odpowiedzi // a w przypadku błędu, wyświetl log i kontynuuj przetwarzanie 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() }
W architekturze mikroserwisów każdy serwis ma własną bazę danych. Jak działa wzorzec Outbox w tym kontekście, jeśli Kafka jeszcze nie otrzymała wiadomości?
Opowiedz o wzorcu Transactional Outbox — jak on działa i do czego służy?
Agregat zawsze działa na poziomie jednej transakcji. Co jeszcze ważne do wiedzenia o agregatach w DDD?