Kotlin
Pastāsti par datu bāzu sharding
Kā darbojas Dirty Checking mehānisms Hibernate?
Kāpēc Postgres vaicājumu optimizētājs var izmantot Seq Scan ražošanā, bet Index Scan dev/ft ar tiem pašiem indeksiem?
Vai tu esi izmantojis HQL, Native Query, JDBC tieši? Batching Hibernate?
// rezervācija(sēdvietas_numurs, lietotāja_numurs) PostgreSQL Begin Transaction(read_commited) seat = select * from seats where id = seat_id for update if(seat == null || seat.status == "booked") rollback return error("Vieta nav pieejama") insert into bookings (user_id, seat_id, status, created_at) values (user_id, ...) update seats set status = 'booked' where id = seat_id commit return success()
Vai tika izmantotas Kafka transakcijas (precīzi vienu reizi semantika)?
Pastāsti par uzraudzību un metriku projektā (Prometheus, Grafana)
Kā risināt vienas entītijas konkurējošo atjaunināšanu no diviem Kafka topikiem (viens topiks pārkrīt izmaiņas otra)?
Ko dara VACUUM PostgreSQL un kāpēc parādās mirušās rindas?
Pastāsti par partīciju PostgreSQL
Pastāstiet par optimistiskajām un pesimistiskajām bloķēšanām, kad tās piemērot?
Pastāsti man par transakciju izolācijas līmeņiem
/* IZVĒLE kreisais.K, kreisais.V1, labais.V2 NO kreisais PIESLĒGT labais ON kreisais.K = labais.K; */ public <K extends Comparable<K>, V1, V2> List<Triple<K, V1, V2>> join(List<Pair<K, V1>> kreisais, List<Pair<K, V2>> labais) { return null; } private static class Pair<A, B> { private A pirmais; private B otrais; Pair(A pirmais, B otrais) { this.pirmais = pirmais; this.otrais = otrais; } } private static class Triple<A, B, C> { private A pirmais; private B otrais; private C trešais; Triple(A pirmais, B otrais, C trešais) { this.pirmais = pirmais; this.otrais = otrais; this.trešais = trešais; } }
Vai zināt, kas ir Service Mesh Kubernetes?
Kā kontrolēt slodzi uz rokturiem (sākuma ierobežojums)?
Kāda bija slodze uz pakalpojumiem? Kādas optimizācijas tika piemērotas?
Pastāstiet par sevi un savu darba pieredzi
Vai esi izmantojis Kotlin? Vai tev ir pieredze?
/*Dotā ir virkne, nepieciešams īstenot funkciju, lai pārbaudītu iekavās norādīšanas pareizību. Katram atvērtajam iekavām jābūt atbilstošai aizvērtajai iekavai. Atvērtās un aizvērtās iekavas jābūt pareizā secībā. iekavu veidi: "{", "}", "(", ")", "[", "]". Ievade: "([]){}[(()())()]" Rezultāts: true Ievade: "[(])" Rezultāts: false Jo 2. un 3. iekavas ir norādītas nepareizi, aizvēršana ']' parādās pirms aizvēršanas '(' */ public boolean check(String s){ Deque<Character> stack = new ArrayDeque<>(); Map<Character, Character> map = Map.of( ')', '(', ']', '[', '}', '{' ); // ((( for( char c : s.toCharArray()){ if(map.containsValue(c)){ stack.push(c); } else if(map.containsKey(c)){ if( stack.isEmpty() || stack.pop() != map.get(c)){ return false; } } } return stack.isEmpty(); }