Jak uczynić stos uniwersalnym do pracy nie tylko z Integer, ale także z String i obiektami niestandardowymi?
Java
Na co należy zwrócić uwagę, tworząc indeks na dużej tabeli w produkcji?
Napisz własną klasę, która implementuje stos, z metodami push, pop i peekMax, zwracającym maksymalny element na stosie w czasie O(1).
Dlaczego potrzebny jest SELECT FOR UPDATE, a nie synchronized? I dlaczego blokada pesymistyczna, a nie optymistyczna?
Dlaczego wystąpi błąd StackOverflowError, jeśli nie ma zmiennych lokalnych? Czym zostanie wypełniona pamięć?
Co zrobić, jeśli processFile nie może zostać wykonany po zatwierdzeniu transakcji?
Dlaczego nie można po prostu użyć jednej zmiennej max zamiast drugiego stosu?
Istnieje system, który umożliwia użytkownikom pracę z plikami w przeglądarce. Standardowy stos technologiczny: Java, Spring, React, Postgres. Pliki są przechowywane w systemie plików na backendzie, metadane plików w bazie danych. Zespół zaimplementował funkcję: @Transactional public void process(String oldName, String newName) { Long id = exec("select id from file where name='" + oldName + "'"); //wykonanie zapytania do bazy danych processFile(oldName, newName); //zmiana nazwy pliku na dysku exec("update file set name='" + newName + "' where id = " + id); //wykonanie zapytania do bazy danych }
Czy można zoptymalizować stos pod kątem pamięci, aby nie było podwójnego zużycia?
Jaki typ indeksu użyć do wyszukiwania w środku lub na końcu ciągu (LIKE '%tekst%')?
Jest backend i interfejs użytkownika. Stos technologiczny jest standardowy: Java, Spring, React, Postgres. Zadanie: Zaprojektować punkt końcowy REST, który musi pobrać dane z 3 źródeł i zwrócić je do UI, zapewniając maksymalną możliwą przepustowość i minimalny możliwy czas odpowiedzi (kryteria maksymalne/minimalne w oparciu o nasze konkretne warunki, ponieważ w zasadzie nie ma magicznego rozwiązania i trzeba znaleźć kompromis). Wiadomo, że oczekiwany szczyt RPS dla tego punktu końcowego wyniesie 200. Znane szczegóły dotyczące źródeł: 1. Źródło - nasza baza danych, zapytanie trwa około 15 sekund. 2. Źródło - powiązana usługa REST, degraduje do 2 minut przy 100 RPS, w trybie normalnym odpowiedź w ciągu 5 sekund. Nie możemy zmienić zachowania tego źródła. 3. Źródło - powiązana usługa REST, odpowiada losowo (nie udało się ustalić żadnych wzorców) z błędami 503, w trybie normalnym odpowiedź w 10 sekund. Nie możemy zmienić zachowania tego źródła.
Napisz najprostszy sposób, który podczas działania rzuci StackOverflowError.