Sobes.tech

Java

Jakie potencjalne trudności i ograniczenia mogą wystąpić podczas korzystania z Kafka w systemach?

Middle — Middle+
195

Jaki jest poziom trudności zwiększania rozmiaru ArrayList przy dodawaniu co 1000 elementów?

Junior — Middle
195

Jaka jest złożoność czasowa wstawiania elementu do środka listy powiązanej, jeśli masz już wypełnioną tablicę?

Junior — Middle
195

Co motywuje Cię do rozważenia możliwości zmiany obecnego projektu?

Junior — Middle
194

W jakich przypadkach i przy jakich warunkach mogą wystąpić utraty danych w Kafka?

193

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); }

192

Jakie metody pozwalają zapewnić odporność usługi na awarie i jej szybkie przywrócenie bez zakłócania działania całego systemu?

Middle — Middle+
192

Czy miałeś kiedyś doświadczenie niezgody z decyzją techniczną lub architektoniczną zespołu? Jak się zachowałeś?

191

Jak zorganizowane jest przechowywanie i dystrybucja danych w Kafka?

Junior — Middle
190

Jakie komponenty obejmuje architektura Kafka i jak ze sobą współpracują?

Junior — Middle
190

Wyjaśnij, co oznacza stosowanie podejścia deklaratywnego w programowaniu i jego kluczowe cechy.

Junior — Middle
190

Jak mierzyć skuteczność pracy z danymi i na co ona wpływa?

Junior — Middle
189

Czy możesz wyjaśnić, czym jest Gson i jak działa z polami podczas serializacji i deserializacji?

Junior — Middle
188

W jakich przypadkach lepiej jest używać struktury danych LinkedList zamiast innych kolekcji?

Junior — Middle
187
/11
Pytania do przygotowania do Java — Strona 8 - sobes.tech