Golang
Dlaczego wykonano ręczny commit offset zamiast automatycznego?
Karta wojskowa?
Opowiedz mi o swoim projekcie. Co tam robisz?
// Klient przekazuje obiekt (Task) z danymi do wykonania zadania, // w naszym przykładzie użyjemy pustej struktury. // // Menedżer może obsługiwać nie więcej niż N zadań jednocześnie, // i nie więcej niż X zadań może być w kolejce. // Jeśli nie ma miejsca w kolejce, od razu zwracamy klientowi błąd. // // Zadanie jest pobierane do przetwarzania, jeśli dostępni są wolni obsługujący. // Symulujemy czas trwania przetwarzania za pomocą time.Sleep(5*time.Second). // Gdy jedno zadanie się zakończy, pobieramy następne z kolejki. // Jeśli kolejka jest pusta, oczekujemy na nowe zadania od klientów. // // Z gwiazdką: rozbudować strukturę Task i uzyskać statusy zadań przez osobne zapytanie. package scheduler type Scheduler interface { AddTask(t Task) error Close() } type scheduler struct { queue chan Task wg sync.WaitGroup } func New(workers, queue int) Scheduler { // implementacja w oczekiwaniu } type Task interface { Do() }
Jak zapewnione jest bezpieczeństwo na REST i Kafka? Czym jest HTTPS/TLS?
Kto zajmuje się wdrożeniem — deweloperzy czy DevOps?
Dlaczego podzielono monolit na mikroserwisy?
Dlaczego opuściłeś firmę?
Pytanie 4: Znaleźć błędy w kodzie z kanałami i goroutines (podwójne zamknięcie kanału)
Czy standardowa mapa w Go jest bezpieczna w konkurencji? Jakie są alternatywy?
Dlaczego zwykła mapa w Go jest niebezpieczna dla zapisów współbieżnych?
Jakie są rodzaje indeksów i jak rozpoznać, czy potrzebny jest indeks?
Jak zabić proces w Linux? Co zrobić, jeśli kill pid nie działa?
Czy możesz potwierdzić doświadczenie za pomocą książeczki pracy?
Czym jest ACID? Poziomy izolacji transakcji?
Modelować prosty system bankowy: - Tabela `accounts`: - `id`, - `owner_id`, - `currency`, - `created_at`. - Tabela `transactions`: - `id`, - `account_id`, - `amount`, - `created_at`. **Wymagania:** 1. Napisać SQL do utworzenia schematu z potrzebnymi ograniczeniami (NOT NULL, FK, CHECK na `amount` niezerowe). 2. Napisać zapytanie: - uzyskać bieżący stan konta po `account_id` (suma `amount`). 3. Utrudnienie: obsługa debetu/kredytu (podwójny zapis). Czyszczenie
Jak można uniknąć wyścigu danych? Jak działa Mutex?
Jak ustalano limit prędkości? Na czym się opierał i gdzie został zaimplementowany? Co zostało użyte technicznie?
Jak jest zorganizowana mapa pod maską w Go?
Jak replikacje usług w Kubernetes wchodziły w interakcje i jaką informację dzieliły?