Wat kan er gezegd worden over de optimaliteit van het queryplan? MVCC Er is een tabel CREATE TABLE orders ( id BIGSERIAL PRIMARY KEY, status TEXT, updated_at TIMESTAMP ); en een query die elke seconde wordt uitgevoerd UPDATE orders SET status = 'processed', updated_at = now() WHERE id = 1; Na een paar dagen merk je: • de grootte van de tabel is sterk toegenomen • de query SELECT * FROM orders WHERE id = 1 wordt langzamer Vragen voor de kandidaat 1. Waarom groeit de tabel, hoewel de rij altijd hetzelfde is? 2. Welke rol speelt MVCC in deze situatie? 3. Wat zou dit probleem moeten oplossen?
C#
Wat is IAsyncDisposable?
Weet je wat vacuum en vacuum full zijn?
Wat zal het programma met async/await afdrukken: main drukt A af, roept saySomething (statisch, retourneert Task) aan, wacht 5 seconden, daarna D?
Soort transacties / isolatieniveaus?
Wat toont het programma als throw op de aangegeven plaatsen wordt uitgecommentarieerd?
Wat is een ander probleem met multithreading in de methode Init?
Werkte het niet met Linq2DB?
Hoe maak je een klasse iteratief?
Welke technologiestack hebben ze gebruikt?
IMemoryCache — wat is het en wanneer gebruiken?
Review: toegepaste code De klasse bevat de logica voor het verwerken van nieuwe bestellingen. Haalt de bestellingen en posities uit de database, doet vervolgens een HTTP-aanroep naar een externe microservice Stock, waarin de producten worden gereserveerd volgens de posities van de bestelling. Als alle reserveringen succesvol zijn, bevestigt de microservice de reservering van de bestelling in Stock en markeert de bestelling als verwerkt. De microservice wordt in meerdere exemplaren uitgevoerd, dus de methode Process kan parallel worden uitgevoerd. Om te voorkomen dat dezelfde regels worden verwerkt, wordt een mechanisme van pessimistische vergrendeling in PostgreSQL Select for update ... skip locked gebruikt. De implementatie van IBus stuurt berichten naar RabbitMq. ```csharp public sealed class PendingOrdersProcessor { public async Task PendingOrdersProcessor(ILogger logger, IBus bus, HttpStockService st { var env = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT"); var cs = _cs[env]; _db = new OrdersRepository(cs); _bus = bus; logger = logger; ``` ```csharp _stockService = stockService; } private readonly ILogger _logger; private readonly IOrdersRepository _db; private readonly IStockService _stockService; private readonly IBus _bus; private static readonly Dictionary<string, string> _cs = new { { "Development", "User ID=root;Password=myPassword;Host=localhost;Port=5432;Database=myDataBase" }, { "Production", "User ID=root;Password=myPassword;Host=prod-db;Port=5432;Database=" "Pooling=true;Min Pool Size=0;Max Pool Size=1;" } }; ```
Wanneer vindt de sluiting (closure) plaats?
Vertel over je laatste baan — Severstal. Wat deed je, hoe lang heb je daar gewerkt, welke technologie stack?
Waarom kan een struct niet erven?
Hoeveel geheugen neemt een Date-voorbeeld in op in 32- en 64-bit systemen?
Hoe te repareren zodat 0-9 wordt weergegeven?
IMemoryCache Wat zijn de voor- en nadelen van het gebruik van IMemoryCache in een applicatie? Wat is de OWASP top 10? Code-metrics 1. Welke codekwaliteitsmetingen ken je? 2. Heb je ze gebruikt? 3. Hoe heb je ze berekend? 4. Zijn ze onderdeel van CI of ad hoc? Belasting Wat zou je doen als je service (webpagina) vastloopt in een test- of belastingomgeving, maar lokaal alles werkt?
Hoe werken transacties met versies in MVCC?
Waarom werkt een applicatie met database in de ene omgeving en degradeert in de andere?