Wie bewerten Sie Ihre Erfahrung mit Spring, Spring Boot? Was mussten Sie tun? Wissen Sie, wie es unter der Haube funktioniert?
Java
Wie konfiguriert man die Thread-Pool-Größe für parallele HTTP-Anfragen?
Welche Art von Metrik eignet sich am besten für ein Diagramm der Bestellanzahl pro Sekunde?
Können Sie erklären, was Spring ist und wofür es in der Java-Entwicklung verwendet wird?
Welche Technologien und Werkzeuge haben Sie in Ihrem letzten Projekt verwendet?
Kannst du ein Beispiel für eine Situation geben, in der die Verwendung von ThreadLocal gerechtfertigt ist?
Für welche Situationen und Aufgaben wird die Funktion in der Programmierung verwendet?
Wie funktioniert die verschachtelte @Transactional-Annotation, wenn die interne Methode in einem anderen Service ist?
Haben Sie Erfahrung mit der Verwendung von partiellen Indizes in Datenbanken?
Was ist eine unveränderliche (immutable) Klasse? Welche Nachteile hat sie?
Welche Methode zum Durchlaufen von Arrays — ArrayList oder LinkedList — verarbeitet 100 Millionen Elemente am schnellsten?
Was tun bei hoher Datenbankauslastung? Was tun bei niedriger Auslastung der Datenbank, aber langsamen Abfragen?
Wie löst man das Problem der zyklischen Abhängigkeiten bei der Verwendung von Dependency Injection?
Welche Methoden gibt es, um den Cache-Inhalt bei einem Fehler im Dienst zu überprüfen?
Warum ist die Iteration über eine ArrayList mit einer Million Elemente schneller als über andere Datenstrukturen?
Lesen Sie den Code, bestimmen Sie, ob die Programmausführung endet und was am Ende im Log angezeigt wird. ```java import java.util.concurrent.CountDownLatch; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; public class Increment { private static AtomicInteger counter1 = 0; private static AtomicInteger counter2 = 0; public static void main(String[] args) throws InterruptedException { int tasksCount = 100_000; CountDownLatch latch = new CountDownLatch(tasksCount); ExecutorService executor = Executors.newFixedThreadPool(100); for (int i = 0; i < tasksCount; i++) { executor.submit(() -> { counter1.incrementAndGet(); counter2.incrementAndGet(); latch.countDown(); }); } latch.await(); System.out.println(counter1); System.out.println(counter2); System.exit(0); } }
Was ist der Unterschied zwischen ConcurrentHashMap und Collections.synchronizedMap?
Wie war Ihr Monitoring organisiert? Mussten Sie benutzerdefinierte Metriken und Alarme erstellen?
Erzählen Sie mir mehr über die Implementierung von CQRS in Ihrem Fall.
Wie führt man Datenbankmigrationen fehlerfrei durch? Wie löscht man Felder?