Page History
Gereksinimler
Logo CRM uygulaması XAF alt yapısı nedeni ile çok fazla memory kullanımını yapmaktadır.Uygulamanın mutlaka 64 bit olarak kurulması ve IIS üzerinden ayarlanması gerekmektedir.Uygulama sunucu üzerindeSadece CRM için boş 8 gb memory ayrılması gerekmektedir. Uygulama sunucusu üzerinde yetersiz yer kaldığında işletim sistemi garbagecollector' ları tetikleyip, genel uygulamalar üzerinde temizliğe zorlar. Temizlenmemesi gereken veriler dahi silinir hale geleceğinden uygulama için beklenmedik hata, problemler sonucu uygulama sonlanır. Genel olarak sunucu üzerindeki diğer uygulamalar içinde benzer durumlar yaşanacaktır. Sunucu üzerindeki boş memory kritik rol oynamaktadır.
Expand | ||
---|---|---|
| ||
Tip | ||
---|---|---|
| ||
Aşağıdaki işlemleri web config içerisinde <appSettings></appSettings> arasına eklemeniz gerekir. |
Panel | |||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||||||
Veritabanı erişimi için CacheBaseXPOProvider yapısı kullanılmaktadır. Özellik kapatıldığında çok sayıda tekrarlı Sql (I/O) işlemi yapar hale gelmekte ve sistem yavaşlamaktadır. Yavaşlık x3 kat artmaktadır. Bu nedenle XPO cache yapısı performans için olmazsa olmaz. Aşağıda ilgili memory kullanımını genel ve kullanıcı bazlı limitleme ile ilgili uyarlama bilgileri mevcuttur. Cache durumlarının sayısal değerlerini izleyebilmek için aşağıdaki (CacheStatisticsLogger) parametresi belirlenmiştir. CacheBaseXPOProviderCacheBaseXPOProvider yapısı kullanıcı bazlı cache kullanımı yaptığı için kapatılması halinde ciddi hız sorunları yaşanmaktadır. Fakat ilgili XAF cache yapısının limitlenmesi ile ilgili eklemeler yapıldı. Aşağıdaki gibi bir tanım yapıldığında toplam kullanıcı bazlı XPO yapısının cache kullanımı limitlemektedir. Eklenecek değer MB cinsindendir. 1024 MB ya da 2048 MB ile limitlenip gözlemler yapılması gerekir.
Genel bir limit yerine kullanıcı bazlı limit tanımlanabilmesi için aşağıdaki tanımın girilmesi gerekmektedir. Öndeğer olarak kapalı bir özelliktir. Çok fazla kullanıcının olduğu sistemlerde memory kullanımını limitlemek için kullanıcı bazlı MB cinsinden değer girilebilir. 64 değeri girildiğinde min 32 MB, max 64 MB olacak şekilde XPO cache kullanımınına izin vermektedir. XPO için ayrılan cache kullanımı 10 kullanıcı için max 64*10 = 640 MB, 100 kullanıcı için 64*100 =6400 MB olacaktır.
ModelNode.GetValuesCacheModelNode.GetValuesCache yapısı daha önceden kullanıcı bazlı tutulmaktaydı. Şu an memory bölgesine taşındı. Ciddi bir kazanç elde edildi. Fakat buradaki memory maliyeti gözlemlenemiyor. İlgili alan için cache desteği parametreye bağlandı. Aşağıdaki parametre 0 yapılarak modulecache yapısı kapatılır ve ek memory kazancı sağlanılır Fakat performans olarak düşüş sağlamaktadır.
GarbageCollectorUygulama ön görülmeyen kaçaklar için IDisposeable nesnelerin sağlıklı dipose edilmemesiydi. Buna bağlı olarak 10 dk aralıklarla Garbage Collector çalıştırılması ile ilgili ek parametrik düzenleme yapıldı. Aşağıdaki parametre açıldığında 10 dakika aralıklarla NGarbageCollecter.Collect (true) işlemi gerçekleştirmektedir. Default olarak bu özellik aktif edildi (10 dakika). Kapatmak için 0 girilmelidir. Çalışması için girilebilir aralık ise > [ 5 .. 60 ]
CacheStatisticsLoggerSistem üzerinde taşınan Cache yapılarının izlenmesi için aşağıdaki parametre 1 olarak atanır. Varsayılan değer 0 dır. Aşağıdaki nesnelerin item sayılarını eventviewer üzerinde warning olarak göstermektedir.
Data LookUp Cache ParametreleriWebconfig üzerimde DataLookupCacheRefreshMinutes özelliği ile data lookup alanları verilerinin cachelenme süresini belirlemektedir. Varsayılan değeri 60 (dakika) dır. DataLookupCacheGarbageDataCleanMinutes özelliği ise süresi dolan veriler belli aralıklarla kontrol edilip düzenler ve Cache bölgesinden silinirler. Varsayılan değer 60 (dakika) dır. 0 > özelliği kapatır.
|
...