Sobes.tech

Обяснете принципа на работа на метода за оптимистично заключване при управлението на конкурентен достъп до данни.

257

Какви стъпки ще предприемеш, за да определиш причините за редовните рестартирания на услугата, свързани с грешката OutOfMemoryError?

Junior — Middle
257

Какво може да доведе до влошаване на производителността при изпълнение на функция?

Junior — Middle
251

Можете ли да обясните концепцията за Stream API в Java и как се използва за обработка на данни?

249

Имали ли сте опит в взаимодействието с доставчици на данни или ресурси?

Junior — Middle
248

Какви са предимствата и недостатъците на използването на индекси за отделни колони в база данни?

Junior — Middle
248

Могат ли цикличните зависимости да доведат до изтичане на памет в програма?

Junior — Middle
242

Как да разберете изпълнения SQL-заявка в PostgreSQL?

Junior — Middle
242

Защо при едновременна модификация на ArrayList по време на итерация възниква изключението ConcurrentModificationException?

Junior — Middle
237

Прочетете кода и подчертайте грешките /** * Клиент с закупен билет може срещу допълнително заплащане да избере конкретно място. * Основната цена на местата се определя от тарифите (външен сервиз). * За клиенти с определени тарифи (PREMIUM, ULTRA) трябва да се приложи отстъпка при плащане. * При резервация се издава фактура за плащане. Управлението на плащанията се извършва във външен сервиз. */ @Service public class SeatBookingService { @Autowired private SeatBookingRepository seatBookingRepository; @Autowired private TicketRepository ticketRepository; @Autowired private TariffClient tariffClient; @Autowired private CustomerClient customerClient; @Autowired private PaymentClient paymentClient; /** * Резервация. * @param seatCode код на мястото (например 19A) * @param ticketId ID на билета */ @Transactional public void bookSeat(String seatCode, UUID ticketId) { var ticket = ticketRepository.findById(ticketId); //резервираме var seatBooking = new SeatBooking(seatCode, ticket.get().getFlightId(), ticketId, BookingStatus.BOOKED); seatBookingRepository.save(seatBooking); //търсим основната тарифа за мястото в самолета var basePrice = tariffClient.getBasePrice(ticket.get().getPlaneModel(), seatCode); //търсим данните за клиента Long userId = (Long) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); var userData = customerClient.getCustomer(userId); System.out.println("Намерен потребител " + userData.getFio() + " номер на документ " + userData.getDocument()); var price = basePrice; if (userData.getTariff() == "PREMIUM") { //50% отстъпка price = basePrice * 0.5d; } if (userData.getTariff() == "ULTRA") { //20% отстъпка price = basePrice * 0.8d; } var invoice = new Invoice(price, ticketId, userId); //издаваме фактура paymentClient.sendInvoice(invoice); System.out.println("Фактура изпратена"); } @Data @Table("seat_booking") public class SeatBooking { @Column private String seatCode; @Column private UUID flightId; @Column private UUID ticketId; @Column private BookingStatus status; } public enum BookingStatus { BOOKED, PAID; }

235

Можете ли да изброите основните методи, предоставени от Stream API в Java?

Junior — Middle
235

По какви начини можеш да увеличиш скоростта на изпълнение на този метод?

Junior — Middle
234

Какви методи могат да се използват за увеличаване на скоростта на търсене в таблица?

Junior — Middle
234

Какви действия ще предприемеш, ако при увеличаване на натоварването системата, закъсненията при изпълнение на заявките към базата данни станат значителни?

233

Можете ли да обясните принципа на работа на песимистичното блокиране и как се различава от друга стратегия за блокиране?

Junior — Middle
232

Можете ли да обясните как е структурирана наследствената структура на изключенията в езика за програмиране?

Junior — Middle
232

Обяснете концепцията за изтриване на типове и основната й цел в програмирането.

Junior — Middle
229

Как се осъществява настройката и регистрацията на Bean в рамките на Spring Framework?

229

Какви техники и подходи използвате за подобряване на ефективността на кеширането при увеличаване на обема на данните?

Junior — Middle
228
/15