Sobes.tech

Java

Vai jūsu pēdējā projektā tika veikta metrikas tieša vākšana un analīze no serveriem ražošanas vidē?

Junior — Middle
437

Kāda ir ārējās atslēgas loma relāciju datu bāzē?

Junior — Middle
393

Kāda ir atšķirība starp synchronizedMap un ConcurrentHashMap izmantošanu, lai nodrošinātu kolekciju pavedienu drošību?

Junior — Middle
387

Kādus metodes var izmantot, lai paātrinātu vaicājumu izpildi tabulā, kas ik dienu apstrādā apmēram 100 tūkstošus jaunu ierakstu, un kā tas ietekmēs nedēļas izvēles izpildi?

Middle — Middle+
363

Kādas ir iemesli, lai ierobežotu indeksēto lauku skaitu datu bāzē?

Junior — Middle
354

Kā uzzināt izpildīto SQL vaicājumu PostgreSQL?

Junior — Middle
353

Kādas sekas var rasties, izveidojot indeksu tabulā ar miljonu rindu?

Junior — Middle
352

Cik ilgs laiks nepieciešams, lai veiktu maksimālā elementa meklēšanas operācijas, izmantojot ArrayList, ja elementi tiek pievienoti reti?

Junior — Middle
329

Kādi citi veidi, papildus daudzprocesu, var tikt izmantoti, lai uzlabotu pakalpojuma efektivitāti, kas ģenerē pārskatus un veic 4 paralēlas HTTP pieprasījumus dažādām sistēmām?

Junior — Middle
324

Kā optimizēt vai novērst kļūdas SQL vaicājumā?

Junior — Middle
324

Kā var ieviest pesimistiskās bloķēšanas mehānismu, lai nodrošinātu datu integritāti daudzprocesu vidē?

Middle — Middle+
321

Lūdzu, izlasiet kodu un norādiet kļūdas /** * Klients ar iegādātu biļeti var par papildu samaksu izvēlēties konkrētu vietu. * Galvenā vietu cena tiek noteikta ar tarifiem (ārējais pakalpojums). * Dažiem klientiem ar noteiktiem tarifiem (PREMIUM, ULTRA) ir nepieciešams piemērot atlaidi maksājumā. * Rezervējot, klientam tiek izrakstīts rēķins apmaksai. Maksājumu pārvalda ārējais serviss. */ @Service public class SeatBookingService { @Autowired private SeatBookingRepository seatBookingRepository; @Autowired private TicketRepository ticketRepository; @Autowired private TariffClient tariffClient; @Autowired private CustomerClient customerClient; @Autowired private PaymentClient paymentClient; /** * Rezervācija. * @param seatCode vietas kods (piemēram, 19A) * @param ticketId biļetes ID */ @Transactional public void bookSeat(String seatCode, UUID ticketId) { var ticket = ticketRepository.findById(ticketId); // rezervējam var seatBooking = new SeatBooking(seatCode, ticket.get().getFlightId(), ticketId, BookingStatus.BOOKED); seatBookingRepository.save(seatBooking); // meklējam pamatcenu izvēlētajai vietai lidmašīnā var basePrice = tariffClient.getBasePrice(ticket.get().getPlaneModel(), seatCode); // meklējam klienta datus Long userId = (Long) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); var userData = customerClient.getCustomer(userId); System.out.println("Atrasts lietotājs " + userData.getFio() + " dokumenta numurs " + userData.getDocument()); var price = basePrice; if (userData.getTariff() == "PREMIUM") { // 50% atlaide price = basePrice * 0.5d; } if (userData.getTariff() == "ULTRA") { // 20% atlaide price = basePrice * 0.8d; } var invoice = new Invoice(price, ticketId, userId); // izrakstām rēķinu paymentClient.sendInvoice(invoice); System.out.println("Rēķins izrakstīts"); } @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; }

309

Kas varētu novest pie funkcijas veiktspējas pasliktināšanās?

Junior — Middle
308

Kādiem veidiem var uzlabot meklēšanas ātrumu tabulā?

Junior — Middle
308

Vai jūs varat izskaidrot pesimistiskās bloķēšanas darbības principu un kā tā atšķiras no citas bloķēšanas stratēģijas?

Junior — Middle
305
/15