Java
Co się stanie, jeśli w jednej klasie kilka pól oznaczymy modyfikatorem volatile?
Opowiedz o swoim doświadczeniu zawodowym na ostatnim miejscu (Lekton). Czym się zajmowałeś, jaki stos technologiczny?
Czym jest wzorzec Saga, jak działa i do czego służy?
Czym są indeksy w SQL i do czego służą? Jakie są ich wady?
Jak radzono sobie z deadlockiem przy pesymistycznym blokowaniu?
/** * Metoda oblicza, ile punktów zdobył kandydat, * zapisuje wynik w bazie danych i wywołuje callback w zewnętrznym serwisie */ public void process(Candidate c) { transactionTemplate.executeWithoutResult(status -> { Score s = interviewScoreMLService.compute(c); String body = objectMapper.writeValueAsString(Map.of(c.getName(), s)); Mono<ResponseEntity<Void>> request = WebClient.create() .post() .body(BodyInserters.fromValue(body)) .retrieve() .toBodilessEntity(); scoreRepository.saveScore(s); }); }
Jaka jest główna przyczyna nieprawidłowego zachowania kodu? Naruszona jest niemutowalność obiektów Stan przerwania nie jest obsługiwany Wydajność pogarsza się z powodu blokad Konflikt obiektów blokujących prowadzi do sytuacji martwego punktu Nadmierna synchronizacja zasobów Nie zainicjowane stany obiektówimport java.util.concurrent.*; class Competition { private final Object lock = new Object(); public void syncMethodA(Competition competitor) { synchronized (lock) { try { Thread.sleep(100); } catch (InterruptedException e) {} competitor.syncMethodB(this); } } public void syncMethodB(Competition competitor) { synchronized (lock) { try { Thread.sleep(100); } catch (InterruptedException e) {} competitor.syncMethodA(this); } } } public class FitnessApp { public static void main(String[] args) { Competition comp1 = new Competition(); Competition comp2 = new Competition(); Thread t1 = new Thread(() -> comp1.syncMethodA(comp2)); Thread t2 = new Thread(() -> comp2.syncMethodB(comp1)); t1.start(); t2.start(); } }
Ile było RPS na szczycie? Ile zarejestrowano?
Czy można dodać dowolny obiekt jako klucz w HashMap?
Jak zaimplementować limitowanie szybkości dla zewnętrznego API z ograniczeniem RPS? Czym różnią się wirtualne wątki/korutyny od systemowych wątków?
Podaj przykład ulepszenia technicznego w projekcie oprócz zadań biznesowych.
Jaka jest różnica między Kafka a RabbitMQ?
Jak odczytać konkretny nagłówek (np. numer służbowy) w kontrolerze?
Jakie są podejścia do radzenia sobie z niestabilną integracją, która może nie odpowiadać od minuty do dnia?
Czy masz doświadczenie w pisaniu BeanPostProcessor? Do jakiego zadania?
Czy kolejność zdarzeń w Kafka była ważna? Jak była zapewniana?
[imię] zapytał: Czy pracowałeś tam na podstawie umowy o pracę?
```java // 2 public class Interfaces { public static void main(String[] args) { A a = new A() {}; B b = new B() {}; AB ab = new AB(); a.print(); b.print(); ab.print(); } public interface A { default void print() { System.out.println("interface A"); } } public interface B extends A { default void print() { System.out.println("interface B"); } } public static class AB implements A, B { } } ```
Opowiedz o wzorcu SAGA: orkiestracja i choreografia.
Jaki typ indeksu użyć do wyszukiwania w środku lub na końcu ciągu (LIKE '%tekst%')?