Výhody a nevýhody monolitickej a mikroservisnej architektúry.
C#
Ako vyriešiť problém degradácie cache (Redis odpovedá za 1 sekundu, databáza za 10 ms)?
Vysvetlite rozdiel medzi referenčnými a hodnotovými typmi.
Implementujte metódu, ktorá vyplní úplné meno používateľa zo skladu (IDbRepository alebo ICacheRepository) a odovzdá obohatenú udalosť ďalej (IEventSaver) Je potrebné dosiahnuť maximálny výkon V cache je 99,9 % aktuálnych údajov Počiatočný poradie udalostí pri ukladaní môže byť narušené public async Task Enrich(IEnumerable<UserEvent> events) { }
Máte skúsenosti s vývojom alebo podporou monolitických aplikácií?
Aký je dôvod používania rôznych segmentov pamäte na ukladanie objektov namiesto ich spojenia do jednej sekcie?
Môžete vysvetliť, čo sa rozumie pod indexami v kontexte SQL databáz?
Ako v Kubernetesu padne po uspešni rezervaciji hotela, pre nego što sačuva ID rezervacije, kako obnoviti konzistenciu?
Povedaj mi o sebi, svojih zanimivih in pomembnih nalogah, o nečem težkem v karieri, na čemer si ponosen.
Môžeme použiť await v rámci bloku lock?
Môžete vysvetliť, čo znamená vzor Dispose v programovaní?
Koľko generácií má dátová štruktúra typu halda?
Vždy je možné použiť zásobník na ukladanie významných typov údajov?
public bool BookTour(string userId, DateTime start, DateTime end, int hotelId, string roomType, string flightClass, int airCompanyId, int flightnumber) { try { //flightClass tiež nechcem analyzovať ako enum var flightInfo = new FlightInfo(Enum.Parse<FlightClass>(flightClass), airCompanyId, flightnumber); var resultBookFlight = _airWaysService.Book(GetUser(userId), flightInfo); //roomType tiež nechcem analyzovať ako enum var rentInfo = new RentInfo(start, end, hotelId, Enum.Parse<RoomType>(roomType)); //GetUserId v samostatnej premennej var resultBookHotel = _hotelService.Book(GetUser(userId), rentInfo); //Výnimky pôjdu dovnútra, nebudú zachytené Task.WhenAll(resultBookFlight, resultBookHotel); //Prečo static reservationIdAir = resultBookFlight.Result; _reservationIdHotel = resultBookHotel.Result; } catch (BookFlightException) { _hotelService.CancelBook(_reservationIdAir); return false; } catch (BookHotelException) { _airWaysService.CancelBook(_reservationIdHotel); return false; } catch (Exception ex) { throw new ApplicationException(ex.Message); } finally { //polia 100% nie sú inicializované //Prečo po výnimke sa snažíme niečo uložiť //GetUser už bol extrahovaný unitOfWork.Execute(async () => { await _tourRepository.Save(_reservationIdAir, _reservationIdHotel, GetUser(userId)); }).RunSynchronously(); //Interlock.Increment() _countBooked++; } return true; }
Existuje statický slovník a chceme do neho zapisovať z rôznych vlákien. Ako je to najlepšie urobiť?
Čo je to objektovo orientované programovanie?
Uveďte primitives synchronizácie a stručne opíšte ich princípy fungovania.