Share via


Blob depolamada gecikme süresi

Bazen yanıt süresi olarak başvurulabilen gecikme süresi, bir uygulamanın isteğin tamamlanmasını beklemesi gereken süredir. Gecikme süresi bir uygulamanın performansını doğrudan etkileyebilir. Düşük gecikme süresi, kredi kartı işlemlerinin gerçekleştirilmesi veya web sayfalarının yüklenmesi gibi döngüdeki insanların olduğu senaryolar için genellikle önemlidir. Telemetri günlüğü veya IoT olayları gibi gelen olayları yüksek hızlarda işlemesi gereken sistemler de düşük gecikme süresi gerektirir. Bu makalede blok blobları üzerindeki işlemlerin gecikme süresini anlama ve ölçme ve uygulamalarınızı düşük gecikme süresi için tasarlama işlemleri açıklanmaktadır.

Azure Depolama, blok blobları için iki farklı performans seçeneği sunar: premium ve standart. Premium blok blobları, yüksek performanslı SSD diskler aracılığıyla standart blok bloblarına göre önemli ölçüde daha düşük ve daha tutarlı gecikme süresi sunar. Daha fazla bilgi için bkz. Blob verileri için Sık Erişimli, Seyrek Erişimli ve Arşiv erişim katmanlarındaPremium performans blok blobu depolama.

Azure Depolama gecikme süresi hakkında

Azure Depolama gecikme süresi, Azure Depolama işlemleri için istek hızları ile ilgilidir. İstek hızları, saniye başına giriş/çıkış işlemleri (IOPS) olarak da bilinir.

İstek hızını hesaplamak için önce her isteğin tamamlanması için gereken süreyi belirleyin, ardından saniyede kaç isteğin işleneceğini hesaplayın. Örneğin, bir isteğin tamamlanmasının 50 milisaniye (ms) sürdüğünü varsayalım. Tek bir bekleyen okuma veya yazma işlemine sahip bir iş parçacığı kullanan bir uygulama 20 IOPS (istek başına 1 saniye veya 1000 ms / 50 ms) elde etmelidir. Teorik olarak, iş parçacığı sayısı ikiye katlanırsa, uygulamanın 40 IOPS elde edebilmesi gerekir. Her iş parçacığı için bekleyen zaman uyumsuz okuma veya yazma işlemleri ikiye iki katına çıkarsa, uygulamanın 80 IOPS elde edebilmesi gerekir.

Uygulamada, istemcide görev zamanlama, bağlam değiştirme vb. ek yük nedeniyle istek hızları her zaman doğrusal olarak ölçeklendirilmemektedir. Hizmet tarafında, Azure Depolama sistemi üzerindeki baskı, kullanılan depolama medyası farklılıkları, diğer iş yüklerinden kaynaklanan kirlilik, bakım görevleri ve diğer faktörler nedeniyle gecikme süresinde değişkenlik olabilir. Son olarak, istemci ile sunucu arasındaki ağ bağlantısı tıkanıklık, yeniden yönlendirme veya diğer kesintilerden dolayı Azure Depolama gecikme süresini etkileyebilir.

Aktarım hızı olarak da adlandırılan Azure Depolama bant genişliği, istek hızıyla ilgilidir ve istek hızı (IOPS) istek boyutuyla çarpılarak hesaplanabilir. Örneğin, saniyede 160 istek olduğunu varsayarsak, her 256 KiB veri saniyede 40.960 KiB veya saniyede 40 MiB aktarım hızıyla sonuçlanır.

Blok blobları için gecikme ölçümleri

Azure Depolama, blok blobları için iki gecikme süresi ölçümü sağlar. Bu ölçümler Azure portal görüntülenebilir:

  • Uçtan uca (E2E) gecikme süresi , Azure Depolama'nın isteğin ilk paketini alması ile Azure Depolama'nın yanıtın son paketinde bir istemci bildirimi almasına kadar geçen süreyi ölçer.

  • Sunucu gecikme süresi , Azure Depolama'nın isteğin son paketini aldığı zaman aralığını, yanıtın ilk paketi Azure Depolama'dan döndürülene kadar ölçer.

Aşağıdaki görüntüde, işlemi çağıran örnek bir iş yükü için Ortalama Başarı E2E Gecikme Süresi ve Ortalama Başarı Sunucusu Gecikme Süresi gösterilmektedir Get Blob :

