18. Esri Kullanıcıları Konferansı 7-8 Ekim 2013 ODTÜ, Ankara Teknik Atölye ArcGIS ve Sistem Performansı Noyan BODUR Seda KAHRAMAN
Giriş Hedef Kitle - CBS, VTYS, ve Sistem Yöneticileri - Yazılımların Testlerini Gerçekleştirenler - Sistem Mimarisini Tasarlayanlar - Geliştiriciler - Proje Yöneticileri Seviye - Orta Seviye
Amaçlar Teknik - Performans faktörlerinin çözümü - Düzenleme teknikleri - Performans testi - Kapasite planlama Yönetimsel - Yetenekler - Çalışma ve maliyet seviyesi - Riskler - Geri dönüşler(roi?)
Konular Giriş Tanımlar Süreç Gereksinimler Performans Faktörleri Yazılım Performans Faktörleri Donanım Performans Ayarlama Performans Testleri Gözden Geçirme Kapasite Planlama Soru-Cevap
Tanımlar
Performans Bir işlemin gerçekleştiği hız Örneğin, sunucuya iletilen isteğin cevaplanma süresi
Tanımlar Ölçeklenebilirlik İstemci sayısını artırarak kabul edilir performansı belirlemek Örneğin, örneğin 55 km hızla köprüden 1 saatte 1000 arabanın geçmesi ve köprünün yükü taşıması Örneğin 1 saatte sisteminize gelen 1000 harita isteği
Kapasite Sistemin taşıyabileceği maksimum yük. Tam kapasite Kapasite üstü
Kısıtlar Performans ve kapasiteyi engelleyen etkenler Örneğin; Sunucunun CPU kapasitesini hız. ArcGIS Server Instance sayılarını ise performans olarak düşünün;
Yüklenme ve Cevaplama Zamanı Yüklenme (kullanıcılar) Cevaplama Süresi(sn) zaman
Sistem Verimi(istek/saat) Yüklenme Adımları(kullanıcılar) Verim(istek/s) Cevaplama Süresi(sn) zaman
Kaynak Kullanımı(CPU,Bellek,Ağ) Yüklenme Verim(istek/s) CPU Kullan ımı (%) A ğ Kullanımı (Mbps) Cevaplama Süresi(sn) Haf ıza Kullanımı (Mb) zaman
Kapasite Yüklenme Verim(istek/s) CPU Kullan ımı (%) A ğ Kullanımı (Mbps) Cevaplama Süresi(sn) Kapasite (~ 85% kullan ım) Haf ıza Kullanımı (Mb) İçerik Uzunluğu (bytes) zaman
Cevaplama Süresi Dökümü(sn) Response time breakdown (sec) Web Browser ST Ağ Bekleme CPU Bekleme ArcGIS Bekleme ArcGIS ST Database ST Depolama ST Düşük Bekleme Yüksek Bekleme
Cevaplama Süresi Dökümü(%) Response time breakdown (sec) Web Browser ST Ağ Bekleme CPU Bekleme ArcGIS Bekleme ArcGIS ST Database ST Depolama ST Düşük Bekleme Yüksek Bekleme
Süreç
Esri Süreçleri ve Araçları Bütüncül Yaklaşım Sistem Araçları Proje Uygulaması
Araçlar http://www.arcgis.com owner:enterpriseimp Show ArcGIS Desktop Content
System Designer http://www.arcgis.com/home/item.html?id=8ff490eef2794f428bde25b561226bda. http://www.arcgis.com/home/item.html?id=8e655b38f2fc4b778d07dd34f436a978 (MS 2013) System Test (Beta) http://www.arcgis.com/home/item.html?id=e8bac3559fd64352b799b6adf5721d81 System Monitor (Beta) http://www.arcgis.com/home/item.html?id=848f48b0f88e4de7a036377197453efe System CPU http://www.arcgis.com/home/item.html?id=3e473b63a3254a6ab5f22e6f9608b209 Network Test http://www.arcgis.com/home/item.html?id=2b8d4ac8b102453bb0437cdd7a07dd27 Mxdperfstat http://www.arcgis.com/home/item.html?id=a269d03aa1c840638680e2902dadecac Database Trace Tools http://www.arcgis.com/home/item.html?id=24c7b251159149848acc9b81cccb8356 Aslog http://www.arcgis.com/home/item.html?id=5dfe54f1e9fd48068c4ae0c2c4f459c9
Kapasite Planlama Araçlar Sistem Dizaynı Sistem İzleme Sistem Testi Kullanıcı Bağlantısı CPU% Kapasite Modelleri
Gereksinimler Hizmet Seviyesinde Performans Anlaşması
Gereksinimler Performans planı yüksek kaliteyi gösterir Fonksiyonel Gereksinimler Yüksek Nitelik Gereksinimleri Görüntüleme Analiz İş Akış Entegrasyonu Kullanılırlık Performans ve Ölçeklenebilirlik Güvenlik
Gereksinimler Sistem Fonksiyonlarını Tanımlamak - Hangi fonksiyonlar sağlanmalı? Sistem Niteliklerini Tanımlama - Fonksiyonel olmayan gereksinimler açıkça tanımlanmalı Risk Analizi - Gerkesinimleri Değerlendirme - Olası bir başarısızlık için müdahale adımı belirlemek Benzer Sistemleri Analiz Etme - Tasarım Modeli - Performans Aralığı
Performans Faktörleri- Yazılım
Uygulama Türü(mobil, web, masaüstü) Durum Bilgisi(Durağan-Dinamik) Dizayn - Entegrasyon - Veri Erişimi(Feature Servisi, Harita Servisi)
Uygulama Türleri http://resources.arcgis.com/en/communities/ente rprise-gis/01n200000023000000.htm Uygulama Türleri ArcGIS for Desktop ArcGIS Engine ArcGIS Explorer Desktop API for JavaScript API for Flex API for Silverlight ArcGIS for Server ArcGIS for Mobile ArcPad Masaüstü CBS olarakta adlandırılır. Burda kullanıcılar herzaman sisteme bağlı kalmazlar, mesela mesai Esri hem geliştiriciler hemde izleyiciler için uygulama mimarileri sunar. Servisler erişilebilir olmalıdır. Uygulama çevrimdışı çalışmayı ve çevrim içi çalışmayı desteklemelidir. saatlerinde çalışırlar.
Uygulama Türleri http://resources.arcgis.com/en/communities/ente rprise-gis/01n200000023000000.htm Strateji Mekanizma Uygulama Güvenliği - Prensipler Model Uygunluk Doğrulama Yetkilendirme Filtreleme Şifreleme Kayıtlama Zengin İstemci Uygulaması Mobil Uygulamalar Servisler Web Uygulamaları
CBS Servisleri- ArcSOC Instance Max Instances =~ #CPU Cores örneğin; 8 core bir makina max 8 instance a denk gelir
CBS Servisleri- Harita Servisleri MXD optimizasyoları Basit Semboloji - Ölçeğe bağlı görünüm - Çok katmanlı sembolojiden kaçınma - Meksansal İndeksleme - On-the- fly projeksiyondan kaçınma - Text ve etiketleri optimize etme - Annotation kullanma - Maplex ve düzenleme - Hızlı birleştirme kullanma - Sıkıştırma metodu kullanan raster türlerinden
Harita Servisleri Performans detay ve kırık noktalarla ilişkilidir. Cevaplama Süresi (sn) Detay Sayısı
Coğrafi Veritabanı Delta tablolarını tutun ve versiyonlamayı minimum ayarlayın - Reconcile - post - Sıkıştırma - Replica senkronize İndekslemeyi yeniden düzenleyin İstatistikleri güncelleyin
Veri Depolama Düşük bir etkidir. Toplam cevaplama süresinin küçük bir kısmını oluşturur(< 20%) 140,000 Dü şük Karmaşık Harita: Verim ve veri kaynağı 120,000 100,000 Verim (Tr/Hr) 80,000 60,000 40,000 20,000 0 FGDB_Local_URL SHP_Local_URL Ora11g_AS_URL SQLSvr_AS_URL Postgres_AS_URL
Performans Faktörleri- Donanım
Donanım Kaynakları CPU Ağ genişliği ve gecikmesi Bellek Disk Yoğun CBS Sistemlerinin Kaynak Kullanımı
CPU Process Hızı - Specrate.org
Demo CPU Hızı 1. System CPU 2. PassMark http://www.cpubenchmark.net/cpu_list.php
CPU Hızının Etkisi 800 600 400 200 0 CPU gücü yeni laptop eski laptop 0.150 0.100 0.050 0.000 Cevaplama Süresi @1 (sn) yeni laptop eski laptop 1 0.8 0.6 0.4 0.2 0 Oran CS V G 20.000 10.000 0.000 Maksimum Verim (tr/sec) yeni laptop eski laptop
Kapasite Planlama 1. Kullanıcı Bağlantısı: eşzamanlı kullanıcı ya da verim 2. CPU (model) performans
Sanallaştırma Performans yapılandırma ve uygulamaya bağlıdır 5-30%
Kapasite Planlama Belirsiz Bilgi Girişi Saat planlama En uç saat planını belirleyin(çoğu durumda) A k t i v i t e S e v i y e s i A k t i v i t e S e v i y e s i Yıl Gün
Kapasite Planlama Kesin Olmayan Bilgi Girişi Lisans Toplam Çalışan Kullanım Logları
Ağ 1. Uzaklık 2. Yük 3. Altyapı
Ağ Hızlandırıcı, tekrarlayan isteklerin performasını arttırır.
Ağ Ulaşım Süresi Band genişliği gerektirir. - Cevaplama boyutu - İşlem sayısı Ağ ulaşım süresi - Cevaplama boyutu - Etkin band genişliği Sistem Tasarımı içinde yapılır
Ağ Testi Bulut tabanlı çözümler için önemli Tek Veri Merkezi=Düşük Maliyet Performans a ğa bağlıdır : Yüksek band genişliği ve az gecikme Bulut sistemleri birden fazla yer sunabilmektedir? Sizin çözümünüz için hangisi daha iyi?
Demo Network Speed Test Tool: http://localhost/speedtest/
Donanım Kaynakları - Ağ Ağ üzerindeki ulaşımın servise ve dönüş türüne etkisi - Sıkıştırma - İçerik( Vektor, Raster) - Dönüş türü(jpeg, PNG) Network Traffic Transport Time (sec) 56 kbps 1.54 Mbps 10 Mbps 45 Mbps 100 Mbps 1 Gbps Application Type Service/Op Content Return Type Mb/Tr 0.056 1.540 10.000 45.000 100.000 1000.000 ArcGIS Desktop Map Vector 10 178.571 6.494 1.000 0.222 0.100 0.010 Citrix/ArcGIS Map Vectror+Image ICA Comp 1 17.857 0.649 0.100 0.022 0.010 0.001 Citrix/ArcGIS Map Vector ICA Comp 0.3 5.357 0.195 0.030 0.007 0.003 0.000 ArcGIS Server Map Vector PNG 1.5 26.786 0.974 0.150 0.033 0.015 0.002 ArcGIS Server Image JPG 0.3 5.357 0.195 0.030 0.007 0.003 0.000 ArcGIS Server Map Cache Vector PNG 0.1 1.786 0.065 0.010 0.002 0.001 0.000 ArcGIS Server Map Cache Vector+Image JPG 0.3 5.357 0.195 0.030 0.007 0.003 0.000
Ayarlama: Tekrarlanabilir test durumları
Ayarlama yöntemi Toplam Tepki Zaman (t1-t2) Browser t1 Web Server t2 Her aşama en üstten başlar. Bekleme Süresi ArcGIS Server Kullanım Süresi ArcSOC Arama & Çekme Süresi ArcSDE/DBMS
Fiddler Fiddler ölçümü
Mxdperfstat(Performans İstatistiği)
DBMS izleme http://www.arcgis.com/home/item.html?id=24c7b251159149848acc9b81cccb8356
Oracle izleme Geçen süreyi kıyaslayın Geçen süre test ortamından ötürü değişiklik göstermiştir.
Ayarlama: Tekrarlanamayan test durumları
Web Servis Logları Analizi IIS log ölçümü 5.256 saniye
ArcGIS Server Logları Çok sayıda kaydı analiz etmek zor olabilir
ArcGIS Server Loglarını Ayrıştırmak logparser "SELECT top 10 time, target, elapsed, message from 'C:\Program Files (x86)\arcgis\server10.0\server\user\log\*.xml' order by elapsed desc" -i:com -iprogid:lpx.ags_log -e 1 -q http://www.arcgis.com/home/item.html?id=5dfe54f1e9fd48068c4ae0c2c4f459c9
İzleme
Trend Analizi ArcGIS Server İstatistikleri
Trend Analizi HTTP Özel İstekler
Trend Analizi Geodatabase İstatistikleri Versiyonlu geodatabase istatistik örnekleri
Performans Testi
Test Amaçları - Servis-Seviye Anlaşmalarını Anlama (SLA) - Kısıt Analizleri - Kapasite Planlama - Farklı Alternatiflerle Kıyaslama
Test Araçları Test Araçları LoadRunner Açık Kaynak? Hayır Artıları Eksileri Sektöründe Lider Yüksek maliyetli Servise-Seviye anla şmaları sayesinde otoma Test geliştirme dili C tik negatik korelasyonları tanır Test metriklerini yönetmek ili şkilendirmek zor HTTP web testi Kolay script SOA için yetenekli test araçlar ı Test sonuçlarınınn database içinde tutulması Sık istemci testi Kısıt analizi için kullanılabilir Silk Performer Hayır Citrix çözümleri için güçlü çözümler Kullanıcı yönlendiren arayüz Kısıt analizi için kullanılabilir Yüksek maliyet için orta Test metrikleri zay ıf. Test geli ştiricileri özel dil kullanır. Test metriklerini yönetmek ilişkilendirmek zor Visual Studio Test Team Hayır Mükemmel metrik raporlama C# ya da VB.NET ile test Tek ve web test imkanı İyi örneklerle blok desteği Kısıt analizi için çok iyi AMF için desteği yok Sık istemci seçeneği yok Orta Kullanıcılar için Jmeter Evet Ücretsiz Araç Sadece cevaplama süresi sağlar
Test Adımları Çevreyi onayla Testi Tasarla Sonuçları onayla
Test Tasarımı İstek Profilleri Test Verisini Haz ırlama İşlem ve İstekleri Tanımlama Test verilerini isteklere bağlamak Test yüklemesi tanımla
Sonuçların analizi Temel ölçümleri karışlaştır ve ilişkilendir - Cevap verme süresi ve verim - CPU, Ağ, Disk, ve Bellek - - Başarılı ve başarısız testler Sağlama - Hatanın olmaması bir testi doğrulamaz - Gelen cevap içeriğinin büyüklüğü gelişigüzel de olsa kontrol edilmeli
Resource Center http://resources.arcgis.com/en/communities/enterprise-gis/01n20000000q000000.htm
nbodur@esriturkey.com.tr ssert@esriturkey.com.tr teknikdestek@esriturkey.com.tr /esriturkey /EsriTurkey