Как да направите стек универсален за работа не само с Integer, но и със String и персонализирани обекти?
Java
Какво трябва да се има предвид при създаването на индекс върху голяма таблица в продукция?
Напишете свой собствен клас, който реализира стек, с методи push, pop и peekMax, който връща максималния елемент в стека за O(1).
Защо е необходим SELECT FOR UPDATE, а не synchronized? И защо пессимистично блокиране, а не оптимистично?
Защо ще възникне StackOverflowError, ако няма локални променливи? С какво ще се запълни паметта?
Защо не можем просто да използваме една променлива max вместо втория стек?
Какво да правите, ако processFile не успее да се изпълни след потвърждаване на транзакцията?
Има система, която позволява на потребителите да работят с файлове в браузъра. Стекът по подразбиране: Java, Spring, React, Postgres. Файловете се съхраняват във файловата система на бекенда, метаданните на файловете в базата данни. Екипът реализира функция: @Transactional public void process(String oldName, String newName) { Long id = exec("select id from file where name='" + oldName + "'"); // изпълнение на заявка към базата данни processFile(oldName, newName); // преименуване на файла на диска exec("update file set name='" + newName + "' where id = " + id); // изпълнение на заявка към базата данни }
Може ли да се оптимизира стекът по памет, за да няма x2 потребление?
Има бекенд, има потребителски интерфейс. Стекът е стандартен: Java, Spring, React, Postgres. Задача: Проектирайте REST крайна точка, която трябва да вземе данни от 3 източника и да ги върне на UI, като осигури възможно най-голяма пропускателна способност и минимално време за отговор (критерии макс/мин според нашите конкретни условия, тъй като по същество няма магическо решение и трябва да се намери компромис). Знае се, че очакваният пик RPS за тази крайна точка ще бъде 200. Известни детайли за източниците: 1. Източник - нашата база данни, заявката отнема около 15 секунди. 2. Източник - свързан REST услуга, деградира до 2 минути при 100 RPS, в нормален режим отговаря за 5 секунди. Не можем да променим поведението на този източник. 3. Източник - свързан REST услуга, отговаря произволно (не са установени конкретни модели) с грешки 503, в нормален режим отговаря за 10 секунди. Не можем да променим поведението на този източник.
Какъв тип индекс да използвате за търсене в средата или в края на низ (LIKE '%текст%')?
Напишете много прост метод, който при изпълнение ще хвърли StackOverflowError.