Java
Zkusme jednodušší úlohu: jak spočítat, kolik lidí volalo určitý servis za den?
Jak byla ve týmu nastavena vertikála odpovědnosti? Kdo odpovídal za termíny?
Jaký je hlavní problém této implementace - Neefektivní využití pevného poolu vláken - Problémy s interakcí sdílených zdrojů - Nesprávné začlenění zámku může vést k deadlocku. - Nesprávná úroveň synchronizace - Před výsledkem nejsou kontrolovány všechny vlákna - Není explicitní konstruktor Kód: import java.util.concurrent.locks.ReentrantLock; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; class RecyclingBinCounter { private int binCount; private final ReentrantLock lock = new ReentrantLock(); public void incrementBins() { lock.lock(); try { binCount++; } finally { lock.unlock(); } } public int getBinCount() { return binCount; } } class RecyclingManager { public static void main(String[] args) { RecyclingBinCounter counter = new RecyclingBinCounter(); ExecutorService service = Executors.newFixedThreadPool(3); for (int i = 0; i < 3; i++) { service.submit(() -> { for (int j = 0; j < 1000; j++) { counter.incrementBins(); } }); } service.shutdown(); while(!service.isTerminated()) {} System.out.println("Total bins collected: " + counter.getBinCount()); } }
Slyšel jsi o vzoru Service Discovery?
Jaký je rozdíl mezi vytvořením vlákna pomocí ExecutorService a pomocí new Thread?
Nastavovali jste Kafka Consumer? Jaká nastavení znáte?
Jaké jsou strategie doručení zpráv v Kafka (alespoň jednou, nejvýše jednou, přesně jednou)?
Používáte při práci nástroje s AI? Které přesně?
Pracoval(a) jste s nerelationalními databázemi (Redis, Cassandra)?
Co je to anotace v Java? Jak byste to vysvětlili jinému vývojáři?
Máte zkušenosti s vlastním navrhováním databází?
Měli jste autoškálování? Jak bylo nastaveno?
Co představuje Spring Boot Starter? Jak funguje?
Jak blokovat nebo synchronizovat vlákna v Java?
V jaké oblasti paměti je uložen ConcurrentHashMap? Jaký kontejner použít pro ukládání metrik?
Plánovač bere záznamy z tabulky, dva pody najednou vzaly stejný záznam — jak problém vyřešit?
Jak byly řešeny situace, kdy služba nebyla dostupná?
Na jakém protokolu transportní vrstvy pracuje HTTP?
Povězte stručně o projektu v [společnost] — co jste tam dělali?
Kterou kolekci vybrat: ArrayList nebo LinkedList a proč?