Sobes.tech

Java

Ar jūsų paskutiniame projekte atlikote metrikų rinkimą ir analizę tiesiogiai iš serverių gamybos aplinkoje?

Junior — Middle
401

Kokia yra užsienio rakto vaidmuo santykinėje duomenų bazėje?

Junior — Middle
386

Kuo skiriasi naudoti synchronizedMap ir ConcurrentHashMap siekiant užtikrinti kolekcijų srauto saugumą?

Junior — Middle
367

Kokias metodus galima taikyti, siekiant padidinti užklausų greitį lentelėje, kuri apdoroja apie 100 tūkstančių naujų įrašų kasdien, ir kaip tai paveiks savaitinių atrankų vykdymą?

Middle — Middle+
359

Kokios priežastys gali būti naudinga riboti indeksuotų laukų skaičių duomenų bazėje?

Junior — Middle
352

Paaiškinkite visiško užblokavimo koncepciją duomenų bazių valdyme ir jos ypatybes.

Junior — Middle
349

Kokios gali būti pasekmės kuriant indeksą milijono eilučių lentelėje?

Junior — Middle
343

Kaip sužinoti įvykdytą SQL užklausą PostgreSQL?

Junior — Middle
341

Kiek laiko užtrunka maksimalios elemento paieškos operacijos naudojant ArrayList, jei elementai retai pridedami?

Junior — Middle
326

Kaip galima optimizuoti arba pašalinti klaidas SQL užklausoje?

Junior — Middle
318

Kokiais kitais būdais, išskyrus daugiagijį apdorojimą, galima pagerinti paslaugos, kuri generuoja ataskaitas ir atlieka 4 paralelinius HTTP užklausimus skirtingoms sistemoms, efektyvumą?

Junior — Middle
316

Kaip galima įgyvendinti pesimistinio užrakinimo mechanizmą, siekiant užtikrinti duomenų vientisumą daugiasraityje aplinkoje?

Middle — Middle+
314

Skaitykite kodą ir pažymėkite klaidas /** * Klientas, įsigijęs bilietą, gali už papildomą mokestį pasirinkti konkretų vietą. * Pagrindinė vietų kaina nustatoma tarifais (išorinis paslaugų teikėjas). * Kai kuriems klientams su tam tikrais tarifais (PREMIUM, ULTRA) reikia taikyti nuolaidą apmokėjimo metu. * Rezervuojant klientui išrašomas sąskaita apmokėjimui. Mokėjimo valdymas vyksta išoriniuose servisuose. */ @Service public class SeatBookingService { @Autowired private SeatBookingRepository seatBookingRepository; @Autowired private TicketRepository ticketRepository; @Autowired private TariffClient tariffClient; @Autowired private CustomerClient customerClient; @Autowired private PaymentClient paymentClient; /** * Rezervacija. * @param seatCode vietos kodas (pvz., 19A) * @param ticketId bilieto ID */ @Transactional public void bookSeat(String seatCode, UUID ticketId) { var ticket = ticketRepository.findById(ticketId); // rezervuojame var seatBooking = new SeatBooking(seatCode, ticket.get().getFlightId(), ticketId, BookingStatus.BOOKED); seatBookingRepository.save(seatBooking); // ieškome bazinės kainos pasirinktam vietai lėktuve var basePrice = tariffClient.getBasePrice(ticket.get().getPlaneModel(), seatCode); // ieškome kliento duomenų Long userId = (Long) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); var userData = customerClient.getCustomer(userId); System.out.println("Rasta naudotojas " + userData.getFio() + " dokumento numeris " + userData.getDocument()); var price = basePrice; if (userData.getTariff() == "PREMIUM") { // 50% nuolaida price = basePrice * 0.5d; } if (userData.getTariff() == "ULTRA") { // 20% nuolaida price = basePrice * 0.8d; } var invoice = new Invoice(price, ticketId, userId); // išrašome sąskaitą paymentClient.sendInvoice(invoice); System.out.println("Sąskaita išrašyta"); } @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; }

305

Kokiais būdais galima padidinti paieškos greitį lentelėje?

Junior — Middle
304

Ar galite paaiškinti pesimistinio užrakinėjimo veikimo principą ir kuo jis skiriasi nuo kitos užrakinėjimo strategijos?

Junior — Middle
298

Kas gali sukelti funkcijos veikimo pablogėjimą?

Junior — Middle
292
/15