Mi lehet rosszul a HashMap-nál, ha minden kulcs ugyanazt a hash-kódot kapja? Miért lassul a keresés?
Java
Nevezze meg a problémát, amely egy több szálas alkalmazásban felmerülhet. Beszéljen a Race Condition-ről.
1. kérdés. Milyen adattípusokat nem lehet HashMap kulcsként használni? - Tömbök - Atomok (AtomicBoolean, AtomicInteger stb.) - Primitívek - Referenciák
7. kérdés. Van egy ExampleService nevű szolgáltatás (lásd a képet). Ha egy külső szolgáltatás egymás után hívja a módszereket: exampleService.getCityFromCache(100000); exampleService.getCity(100000); Hányszor fog a CityDao::getCity hívódni, ha a cache üres? @Component @RequiredArgsConstructor public class ExampleService { private final CityDao dao; @Cacheable public String getCityFromCache(int index) { return dao.getCity(index); } public String getCity(int index) { return getCityFromCache(index); } } 0 1 2 A CacheManager megvalósításától függ
Kérdés 6. 10 üzenet kerül a Kafka témába, és két fogyasztó olvas a témából külön fogyasztói csoportokkal. Hány üzenetet számol el minden fogyasztó? 5 10 A téma partícióinak számától függ A replicationFactor értékétől függ
Hogyan védekezhetünk a belső lista mutációi ellen külső hivatkozáson keresztül (védelmi másolat a konstruktorban)?
Lehetséges-e olyan hashCode-t megvalósítani, amely mindig különböző értékeket ad különböző objektumok esetén (ütközések nélkül)?
Hogyan oldja meg a mély másolat problémáját (a lista elemeinek módosítása az AtomicInteger.incrementAndGet segítségével)?
3. kérdés. Mi történhet, ha a kulcsobjektum mezője, amelyet a hashCode kiszámításához használnak, megváltozik a HashMap-be történő beszúrás után? - A kulcs szerinti keresés nem a megfelelő objektumot adja vissza - A kulcs szerinti keresés lelassul - A kulcs szerinti keresés nem ad vissza objektumot
Milyen módszerekkel lehet mély másolatot készíteni egy objektumról?
2. kérdés. Mi lehet a baj a HashMap-pal, ha minden kulcs ugyanazt a hashCode-ot adja? - A kulcs szerinti keresés nem adja vissza a helyes objektumot - A kulcs szerinti keresés lassul - A kulcs szerinti keresés nem ad vissza objektumot
Hogyan védekezzünk a getter öröklése és felülírása ellen (hogy a kolléga ne tudja felülírni a gettert és eltávolítani a biztonsági másolatot)?
Mik az előnyei a monolitikus architektúrának?
Lehet-e tömböt használni kulcsként egy HashMap-ben? Miért rossz ötlet ez?
Milyen szinkronizációs eszközök vannak Java-ban?
Hol másutt érdemes használni az immutábilis objektumokat, mint a HashMap kulcsokat?
SELECT fio, position, salary FROM users WHERE salary = (SELECT MAX(salary) FROM users WHERE position = users.position);
Mi az a JIT fordítás? - A kód fordítása jar fájlba - A byte-kód közvetlenül a program futtatása közben fordítása gépi kódra - JavaScript fordítása gépi kódra a teljesítmény optimalizálása érdekében - A projekt fordítása git pipeline-ban
Mikroszolgáltatásokra való szétbontás megkezdésének kritériumai?
Miért döntött úgy, hogy elhagyja jelenlegi munkahelyét?