Sorgulama planının optimizasyonu hakkında ne söylenebilir? MVCC Bir tablo var CREATE TABLE orders ( id BIGSERIAL PRIMARY KEY, status TEXT, updated_at TIMESTAMP ); ve her saniye çalışan bir sorgu UPDATE orders SET status = 'processed', updated_at = now() WHERE id = 1; Birkaç gün sonra fark ediyorsunuz: • Tablo boyutu büyük ölçüde arttı • SELECT * FROM orders WHERE id = 1 sorgusu daha yavaş çalışıyor Adaya sorular 1. Neden tablo büyüyor, oysa satır her zaman aynı mı? 2. MVCC bu durumda ne rol oynar? 3. Bu sorunu çözmek için ne yapılmalı?
C#
IAsyncDisposable nedir?
Vacuum ve vacuum full biliyor musunuz?
Async/await ile program ne yazdırır: main A yazdırır, saySomething'ı çağırır (statik, Task döner), 5 saniye bekler, sonra D?
İşlem türleri / izolasyon seviyeleri?
Throw yorum satırları kaldırılırsa, program ne gösterecek?
Init metodinde çoklu iş parçacığıyla ilgili başka bir sorun nedir?
Linq2DB ile çalışmıyor muydu?
Bir sınıf nasıl yineleyici hale getirilir?
Hangi teknolojik yığını kullandınız?
IMemoryCache — nedir ve ne zaman kullanılır?
İnceleme: uygulanan kod Sınıf, yeni siparişleri işleme mantığını içerir. Veritabanından siparişleri ve pozisyonları çıkarır, ardından harici bir mikroservis olan Stock'a HTTP çağrısı yapar ve sipariş pozisyonlarına göre ürünleri rezerve eder. Tüm rezervasyonlar başarılıysa, mikroservis sipariş rezervasyonunu onaylar ve siparişi işlenmiş olarak işaretler. Mikroservis birkaç örnekte çalıştırılır, bu nedenle Process yöntemi paralel olarak çalışabilir. Aynı satırların işlenmesini önlemek için PostgreSQL Select for update ... skip locked mekanizması kullanılır. IBus uygulaması, mesajları RabbitMq'ya gönderir. ```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;" } }; ```
Kapan kapanma (closure) gerçekleşir?
Son iş yerinizden bahsedin — Severstal. Ne yapıyordunuz, ne kadar çalıştınız, hangi teknolojiyi kullanıyordunuz?
Neden struct kalıtım yapamaz?
32 ve 64 bit sistemlerde bir Date örneğinin ne kadar bellek kapladığı nedir?
0-9'un görüntülenmesi için nasıl düzeltilir?
IMemoryCache Bir uygulamada IMemoryCache kullanmanın artıları ve eksileri nelerdir? OWASP Top 10 nedir? Kod metrikleri 1. Hangi kod kalitesi metriklerini biliyorsunuz? 2. Kullandınız mı? 3. Nasıl hesapladınız? 4. CI'nin bir parçası mı yoksa ad hoc mu? Yük Hizmetiniz (web sayfası) test veya yük testi ortamında takılı kalıyorsa, ama yerel olarak her şey çalışıyorsa, ne yaparsınız?
MVCC'de işlemler sürümlerle nasıl çalışır?
Veritabanı ile uygulama neden bir ortamda çalışıyor ve başka bir ortamda bozuluyor?