Ishingizda nima uchun boshliq kerak? Nima uchun?
Golang
Hash jadvali qanday ishlaydi? Qo'shish va o'qish murakkabligi qanday? Go tilida amalga oshirish xususiyatlari.
Agar ikkita kompaniya yoki ikkita jamoa orasidan tanlash imkoniyati bo'lsa, nima bilan e'tibor qaratarding va qanday tanlarding?
Qaysi jamoada ishlashni xohlaysiz, shuni tushunasizmi? U qanday bo'lishi kerak?
Sizda uzoq vaqt qilganingiz bo'lsa va oxirida amalga oshirilmagan yoki yigilishga qo'yilganmi?
Jamoada kodni ko'rib chiqishlar qanchalik tez-tez o'tkazilardi?
Kodni to'g'ri bajarish uchun: kirish nuqtasi -- main paketidagi main funktsiyasi package main import ( "crypto/md5" "fmt" ) var alphabet = []rune{'a', 'b', 'c', 'd', '1', '2', '3'} func RecoverPassword(h []byte) string { return "" } func hashPassword(in string) []byte { h := md5.Sum([]byte(in)) return h[:] } func main() { tests := []string{"a", "12", "abc333d"} ok := true for _, exp := range tests { h := hashPassword(exp) act := RecoverPassword(h) if act != exp { fmt.Printf("Xato: kutilyapti %q, olinmoqda %q\n", exp, act) ok = false } } if ok { fmt.Println("Barcha testlar muvaffaqiyatli o'tdi") } }
Hozir nima ko'proq xohlayapsiz: mahsulot ishlab chiqish yoki platforma ishlab chiqish?
Go'da jarayonlar, iplar va goroutinlar o'rtasidagi farq nima?
SELECT * c.id, -- barcha foydalanuvchilar uchun ism ($1) bo'yicha barcha chatlarni tanlang where text > 'abc'
Shart 3 ta mavjudlik mavjud: foydalanuvchi, chat, xabar • Foydalanuvchining ismi va ro'yxatdan o'tish sanasi bor • Chatning nomi va yaratilgan sanasi bor • Xabar matn, muallif va yaratilgan sana bilan • Foydalanuvchi bir vaqtning o'zida bir nechta chatlarda bo'lishi mumkin • Xabar majburiy ravishda chatga tegishli bo'lishi kerak, u bir vaqtning o'zida bir nechta chatga tegishli bo'lishi mumkin emas • Domenni jadval shaklida tasvirlash kerak -- taqsimlangan -- message_count chatlarda 100 bilan cheklangan --getShard(time zone) -> shard_id -> 1 --getShard(time zone) -> shard_id -> 2 --shard1 [1..100] --shard2 [101..200] CREATE TABLE users ( id int PRIMARY KEY, name varchar(255) NOT NULL, reg_at TIMESTAMP NOT NULL DEFAULT NOW() ); CREATE TABLE chats ( id int PRIMARY KEY, name VARCHAR(255) NOT NULL, created_at TIMESTAMP NOT NULL DEFAULT NOW(), message_count int NOT NULL CHECK <= 100 ); CREATE TABLE user_chats ( user_id int not null REFERENCES users(id), chat_id int NOT NULL REFERENCES chats(id), PRIMARY KEY (user_id, chat_id) ); CREATE TABLE messages ( id int PRIMARY KEY, chat_id int NOT NULL REFERENCES chats(id), author_id int NOT NULL REFERENCES users(id), created_at TIMESTAMP NOT NULL DEFAULT NOW(), text TEXT NOT NULL );
Sharding nima va u nima uchun ishlatiladi? Taksi xizmati jadvallari uchun sharding kalitini qanday tanlash kerak (haydovchilar, mijozlar, buyurtmalar)?
Ma'lumotlar bazalarining replikatsiyasi nima va u nima uchun ishlatiladi? Qanday muammolar yuzaga kelishi mumkin?
Loyihaga umumiy tarzda gapiring — bu oxirgi foydalanuvchi uchun nima edi?
Linuxda jarayonni qanday o'ldirish mumkin? kill pid yordam bermasa nima qilish kerak?
HTTPS nima? HTTP dan qanday farq qiladi? 'O'rta odam' hujumidan qanday himoya qiladi?
3 ta entity mavjud: foydalanuvchi, chat, xabar • Foydalanuvchining ismi va ro'yxatdan o'tish sanasi bor • Chatning nomi va yaratilgan sanasi bor • Xabar matn, muallif va yaratilgan sanaga ega • Foydalanuvchi bir vaqtning o'zida bir nechta chatlarda bo'lishi mumkin • Xabar majburiy ravishda chatga tegishli bo'lishi kerak va bir vaqtning o'zida bir nechta chatga tegishli bo'lishi mumkin emas • Domenani jadval shaklida tasvirlash kerak
PostgreSQL'da EXPLAIN va EXPLAIN ANALYZE nima, ularning farqi nima?
Go'da slice ichki tuzilishi qanday? append funksiyasi qanday ishlaydi?
Go tilida raqobat holati (race condition) nima? Misol keltiring.