Java
Podrobně vysvětlete event-driven interakci mezi službami s použitím Kafka.
Je implementace idempotentního zpracování událostí úspěchem pro seniora, nebo je to něco, co od něj očekáváme předem?
Na jakých projektech a s jakými produkty jste pracoval ve [společnosti]?
Povězte nám o vícenásobném programování v Java: co jste použili?
Lze testy zlepšit, například zkrácením množství kódu?
Jak spojili tým?
class User { String jmeno; public int hashCode() { return jmeno.hashCode(); } public boolean equals(Object o) { return o instanceof User u && jmeno.equals(u.jmeno); } } Map<User, String> map = new HashMap<>(); User u = new User(); u.jmeno = "Bob"; map.put(u, "vývojář"); u.jmeno = "Alice"; System.out.println(map.get(u));
10 aplikací zpracovatelů odebírá úkoly z databáze. Jak zabránit tomu, aby dvě instance vzaly stejný úkol?
Co bylo synchronní a co se změnilo? Který z dvou případů (podle rozvrhu nebo změny stavu) byl synchronní?
Co hledáte v týmu a produktu? Jaká jsou vaše kritéria při výběru pracovního místa?
Co je problém N+1 v JPA/Hibernate? Jak byl vyřešen?
@PutMapping("/create") public Book create(@RequestBody CreateBook request) throws Exception { System.out.println("Zkontrolujte, zda kniha existuje " + map); Book book = new ObjectMapper().convertValue(map, Book.class); Book b = repo.findByTitle(book.getTitle()); if (b != null) { throw new Exception("Kniha již existuje"); } book.setId(UUID.randomUUID().toString()); repo.save(book); log.debug("Kniha {} od {} byla vytvořena s id {}", book.getTitle(), book.getAuthor(), book.getId()); return book; } @GetMapping("/get") public Book get(@QueryParam("id") String id) { log.debug("Získat knihu " + id); return repo.findAll().stream() .filter(b -> b.getId().equals(id)) .findFirst().get(); } @GetMapping("/{id}") public Book get(@RequestParam("id") String id) { log.debug("Získat knihu ", id); return repo.findById(id).orElseThrow(() -> new BookAlreadyExeption("kniha nenalezena")) findAll().stream() .filter(b -> b.getId().equals(id)) .findFirst().get(); }
Tabulka person se seznamem zaměstnanců id jméno 1 Petya 2 Vasya 3 Kolya Tabulka payment s výplatami id person_id payment_value [phone] Je třeba napsat dotaz, který vybere jména zaměstnanců s celkovými výplatami většími než 100
Jaký je hlavní problém této implementace? - Není používáno cache v paměti pro optimalizaci. - Různé typy ukládání dat v jednom hashi - Kontrola spínače před čtením dat nepřináší výsledky - Chybí standardní serializátory v `RedisTemplate` - Pipeline není používáno pro částečné operace
Kódová úloha: Spring @Transactional a sebeinvokace (snímek obrazovky s kódem)
Jakou kolekci použít pro tabulku výsledků se tříděním podle příjmení a hledáním podle klíče?
Jak se REST slučuje s ukládáním uživatelských dat (například v internetovém obchodě)?
Povězte mi o svých zkušenostech s vývojem a v jakém směru chcete růst.
Povězte o konkrétních výsledcích a úspěších v číslech.
Museli jste někdy optimalizovat podmínku NOT IN? Jak špatné je to a jak ji optimalizovat?