01Sorun ve çözüm
Performans testi hizmetimizde önce kullanıcılarınızın gerçekten izlediği yolları belirleriz: ürün arama, sepete ekleme, rapor alma, mobil uygulamada giriş. Bu senaryolar tekrarlanabilir test betiklerine dönüşür, yanıt süreleri dağılımıyla birlikte ölçülür ve her yavaş adım uygulama, veritabanı ya da ağ katmanındaki nedenine kadar izlenir. Rapor, neyin düzeltileceğini ve düzeltmenin ne kazandıracağını ölçüm verisiyle gösterir. Bu çalışma beklenen ve olağan kullanımdaki hızla ilgilidir; sistemin sınırını zorlamak ve kırılma noktasını bulmak stres testinin konusudur.
02Kimler için
Performans testi hangi durumlarda istenir
Ölçüm ihtiyacı çoğu zaman bir değişikliğin öncesinde ya da açıklanamayan bir yavaşlamanın ardından doğar.
- Yeni sürümü yayına almadan önce önceki sürümden daha yavaş olmadığını görmek isteyen ürün ekipleri
- Arama motoru sıralaması ve dönüşüm için sayfa hızını iyileştirmek isteyen e-ticaret siteleri
- Kullanıcılarından yavaşlık şikâyeti alan ama sunucu kaynaklarında bir sorun göremeyen yazılım şirketleri
- Bir yazılım firmasından teslim aldığı sistemin sözleşmedeki yanıt süresi şartlarını karşıladığını doğrulamak isteyen kurumlar
- Altyapı ya da veritabanı değişikliği sonrası hızın korunduğunu kanıtlamak isteyen BT ekipleri
03İhtiyaçlar
Yavaşlığın tipik kaynakları
Ölçümlerde en sık karşılaştığımız nedenler birkaç başlıkta toplanır.
- 01
Veritabanı sorguları
İndeks kullanmayan aramalar, bir listede her satır için ayrı atılan sorgular ve gereğinden fazla veri çeken raporlar en yaygın nedendir. Sorgu planı incelenerek hangisinin ne kadar zaman aldığı netleşir.
- 02
Ön yüz ağırlığı
Sıkıştırılmamış görseller, sayfayı bloke eden betikler ve üçüncü taraf etiketleri özellikle mobil cihazlarda açılışı geciktirir. Largest Contentful Paint ve Interaction to Next Paint gibi ölçütler bu katmanın durumunu gösterir.
- 03
Dış servis bekleme süreleri
Ödeme, kargo, döviz kuru ya da adres doğrulama servislerine yapılan çağrılar isteğin süresine doğrudan eklenir. Hangi çağrının ne kadar beklettiği ayrı ayrı ölçülür.
- 04
Kaynak ve yapılandırma ayarları
Bağlantı havuzu boyutu, iş parçacığı sınırları, çöp toplayıcı ayarları ve önbellek süreleri varsayılan değerlerinde bırakıldığında sistem kendi kapasitesinin altında çalışır.
04Özellikler
Performans testi hizmetinde ölçtüklerimiz ve teslim ettiklerimiz
Kapsam web, mobil arka uç ya da API katmanına göre birlikte belirlenir.
- 01
Senaryo ve hedef tanımı
Her kritik kullanıcı yolu için kabul edilebilir yanıt süresi ortalama değil, yüzdelik dilim olarak tanımlanır; çünkü ortalama, yavaş deneyim yaşayan kullanıcıları gizler. Hedefler sizinle birlikte, iş etkisine göre konur.
- 02
Temel ölçüm
Değişiklik yapılmadan önce mevcut durum kaydedilir. Sonraki her iyileştirme bu temel ölçüme göre karşılaştırılır, böylece hangi değişikliğin ne kazandırdığı tartışmaya yer bırakmaz.
- 03
Katman katman profil çıkarma
Test sırasında uygulama izleme, veritabanı istatistikleri ve sunucu metrikleri aynı zaman çizelgesinde toplanır. Yavaş bir isteğin süresinin nereye harcandığı adım adım görünür.
- 04
Bulgu raporu
Her bulgu için etkilenen senaryo, ölçülen değer, kanıt olarak sorgu ya da iz kaydı ve önerilen düzeltme yazılır. Bulgular etkisine ve düzeltme zorluğuna göre sıralanır.
- 05
Sürekli entegrasyona bağlama
İstenirse temel senaryolar derleme hattına eklenir; yeni bir sürüm belirlenen eşiğin üzerinde yavaşlarsa yayına çıkmadan uyarı verir.
05Entegrasyonlar
Kullandığımız ölçüm araçları
Araç seçimi sistemin teknolojisine ve ekibinizin sonradan testleri sürdürüp sürdürmeyeceğine göre yapılır.
- 01
Yük üretme araçları
k6, Apache JMeter, Gatling ya da Locust gibi açık kaynaklı araçlarla senaryolar kod olarak yazılır ve depoda saklanır.
- 02
Tarayıcı ölçümleri
Lighthouse, WebPageTest ve gerçek kullanıcı verisi için Chrome kullanıcı deneyimi raporu ön yüz ölçümlerinde kullanılır.
- 03
Uygulama izleme
Mevcut bir APM aracınız varsa ondan yararlanırız; yoksa OpenTelemetry tabanlı geçici bir izleme kurulumu yapılabilir.
- 04
Veritabanı analizi
Yavaş sorgu günlükleri, sorgu planları ve PostgreSQL için pg_stat_statements gibi istatistik görünümleri incelenir.
- 05
Mobil uygulama ölçümleri
Android Studio ve Xcode profil araçlarıyla açılış süresi, ekran geçişleri ve ağ çağrıları ölçülür.
06Süreç
Performans testi hizmeti nasıl ilerler?
Adım 01
Analiz
İş akışınızı, kullanıcılarınızı ve mevcut sistemlerinizi dinleriz; kapsamı, öncelikleri ve kabul ölçütlerini yazılı hâle getiririz.
Adım 02
Tasarım
Ekran akışlarını ve veri modelini çıkarırız. Arayüzü sizinle gözden geçirip onay almadan geliştirmeye geçmeyiz.
Adım 03
Geliştirme
Kısa döngülerle çalışırız; her döngü sonunda çalışan bir sürümü test ortamında görürsünüz.
Adım 04
Test
İşlevsel testler, entegrasyon testleri ve temel güvenlik kontrolleriyle hataları yayından önce yakalarız.
Adım 05
Yayın
Sunucu, alan adı, yedekleme ve izleme ayarlarını yaparak canlıya alırız; ekibinize kısa bir kullanım eğitimi veririz.
Adım 06
Bakım
İsterseniz bakım ve destek anlaşmasıyla güncellemeleri, izlemeyi ve yeni geliştirmeleri sürdürürüz.
07Teknoloji
Güvenilir bir performans ölçümünün koşulları
Ölçümün değeri, ortamın canlıya ne kadar benzediğine bağlıdır. Boş bir veritabanında yapılan test, milyonlarca satırlık tabloda yaşanan sorunu göstermez; bu yüzden test ortamını gerçeğe yakın veri hacmiyle, gerekirse KVKK'ya uygun biçimde anonimleştirilmiş üretim verisiyle hazırlarız. Kişisel veri içeren kayıtlar test ortamına maskelenmeden taşınmaz.
Devamını okuDaha az göster
Tek bir koşu sonuç sayılmaz. Her senaryo birkaç kez tekrarlanır, ısınma süresi ayrı tutulur ve sonuçlar arasındaki sapma raporlanır. Önbelleğin dolu ve boş olduğu durumlar ayrı ayrı ölçülür, çünkü kullanıcının ilk ziyareti ile sonraki ziyaretleri farklı deneyimlerdir.
Testler canlı sisteme dokunacaksa zaman dilimi, trafik seviyesi ve durdurma koşulu önceden yazılı olarak kararlaştırılır. Ödeme ve SMS gibi gerçek işlem doğuran dış servisler test sırasında taklit servislerle değiştirilir.
08Çalışma modelleri
Bu hizmette çalışma modelleri
09Sık sorulan sorular
Performans testi hakkında sık sorulan sorular
Performans testi fiyatlarını ne belirler?
Test edilecek senaryo sayısı, ön yüz ve mobil ölçümlerin kapsama girip girmediği, test ortamının hazır olup olmadığı ve raporun yanında düzeltme desteği istenip istenmediği belirleyicidir. Senaryolar netleştikten sonra sabit kapsamlı bir teklif hazırlanır.
Performans testi ile yük testi ve stres testi arasındaki fark nedir?
Performans testi sistemin olağan koşullarda ne kadar hızlı olduğunu ve yavaşlığın nedenini ölçer. Yük testi beklenen eşzamanlı kullanıcı sayısında davranışı, stres testi ise bu sınırın ötesinde nerede ve nasıl kırıldığını inceler.
Test için kaynak kodumuza erişmeniz gerekir mi?
Ölçüm için zorunlu değildir; dışarıdan yapılan test de yavaş noktaları gösterir. Ancak nedeni kesin olarak bulmak ve somut düzeltme önermek için kod ve veritabanı erişimi raporun değerini belirgin biçimde artırır.
Bulduğunuz sorunları düzeltiyor musunuz?
Raporla birlikte düzeltme önerilerini sunarız; uygulamayı ekibiniz yapabilir ya da ayrı bir iş olarak bize bırakabilirsiniz. Düzeltmeden sonra aynı senaryolar yeniden koşularak kazanım ölçülür.
Bir performans testi firmasından rapor olarak ne beklemeliyim?
Senaryoların tanımı, test koşulları, yüzdelik dilimlerle yanıt süreleri, kaynak kullanımı grafikleri ve her bulgu için kanıt içeren bir rapor beklemelisiniz. Yalnızca ortalama süre ve genel öneriler içeren bir belge karar vermeye yetmez.
Testler ne sıklıkla tekrarlanmalı?
Önemli her sürümden, altyapı değişikliğinden ve yoğun dönemlerden önce tekrarlanması önerilir. Temel senaryolar derleme hattına bağlanırsa her sürümde otomatik ölçüm alınır.
10İlgili hizmetler