Ποια είναι η διαφορά μεταξύ Spring και Spring Boot;
Java
υλοποιήσεις - Λογική σύνδεσης χρηστών και παραγωγών - Τα κλειδιά μηνυμάτων μπορεί να διπλασιαστούν - Σφάλμα στην ευθυγράμμιση της μετατόπισης των καταναλωτών με τα μηνύματα - Δεν υπάρχει διάθεση για τον παραγωγό - Απουσία εκτέλεσης για πολλαπλούς διαμεσολαβητές - Η ομάδα καταναλωτών ορίζεται αυστηρά
Ποια από τις τελευταίες εργασίες σου φάνηκε ενδιαφέρουσα, δύσκολη, αξέχαστη;
Ποιο χάρτη πρέπει να χρησιμοποιήσω αν διαβάζω συχνά αλλά σπάνια εισάγω δεδομένα;
Ποιο είναι το κύριο πρόβλημα αυτής της υλοποίησης - Ανεπαρκής χρήση του σταθερού πλέγματος νημάτων - Προβλήματα με την αλληλεπίδραση κοινών πόρων - Η λανθασμένη ενσωμάτωση του κλειδώματος μπορεί να οδηγήσει σε αδιέξοδο. - Λάθος επίπεδο συγχρονισμού - Δεν υπάρχουν έλεγχοι όλων των νημάτων πριν το αποτέλεσμα - Δεν υπάρχει ρητός κατασκευαστής Κώδικας: 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()); } }
Ποιο είναι το κύριο πρόβλημα της επιλεγμένης δομής λύσης; - Δεν υπάρχει διαχείριση ειδικών εξαιρέσεων κατά την εκκίνηση - Κλάση διαμόρφωσης χωρίς annotations @Configuration - Λανθασμένη ρύθμιση εξαρτήσεων DI - Λανθασμένη ενσωμάτωση προσαρμοσμένων διαμορφώσεων αλλάζει τη σειρά φόρτωσης των ιδιοτήτων - Απουσία @Autowired για την παρουσία εξαρτήσεων
Ανεπαρκής χρήση σταθερής ομάδας νημάτων Προβλήματα με την αλληλεπίδραση κοινών πόρων Λανθασμένη ενσωμάτωση κλειδώματος μπορεί να οδηγήσει σε αδιέξοδο. Λανθασμένο επίπεδο συγχρονισμού Δεν υπάρχουν έλεγχοι όλων των νημάτων πριν το αποτέλεσμα Δεν υπάρχει ρητός κατασκευαστής
Ποιο είναι το κύριο πρόβλημα αυτής της υλοποίησης SELECT f.food_id FROM Foods f JOIN Expirations e ON f.id = e.food_id WHERE e.is_expired = 1; - `JOIN` αντί για `WHERE EXISTS` για τον έλεγχο ύπαρξης εγγραφών. - Δεν υπάρχει δείκτης στο πεδίο e.is_expired - Τα κλειδιά JOIN δεν ευρετηριάζονται - Ο πίνακας Ημερομηνίες λήξης είναι περιττός - Το ερώτημα δεν προστατεύεται σε μια συναλλαγή
Ποιες είναι οι βασικές στρατηγικές κλειδώματος που χρησιμοποιούν οι βάσεις δεδομένων για την επεξεργασία ταυτόχρονων προσβάσεων;
Πώς θα ενσωματώνατε τον κύκλο ζωής του Kafka Listener — μέσω του KafkaListenerEndpointRegistry ή μέσω ρητού polling μέσω KafkaConsumer;
Τι επιστρέφει το Postgres αφού επεξεργαστεί τις πληροφορίες και καταλάβει ότι τα δεδομένα υπάρχουν; Επιστρέφει άμεσα τα δεδομένα με τη μορφή χάρτη γραμμών ή κάτι άλλο;
Ποιο είναι το κύριο πρόβλημα της επιλεγμένης δομής λύσης; Η κλάση Property δεν υποστηρίζει πολυμορφισμό. Τα πεδία της κλάσης μπορεί να μην έχουν αρχικοποιηθεί. Η μέθοδος μεταφοράς του υπολογισμού του συνολικού κόστους στην κλάση "Order". Δεν χρησιμοποιεί μηχανισμούς συναλλαγής. Δεν υπάρχουν εξαιρέσεις σε περίπτωση κενής λίστας.
Με ποιες ροές; (διευκρινιστική ερώτηση μετά την αναφορά ροών εισόδου-εξόδου)
Γιατί επιλέξατε wait/notify αντί για ReentrantLock;
Ποια είναι τα προβλήματα του Spring Kafka με τις εικονικές νησίδες; Ή δεν υπάρχουν καθόλου προβλήματα;
Πες λίγα λόγια για την αρχιτεκτονική της υπηρεσίας.
Ποιες τεχνολογίες σου αρέσουν περισσότερο;
Ποιο παρενέργεια εμφανίζεται κατά την εκτέλεση του κώδικα BEGIN; SET TRANSACTION ISOLATION LEVEL READ COMMITTED; START TRANSACTION; SELECT progress INTO @current_progress FROM courses WHERE course_id = 101; SET @current_progress = @current_progress + 60; UPDATE courses SET progress = @current_progress WHERE course_id = 101; COMMIT; END; BEGIN; SET TRANSACTION ISOLATION LEVEL READ COMMITTED; START TRANSACTION; SELECT progress INTO @current_progress FROM courses WHERE course_id = 101; SET @current_progress = @current_progress + 40; UPDATE courses SET progress = @current_progress WHERE course_id = 101; COMMIT; END;
Εξήγησε τον κύκλο ζωής ενός bean στο Spring.
Αν υπάρχουν πολλές προσφορές από διαφορετικές εταιρείες, με ποια κριτήρια θα κάνεις την επιλογή σου; Αναφέρεις τρία.