Golang
So'nggi loyihangiz haqida gapirib bering: biznes maqsadi nima edi va nima uchun kerak edi?
Kafka mavzusi nechta bo'lakdan iborat bo'lishi kerak?
Xatoliklarni boshqarishni standartlashtirish mumkinmi?
/* Biz ma'lumotlarni manbadan iste'molchiga o'tkazishimiz 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 qanday yetkazib berish kafolatlari mavjud? Exactly-once qilish uchun ishlab chiqaruvchida nima qilish kerak?
Docker konteynerini tasvirsiz ishga tushirish mumkinmi?
Hamkasbingiz siz bilan roziman bo'lmasa, fikringizni qanday asoslaysiz?
Redisda faqat order_id -> current_status saqlash mumkinmi va to'liq buyurtma kartasini replika orqali o'qish mumkinmi? Bu ikki turdagi o'qishni qanday ajratish mumkin?
Agar jins va yosh bo'yicha foydalanuvchilarni tanlash kerak bo'lsa, users jadvali uchun gender va age maydonlari bilan indeks taklif qiling
Biror narsa taklif qilganingiz va fikringizni isbotlashingiz kerak bo'lgan holat haqida gapiring.
Agar satr algoritm bo'yicha palindrom bo'lsa, true yoki yo'q qaytaradimi?
Контейнерлаштириш қалай ишлайди, namespace ҳақида кенгроқ айтинг.
Endpoint sekinlashsa nima qilish kerak? Diagnostika bosqichlarini tavsiflang.
Nimani qilsangiz, biror narsani tuzatgandan keyin?
Shaxsiy ma'lumotlar bilan ishlaydigan tizim uchun birinchi navbatda qanday talablarni qo'yardingiz?
Qaysi vazifalarni hal qilish qiziqarli bo'lar edi?
Katta faylni o'chirdim, ammo diskda joy bo'shalmadi. Nima uchun? Uni qanday topish va tuzatish mumkin?
Go'da kontekst nima? Qanday ishlatiladi? Kontekst orqali bekor qilish qanday ishlaydi?
Protobuf nima? Maydon qo'shish/olib tashlashda nima bo'ladi?
Kafkada katta kechikish bo'lsa, ko'proq consumer qo'shish yordam beradimi? Qaysi hollarda yordam beradi va qaysi hollarda bermaydi? Agar 16 ta partition va 2 ta consumer bo'lsa, nima bo'ladi?