Golang
Feltétel 3 entitás van: felhasználó, chat, üzenet • A felhasználónak van neve és regisztrációs dátuma • A chatnak van neve és létrehozási dátuma • Az üzenet szövege, szerzője és létrehozási dátuma van • Egy felhasználó egyszerre több chatben is lehet • Az üzenet kötelezően tartozik egy chathez, nem lehet több chathez tartozni egyszerre • A domaint táblázatok formájában kell leírni -- elosztott -- message_count a chat-ekben limit 100 --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 );
Miért döntöttél úgy, hogy munkát keresel?
Mik az előnyei az indexeknek? Lassíthatja az index az olvasást?
Mi az a grooming és miben különbözik a tervezéstől?
Feltétel A rendelés létrehozásának példájánál. Van egy kérés a szolgáltatáshoz és egy válasz, ezek között a műveletek között az elemzésekben tároljuk a megrendelt termékeket (például a termékek népszerűségének számításához). Az elemző szolgáltatás időnként lassan működik vagy timeout-ol, és nem tudunk időben válaszolni, így rendeléseket veszítünk. Mit tegyünk, hogy ne veszítsük el a rendeléseket és a pénzt?
Milyen teszteket végeztek a projektben, és hogyan indították el őket?
Mit változik, ha az inicializáláskor átadjuk a kezdő kapacitást?
Mi a különbség a PARTITION BY és a GROUP BY között egy alkérdezés esetén?
Mi különbözteti meg az HTTP/1, HTTP/2 és HTTP/3-at?
Hány pod került telepítésre a klaszterben?
Van-e egyéni vállalkozás vagy más jogi személyiségű formák?
Mit kell javítani a rendezett térkép megvalósításában, ha több idő állna rendelkezésre? Milyen lehetséges problémák és fejlesztési irányok vannak a könyvtárban?
Mennyire ismered a TCP/IP verem és az OSI modell? Mely protokollák működnek melyik szinteken?
Hogyan lehet két worker() végrehajtását párhuzamosítani szekvenciális helyett (6 másodperc → 3 másodperc)?
Van tapasztalata a TCP/UDP szintű szállítási protokollokban — csomagok kialakítása, alacsony szintű hálózati logika?
A pozíció kötelező költözést ír elő Ciprusra és 100%-os irodai formátumot. Mennyire elfogadható ez számodra?
Mi az a primer kulcs?
Könnyű: NEHÉZ Adott egy rendezett számokból álló tömb, amelyben vannak duplikátumok. El kell távolítani a duplikátumokat helyben (az eredeti tömbben), és vissza kell adni a kapott tömb méretét. Példa: Bemenet: nums = [0,0,1,1,1,2,2,3,3,4] Kimenet: 5, nums = [0,1,2,3,4,_,_,_,_,_] Magyarázat: Ebben a tömbben 5 egyedi elem van. Helyezze őket az első öt pozícióba, és adja vissza az 5 számot. A többi elem a tömbben tetszőleges lehet.
Meséljen a legutóbbi projektjéről, amin dolgozott. Mi a jelenlegi feladata?
Hogyan határozzák meg a változók és függvények láthatósági körét a Go nyelvben?