Golang
func (r *PayoutRepository) Payout(advertiserID, partnerID string, amount float32) error { advertiser, err := r.find(advertiserID) // tranzaktsiya qo'shish if err != nil { return err } partner, err := r.find(partnerID) if err != nil { return err } advertiser.Balance -= amount // SELECT FOR UPDATE ni himoya qilish partner.Hold -= amount partner.Balance += amount if err := r.save(advertiser); err != nil { return err } if err := r.save(partner); err != nil { return err } r.totalPayouts++ return nil }
Go til yozishda nima yozasiz — mikroxizmatlar yoki xizmatlar?
Go'da qaysi mexanizm mavjud: merosxo'rlik yoki tarkib?
Go'da profilerni qanday ulash mumkin? Profilni qanday olish mumkin?
Hozirda rivojlanish uchun ustuvorliklar yoki rejalaring bormi?
Tartiblangan va tartibsiz massivda shuningdek funksiyani solishtirsak, bajarilish vaqtida farq bo'ladimi? Branch prediction va protsessorning pipeline nima?
Yuklama testlarini o'tkazdingizmi? Yuklama qanday edi?
RPS qanday hisoblangan — siz faqat barcha qo'lqoplarning yukini qo'shdingizmi yoki qanday?
Qo'lda ishlov berishdan so'ng noto'g'ri xabarlar bilan nima qilardingiz? Bu texnik jihatdan qanday ko'rinardi?
Mikroxizmatlar o'rtasidagi aloqa qanday tashkil etilgan?
Hozir ishlayapsizmi?
Siz testlarga qanday munosabatda bo'lasiz? Testlar nima uchun kerak?
Kafka haqida gapirganda, qanday yetkazib berish kafolatini qo'llab-quvvatlaysiz?
Hash-jadval qanday tuzilgan? Unda qanday asosiy tamoyillar va talablar mavjud?
Qachondan boshlab mavjud bo'lasiz?
Kafka'da xabarlarning takrorlanmasligini qanday ta'minladingiz?
Jamoa haqida gapir: kimlar bilan hamkorlik qilding, nechta odam bor edi?
Siz kompaniyada tashqi xodim yoki doimiy xodim sifatida ishladingizmi?
Hech qachon vaqtni kuzatish, vazifalarni biron bir tizimda hisobga olish kerak bo'ldimi?
Qanday qilib asboblarni tanlardingiz, masalan, JSON-parsing kutubxonalarini qanday taqqoslardingiz?