Golang
Kafka mövzusunun neçə bölmədən ibarət olması lazımdır?
Xətaların işlənməsini standartlaşdırmaq mümkündürmü?
/* Biz manbadan ma'lumotlarni iste'molchiga uzatishimiz kerak. Manba, ma'lumotlarni kichik partiyalar (~o'n yozuv) shaklida taqdim etadi, holbuki, iste'molchi katta partiyalar (~ming yozuv) bilan ishlashni optimallashtiradi. Haqiqiy misol - Kafka turidagi navbatlardan ma'lumotlarni Clickhouse bazasiga uzatish. Manba: - deyarli cheksiz. - Manba har doim Next chaqiruvida MaxItems dan ko'p yozuvlarni qaytirmaydi. - Bir "sessiya" (bir Pipe funksiyasi chaqiruvi) doirasida, manba har chaqiruvida yangi ma'lumotlarni qaytaradi. - Biroq, qayta ishga tushirilgandan so'ng, manba avvalgi "tasdiqlangan" pozitsiyadan, cookie bilan belgilangan joydan boshlanadi. Shuning uchun, har bir cookie qiymati, Next qaytaradigan, ma'lumotlar saqlangandan so'ng, Commit chaqiruvi bilan tasdiqlanishi kerak, va ular Next tomonidan qaytarilgan tartibda. Qabul qiluvchi: - Bir vaqtning o'zida MaxItems dan ko'p ishlov berolmaydi. Kerakli: func Pipe(p Producer, c Consumer) error funksiyasini amalga oshirish, manbadan ma'lumotlarni o'qib, ularni MaxItems dan oshmaydigan bufferga guruhlab, qabul qiluvchiga saqlash, va keyin manbada progressni tasdiqlash. */ const MaxItems = 9999 type Producer interface { // Next: // - ishlash uchun partiya elementlar // - tugallangach tasdiqlash uchun cookie // - xato Next() (items []any, cookie int, err error) // Commit, ma'lumotlar partiyasini ishlangan deb belgilash uchun ishlatiladi Commit(cookie int) error } type Consumer interface { Process(items []any) error } func Pipe(p Producer, c Consumer) error { // TODO }
Kafka-da hansı çatdırılma zəmanətləri var? Tam olaraq bir dəfə etmək üçün istehsalçıda nə etmək lazımdır?
Docker konteynerini şəkilsiz başlatmaq mümkündürmü?
Əməkdaşın sənə razı deyilsa, fikrini necə əsaslandırırsan?
Redis-də yalnız order_id -> current_status saxlamaq və tam sifariş kartını replikadan oxumaq mümkündürmü? Bu iki növ oxumağı necə ayırmaq olar?
İstifadəçiləri cinsiyyət və ya yaşa görə seçmək lazımdırsa, users cədvəli üçün gender və age sahələri ilə indeks təklif edin
Bir şey təklif etdiyiniz və fikrinizi sübut etməyiniz lazım olan bir vəziyyətdən danışın.
Əgər sətir alqoritmə görə palindromdursa, o zaman true qaytaracaq yoxsa yox?
Konteynerləşdirmə necə işləyir, namespace haqqında daha ətraflı danışa bilərsən?
Endpoint yavaşlayırsa nə etmək lazımdır? Diaqnostika addımlarını təsvir edin.
Bir şeyi təmir etdikdən sonra başqa nə edirsiniz?
Şəxsi məlumatlarla işləyən sistem üçün ilk növbədə hansı tələbləri qoyardınız?
Hansı tapşırıqları həll etmək maraqlı olardı?
Böyük faylı sildim, amma diskdə yer boşalmadı. Niyə? Onu necə tapıb düzəldə bilərəm?
Go-da kontekst (context) nədir? Necə istifadə olunur? Kontekst vasitəsilə ləğv etmək necə işləyir?
Protobuf nədir? Sahə əlavə etmə/silərkən nə baş verir?
Kafka gecikməsi böyük olduqda daha çox consumer əlavə etmək kömək edərmi? Hansı hallarda kömək edər və hansı hallarda yox? Əgər 16 partition və 2 consumer varsa, nə baş verər?
Yumşaq silmə (soft delete) haqqında danış. Bu nədir və niyə lazımdır?