Konu: SP2 de hız sorunu..
Selamlar
Local network de vfp9 sp2 de ciddi yavaşlama sorunu yaşayan var mı? Yoksa ben yanlış bişey mi yapıyorum ? Yazdığım uygulama tek pc de problemsiz çalışıyor.
Giriş yapmadınız. Lütfen giriş yapın yada kayıt olun.
Selamlar
Local network de vfp9 sp2 de ciddi yavaşlama sorunu yaşayan var mı? Yoksa ben yanlış bişey mi yapıyorum ? Yazdığım uygulama tek pc de problemsiz çalışıyor.
1 -data yi diger anamakina tarzinda baska bir yerden okuyorsan \\pcadi\paylasilan data klasor seklinde degilde ağ sürücüsü F:\data gibi kullan
2 - firewall antivirus vs programlar ag trafigini kontrol eder bir cogunda ozel ayarlarda klasor bazinda bu islemi haric tutmasini saglayabilirsin
3- TCP/IP ayarlarinda gelismis kısmında WINS sekmesinde TCP/IP uzerinde netbios u etkinlestir secebilirsin
eğer .EXE ortak ağ sürücüsünden çalıştırılıyorsa yavaşlama yapıyor. her kullanıcının kendi pc'sinde kendi .EXE dosyası olsun. bunun sebebi tahminimce ortak sürücüde oluşturulan tmp dosyaları.
eğer .EXE ortak ağ sürücüsünden çalıştırılıyorsa yavaşlama yapıyor. her kullanıcının kendi pc'sinde kendi .EXE dosyası olsun. bunun sebebi tahminimce ortak sürücüde oluşturulan tmp dosyaları.
Evet Metine ek olarak EXE tum pc lerde olsun ayrica
config.fpw dosyasi iceriginde
tmpfiles=GETENV("windir")+"\temp"
editwork=GETENV("windir")+"\temp"
sortwork=GETENV("windir")+"\temp"
progwork=GETENV("windir")+"\temp"
satirlari olsun
Önerilerinizi deneyeceğim. Teşekkürler.
Evet her makinada exe çalışıyor . Exeler sadece ana makinadan data okuyor.
her kullanıcının bir exe si olsun,tamamda üsdatlar,100 kullanıcınız varsa,exe de yapacağınız en ufak bir değişikliği,bu 100 kullanıcının pc sinde nasıl güncellemeyi düşünüyorsunuz?
Ayrıca,foxpro 6 da yazığım bir programı,foxpro 9 a güncelledimde,foxpro9 ile çalışan exe nin kat ve kat yavaş olduğunu söyleyebilirim.Bizzat tecrübe ettim.Makul bir açıklamasını bulamadım.Proje aynı proje,Kodlar aynı kod ama malesef çook yavaş.özellikle filter komutlarında
ana makinede (server-sunucu) bir ortak paylaşımlı klasör açarsın. güncellenmiş exe programı oraya kopyalarsın. hepsine read hakkı verirsin. herkes kendi makinesine kopyala yapıştır ile çeker.
tabii son söz üstadların.
Ayrıca,foxpro 6 da yazığım bir programı,foxpro 9 a güncelledimde,foxpro9 ile çalışan exe nin kat ve kat yavaş olduğunu söyleyebilirim.Bizzat tecrübe ettim.Makul bir açıklamasını bulamadım.Proje aynı proje,Kodlar aynı kod ama malesef çook yavaş.özellikle filter komutlarında
benim müşterilerim 64 mb ramlı pc'lerde bile VFP9 .EXE si kullanıyor. çok ta hızlı çalışıyor. başka programların 64 ram la hızlı çalıştığını pek görmedim ben.
Benim çalıştığım işyerini, VFP nin Network üstünde test edildiği bir laboratuar gibi düşünebilirsiniz.
Foxpro DOS hariç, Foxpro for Windows dahil VFP nin bütün versiyonları kullanılıyor.
Ondan fazla server, 50 den fazla terminal ve sonuçta elde edilen table'ların boyutları 2 GB sınırında
min 20 şer milyon kayıt içeriyor ve bu table'lardan daha sonra raporlar ve sonuç dataları üretiliyor.
Server'lar üzerinde En az 30 tane map edilmiş program directorysinde bir sürü form ve data process içeren programlar var.
Programlar bir küçük exe den çağrılan bazen onbeş app içeriyor, artı kendi yaptığımız bir tool
var, bu tool memo field içinde saklanan önceden tanımlanmış binlerce SQL komutu ve Command'i gönderilen parametreler ile her seferinde yeniden oluşturup EXECSCRIPT() ile çalıştırıyor. Üstelik bu programlar çalışırken aynı anda değişik serverlardaki datalara'da erişiyor. Programlar ve dataların hepsi de serverlar üzerinde ve oradan çağrılıyor. Server'lardaki programlar ve datalar aynı anda birçok terminal tarafından kulanılıyor.
Bundan daha iyi test ortamı zor bulunur.
Kısaca datalar ile Foxpro yu kullanarak savaş ediyoruz.
Vee, böyle bir ortamda VFP hiç yavaşlamadan şıkır şıkır çalışıyorsa.
Networkte VFP yavaşlıyor şikayetleri söz konusu olduğunda.
KABAHAT KESİNLİKLE VFP'DE DEĞİLDİR.
Buna ilaveten Dbase, Clipper ve Foxpro'nun istisnasız bütün versiyonlarını, 25 senedir Novell, Windows Workgroup, Windows server network'ler altında ve 8086 dan bugüne kadar bütün işlemcilerle kullandım ve bir yavaşlamaya şahit olmadım.
Peki iyide VFP neden yavaşlıyor derseniz.
Bu sorunun cevabını bilmiyorum, birçok sebebi olabilir, ama kabahat kesinlikle VFP'de değil.
( Programları terminallere kopyalayın diyen arkadaşlar için de şunu söyleyeyim. Böyle bir ortamda
yüzlerce programı nasıl terminallere kopyalarsınız ve update edersiniz. ??? )
Neyzen
her kullanıcının bir exe si olsun,tamamda üsdatlar,100 kullanıcınız varsa,exe de yapacağınız en ufak bir değişikliği,bu 100 kullanıcının pc sinde nasıl güncellemeyi düşünüyorsunuz?
Foxman
( Programları terminallere kopyalayın diyen arkadaşlar için de şunu söyleyeyim. Böyle bir ortamda
yüzlerce programı nasıl terminallere kopyalarsınız ve update edersiniz. ??? )
cok kullanicili basligi altida daha once konusu gecmisti, orda bu amac icin kullandigim cozumu anlatmistim bu yontemle exe guncelleme sorunu kalmiyor cunku otomatik guncelleniyor...
Soykan,
Teknik olarak tabiki terminaller üzerindeki programları otomatik olarak güncellemek mümkün. Ben VFP networkte yavaşlamıyor kabahat VFP de değil iddiamı güçlendirmek için programları terminallere kopyalamanın gereksiz olduğunu savunuyorum.
Birde şu var VFP gigabayt mertebesindeki datayı network üzerinden okurken yavaşlamıyacakda birkaç megabayte programı okurkenmi yavaşlayacak. Üstelik programlar bir kere çalıştığında (programdan çıkmadığın sürece) cache de uzun süre kalıyor ondan sonraki çalıştırmalarda anında çalışıyor.
Network üzerinde yavaşlamanın nedenleri konusunda ilk akla gelenler.
- Programlara ait processlerin formlar üzerinde olması. Programlar Object Oriented veya Procedural
olur ve formun dışında çalışırsa hız farkedebilir. (bu önemli bence)
- Kötü database dizaynı.
- Yanlış index kullanımı.
- SQL Querylerin ve data handling processlerinin kötü yazılması.
- Foxpro nun ürettiği tmp fileların yeri ve o bilgisayarın memory ve disk kapasitesi.
- Network kurulumunda hatalar ve kötü ayarlar.
- Formların tabanında backround resim kullanılması.
- Vesaire.......
Bunlar şu anda aklıma gelenler.
Bence, Client Server çalışan programlar hariç, programları terminallere kopyalamak gereksiz.
Foxman,
soylediklerine tamamen katiliyorum ,
ben sadece bu guncelleme isinin nasil yapilabilecegini anlamak adina yazdim oyle
aşağıdaki kod exe haline getirilmiş programda 1 dk da açılıyor, formu derlenmemiş haliyle çalıştırdığımda(form üzerinde sağ click run form) 6 saniyede açılıyor
datalar ana makinada, exe kendi makinamda ,derlenmemiş haliyle çalıştırdığımda da datalar ana makinada form kendi makinamda
her iki haliyle de denemeyi aynı makinede yapıyorum,şartlar aynı tek fark biri derlenmiş exe haline getirilmiş neden bukadar fark oluşur ?
SET NULLdisp to""
WITH ThisForm.locatorgrid1
TEXT TO .csql NOSHOW PRETEXT 15
crsh.fisno,crsh.kod,crsh.tanim,
crsh.giris,crsh.cikis,firma.firma,
crsh.irsno as irsaliye,crsh.tarihirs,crsh.fiyat,crsh.emno,
crsh.tur,crsh.ckod,crsh.sipno,crsh.sevkno,crsh.tarihi,crsh.saati,crsh.user,crsh.kayit,crsh.kodt,crsh.dpkod
FROM (select hareket.fisno,hareket.kod,kart.tanim,hareket.giris,hareket.cikis,
hareket.sipno,hareket.irsno,hareket.tarihirs,hareket.fiyat,hareket.emno,
hareket.sevkno,hareket.tur,hareket.ckod,hareket.tarihi,hareket.saati,hareket.user,hareket.kayit,hareket.kodt,
hareket.dpkod from hareket,kart where hareket.kod==kart.kod) crsh
LEFT JOIN firma ON crsh.ckod=firma.ckod ORDER BY tarihirs
ENDTEXT
.......
Tarık benzer bir sorunu bende yaşamıştım bir zamanlar. Kullandığın Class / ActiveX türevi eklentilerde; bir yerlerde ya SET ayarların ( yada datasession un ) değişiyor mutlaka. Konunun VFP9 - SP2 olması ile pek ilgisi yok bildiğim kadarı ile.
http://www.fox4um.com/topic/1271/datasession-hk/
Tam cevap aşağıdaki linkte :
http://www.fox4um.com/post/6135/#p6135
uğur ilk linkte olay aydınlığa kavuştu ilgin için teşekkür ederim
cetinbasoz
Moderator
OfflineKayıt Tarihi: 07.10.2006
İleti: 1,916
Re: Datasession Hk.Datasession degistirince olan durum aklima arada bir "SET" farkli diye getiryor ve ilk aklioma gelenler: EXCLUSIVE, COLLATE,MULTILOCKS
Collate benim bas suphelim
Yen yaz 1907'ye yolla FB gelsin evinde yensin
main prg de
Set Collate To "TURKISH"
bu satırı iptal ettim 5 saniyeye düştü
COMBO BOX KULLANMAYIN.
HIZLANIYOR