Sobes.tech

Java

Na przykładzie tworzenia zamówienia. Jest zapytanie do serwisu i jest odpowiedź, między tymi dwoma działaniami zachodzi wymiana towarów między serwisami i zewnętrznymi, które są opisane (np. do liczenia popularności towarów). Serwis wykonuje się wielokrotnie, działa wolno lub w ogóle przekracza limit czasu i nie zdążamy odpowiedzieć, tracimy zamówienie. Co zrobić, aby przestać tracić zamówienia i tym samym pieniądze?

204

Napisz zapytanie SQL: wybierz imiona trzech najczytanych autorów w tym momencie (tych, którzy mają najwięcej książek w rękach).

189

Oceń złożoność algorytmiczną rozwiązania problemu palindromu. Pod względem czasu i pamięci. Jeśli alfabet jest stały (litery angielskie, 26 znaków), jaka jest złożoność pamięci?

182

Dla tablicy liczb arr i liczby k Należy zwrócić nową tablicę, w której liczba powtarzających się elementów nie przekracza > k Przykład: Input: arr=[1,1,1,2,3,3,3,4,4], k=3 Output: res=[1,3,4]

169

Należy opisać model biblioteki. Istnieją 3 encje: "Autor", "Książka", "Czytelnik". Fizycznie, jest tylko jedna książka i może być przypisana tylko do jednego czytelnika. Należy utworzyć tabele dla biblioteki, aby to uwzględnić.

158

/** * Zrealizować 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) { }

152

Napisz zapytanie SQL: wybierz tytuły wszystkich książek, które mają więcej niż trzech autorów.

146

/** * chars = ['a', 'a', 'a', 'b', 'b', 'c', 'a'] * return: a3b2ca2 */ class JavaTask3Solution { public String compress(char[] chars) { } }

145

Jak skalować usługę przy liniowym wzroście obciążenia? Co zrobić, gdy skalowanie poziome osiąga limity bazy danych?

141

Wzorzec Outbox: jak zapewnić atomowość zapisu w bazie danych i wysyłki zdarzenia do kolejki?

135

Warunki Istnieją 3 encje - użytkownik, czat, wiadomość - Użytkownik ma imię i datę rejestracji - Czat ma nazwę i datę utworzenia - Wiadomość ma tekst, autora i datę utworzenia - Użytkownik może być jednocześnie w kilku czatach - Wiadomość musi należeć do czatu i nie może należeć do więcej niż jednego czatu jednocześnie - Należy opisać dziedzinę w formie tabel

132

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?

130

Napisz zapytanie SQL: wybierz tytuły wszystkich książek, które są obecnie w rękach czytelników.

129

Jakie rodzaje sharding'u istnieją? Opowiedz o głównych podejściach.

127

Czym różni się Cassandra od PostgreSQL? Opowiedz o głównych różnicach.

125

Dla podanego ciągu znaków należy określić długość największego palindromu, który można utworzyć z jego znaków. Palindrom to słowo, które czyta się tak samo od początku do końca i od końca do początku, na przykład "kajak" lub "oko". Przykład: Input: aaabbbcccddd Output: 11 (palindrom dccbbaaabbccd)

120

Istnieją 3 encje: użytkownik, czat, wiadomość - Użytkownik ma imię i datę rejestracji - Czat ma nazwę i datę utworzenia - Wiadomość ma tekst, autora i datę utworzenia - Użytkownik może być jednocześnie w kilku czatach - Wiadomość musi należeć do czatu i nie może należeć do więcej niż jednego czatu jednocześnie - Należy opisać dziedzinę w formie tabel

120

Czy metoda transferMoney powinna być opakowana w @Transactional i dlaczego?

116
/2