Jakie potencjalne trudności i ograniczenia mogą wystąpić podczas korzystania z Kafka w systemach?
Java
Jaki jest poziom trudności zwiększania rozmiaru ArrayList przy dodawaniu co 1000 elementów?
Jaka jest złożoność czasowa wstawiania elementu do środka listy powiązanej, jeśli masz już wypełnioną tablicę?
Czy masz doświadczenie w pracy z frameworkiem Spring do tworzenia aplikacji?
Co wpływa na czas dodawania elementu na koniec listy powiązanej?
Co motywuje Cię do rozważenia możliwości zmiany obecnego projektu?
W jakich przypadkach i przy jakich warunkach mogą wystąpić utraty danych w Kafka?
Czy możesz wyjaśnić, czym jest pula wątków ForkJoin i jak działa?
Zaimplementuj przelew środków między dwoma kontami. Pamiętaj, że jest to rozwiązanie produkcyjne Parametry wejściowe: @param fromAccountId unikalny identyfikator użytkownika, który dokonuje przelewu @param toAccountId unikalny identyfikator użytkownika, na którego konto są przelewane środki @param amount kwota przelewu. Liczba dodatnia public void transferMoney(Long fromAccountId, Long toAccountId, BigDecimal amount) { if (amount.compareTo(BigDecimal.ZERO) <= 0) { throw new RuntimeException("Kwota musi być > 0"); } if (fromAccountId.equals(toAccountId)) { throw new RuntimeException("Konto nie może być takie samo"); } Long firstId = Math.min(fromAccountId, toAccountId); Long secondId = Math.max(fromAccountId, toAccountId); Account first = accountRepository.findByIdForUpdate(firstId) .orElseThrow(() -> new RuntimeException("Konto nie znalezione")); Account second = accountRepository.findByIdForUpdate(secondId) .orElseThrow(() -> new RuntimeException("Konto nie znalezione")); Account from = fromAccountId.equals(firstId) ? first : second; Account to = fromAccountId.equals(firstId) ? second : first; if (from.getBalance().compareTo(amount) < 0) { throw new RuntimeException("Niewystarczające saldo"); } from.setBalance(from.getBalance().subtract(amount)); to.setBalance(to.getBalance().add(amount)); accountRepository.save(to); accountRepository.save(from); }
Jakie metody pozwalają zapewnić odporność usługi na awarie i jej szybkie przywrócenie bez zakłócania działania całego systemu?
Czy miałeś kiedyś doświadczenie niezgody z decyzją techniczną lub architektoniczną zespołu? Jak się zachowałeś?
Jak zorganizowane jest przechowywanie i dystrybucja danych w Kafka?
Jakie komponenty obejmuje architektura Kafka i jak ze sobą współpracują?
Wyjaśnij, co oznacza stosowanie podejścia deklaratywnego w programowaniu i jego kluczowe cechy.
Czy możesz wyjaśnić, co oznacza termin 'obiekt niemutowalny' i jakie są jego kluczowe cechy?
Jak mierzyć skuteczność pracy z danymi i na co ona wpływa?
Jakie są zalety i wady systemu kolejek Kafka?
Czy możesz wyjaśnić, czym jest Gson i jak działa z polami podczas serializacji i deserializacji?
W jakich przypadkach lepiej jest używać struktury danych LinkedList zamiast innych kolekcji?