Blob Alma işlemi için gecikme ölçümlerini gösteren ekran görüntüsü

Normal koşullarda, görüntünün örnek iş yükü için gösterdiği uçtan uca gecikme süresi ile sunucu gecikmesi arasında çok az boşluk vardır.

Uçtan uca ve sunucu gecikme süresi ölçümlerinizi gözden geçirir ve uçtan uca gecikme süresinin sunucu gecikme süresinden önemli ölçüde yüksek olduğunu fark ederseniz ek gecikme süresinin kaynağını araştırıp ele alın.

Uçtan uca ve sunucu gecikme süreniz benzerse ancak daha düşük gecikme süresi gerektiriyorsa premium blok blob depolamaya geçiş yapmayı göz önünde bulundurun.

Gecikme süresini etkileyen faktörler

Gecikme süresini etkileyen ana faktör, işlem boyutudur. Ağ üzerinden aktarılan ve Azure Depolama tarafından işlenen veri miktarı nedeniyle daha büyük işlemlerin tamamlanması daha uzun sürer.

Aşağıdaki diyagramda, çeşitli boyutlardaki işlemlerin toplam süresi gösterilmektedir. Az miktarda veri için, gecikme aralığı ağırlıklı olarak verileri aktarmak yerine isteği işlemek için harcanıyor. İşlem boyutu arttıkça gecikme süresi yalnızca biraz artar (aşağıdaki diyagramda 1 olarak işaretlenmiştir). İşlem boyutu arttıkça, veri aktarımı için daha fazla zaman harcandığından toplam gecikme süresi aralığı istek işleme ve veri aktarımı arasında bölünür (aşağıdaki diyagramda 2 olarak işaretlenmiştir). Daha büyük işlem boyutlarıyla gecikme süresi aralığı neredeyse yalnızca veri aktarımı için harcanır ve istek işleme büyük ölçüde önemsizdir (aşağıdaki diyagramda 3 olarak işaretlenmiştir).

İşlem boyutuna göre toplam işlem süresini gösteren ekran görüntüsü

Eşzamanlılık ve iş parçacığı oluşturma gibi istemci yapılandırma faktörleri de gecikme süresini etkiler. Genel aktarım hızı, belirli bir noktada kaç depolama isteğinin geçerli olduğuna ve uygulamanızın iş parçacığını nasıl işlediğine bağlıdır. CPU, bellek, yerel depolama ve ağ arabirimleri de dahil olmak üzere istemci kaynakları gecikme süresini etkileyebilir.

Azure Depolama isteklerinin işlenmesi için istemci CPU ve bellek kaynakları gerekir. İstemci yetersiz güçte çalışan bir sanal makine veya sistemdeki bir runaway işlemi nedeniyle baskı altındaysa, Azure Depolama isteklerini işlemek için kullanılabilecek kaynak sayısı daha azdır. herhangi bir çekişme veya istemci kaynaklarının eksikliği, sunucu gecikme süresinde bir artış olmadan uçtan uca gecikme süresinde artışa neden olur ve iki ölçüm arasındaki boşluğu artırır.

İstemci ile Azure Depolama arasındaki ağ arabirimi ve ağ kanalı da aynı derecede önemlidir. Tek başına fiziksel uzaklık, örneğin bir istemci VM'nin farklı bir Azure bölgesinde veya şirket içinde olması gibi önemli bir faktör olabilir. Ağ atlamaları, ISS yönlendirmesi ve İnternet durumu gibi diğer faktörler genel depolama gecikme süresini etkileyebilir.

Gecikme süresini değerlendirmek için önce senaryonuz için temel ölçümler oluşturun. Temel ölçümler iş yükü profilinize, uygulama yapılandırma ayarlarınıza, istemci kaynaklarına, ağ kanalına ve diğer faktörlere bağlı olarak uygulama ortamınız bağlamında beklenen uçtan uca ve sunucu gecikme süresini sağlar. Temel ölçümleriniz olduğunda anormal ve normal koşulları daha kolay belirleyebilirsiniz. Temel ölçümler, uygulama yapılandırması veya VM boyutları gibi değiştirilen parametrelerin etkilerini gözlemlemenize de olanak tanır.

Sonraki adımlar