Konuyu Oyla:
  • Derecelendirme: 4.5/5 - 2 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Database Bağlantı Bileşen performans ipucu
#1
TCP soket uygulaması yaptım.

Seri port haberleşme mantığında cift yönlü server uzerinden x PC, x cihaz ile haberlesiyor. Aynı zamanda belli aralıklarla iot mantiginda DB veri kaydı yapıyor.

Database : postgresql 9.5 windows / postgresql 10 linux

Projede ilk başta database işlemleri icin firedac kullanmıştım. Proje sorunsuz çalışıyordu fakat projedeki haberleşme hızını arttirinca (veri akışını hızlandırıp) buna paralel yaptığım bazı veri tabanı işlemleri de hızlandı fakat hem Windows hemde linux tarafında hızdan kaynaklı veri tabanı hatalari almaya başladım.

Hic kullanmadim fakat deneme adina unidac kurdum ve aldığım hatalari almamaya basladim uzun soluklu test yaptim sorun yok.

Bu kadar performans farkı olacağını hiç düşünmedim.
Bir tecrübe notudur.

Şiddetle unidac tavsiye ederim.
PostgreSQL - Linux - Delphi, Poliüretan
WWW
Cevapla
#2
(26-01-2020, Saat: 20:03)3ddark Adlı Kullanıcıdan Alıntı: TCP soket uygulaması yaptım.

Seri port haberleşme mantığında cift yönlü server uzerinden x PC, x cihaz ile haberlesiyor. Aynı zamanda belli aralıklarla iot mantiginda DB veri kaydı yapıyor.

Database : postgresql 9.5 windows / postgresql 10 linux

Projede ilk başta database işlemleri icin firedac kullanmıştım. Proje sorunsuz çalışıyordu fakat projedeki haberleşme hızını arttirinca (veri akışını hızlandırıp) buna paralel yaptığım bazı veri tabanı işlemleri de hızlandı fakat hem Windows hemde linux tarafında hızdan kaynaklı veri tabanı hatalari almaya başladım.

Hic kullanmadim fakat deneme adina unidac kurdum ve aldığım hatalari almamaya basladim uzun soluklu test yaptim sorun yok.

Bu kadar performans farkı olacağını hiç düşünmedim.
Bir tecrübe notudur.

Şiddetle unidac tavsiye ederim.

Kesinlikle ben de katılıyorum UNIDAC konusunda.
Teknik Öğretmen
Bilgisayar Formatörü
WWW
Cevapla
#3
Hocam unidac bileşenlerini bizde kullanıyoruz çok başarılı ve performanslı.
Cevapla
#4
Diyelim ki 100 adet formdan oluşan ADO ile yazılmış bir projeyi UniDAC yapısına çevirmek için harcanacak efor ve zaman bu hıza değer mi.
Tecrübe edenler bu konudaki fikirlerini paylaşabilirler mi
Ayrıca böyle birşeyi yapmak çok zor olurmu
Teşekkürler
Bu dünyada kendine sakladığın bilgi ahirette işine yaramaz. 
Cevapla
#5
(27-01-2020, Saat: 11:34)adelphiforumz Adlı Kullanıcıdan Alıntı: Diyelim ki 100 adet formdan oluşan ADO ile yazılmış bir projeyi UniDAC yapısına çevirmek için harcanacak efor ve zaman bu hıza değer mi.
Tecrübe edenler bu konudaki fikirlerini paylaşabilirler mi
Ayrıca böyle birşeyi yapmak çok zor olurmu
Teşekkürler

Merhaba,
uygulamanın tasarlanışına bağlı bir durum. 
Eğer OOP'ye uygun bir biçimde yazılmış ise geçiş çok fazla zaman almaz. 
Diğer türlü -her button altında SQL kullanmak gibi-, zamanınızı fazlasıyla alacaktır.
Bunun yerine projeyi tekrardan yazmak daha mantıklı olacaktır.
İyi çalışmalar.
kisisel_logo_dark.png
WWW
Cevapla
#6
@adelphiforumz bendede 65 adet form, herbırınde en az 2 ado nesnesı var. UniDAC yada FireDac 'a geçme konusunda kararsızım.
ADO nun gunumuzde eksik kalan yonleri nelerdir ? UniDAC yada FireDac bize extra ne sağlıyor?
Bende bilen, deneyimleyen arkadaslardan bilgilendirmelerini rica ediyorum
Cevapla
#7
IDE içerisinde UniDAC altında Migration Wizard isminde bir yer var küçük çaplı projeleri çevirirken fena çevirmiyor
Fakat ADOQuery içerisindeki ADOQuery.ConnectionString kısmına karşılık gelenleri çeviremiyor.
UniDAC tarafında buna ne karşılık geliyor acaba bilen varmıdır
Bu dünyada kendine sakladığın bilgi ahirette işine yaramaz. 
Cevapla
#8
Zamanında konu ile ilgili test yapmıştım. 140 field bulunan bir Stok hareket tablosunda yaklaşık 500 bin kayıt mevcut ise adoyu geçtim, SQLin kendisinden yüzde 50 daha hızlı getiriyordu Smile
Yalnızım ama bir kente yürüyen ordu gibiyim, edebiyattan kaçınmalıyım..
Cevapla
#9
(27-01-2020, Saat: 17:01)narkotik Adlı Kullanıcıdan Alıntı: Zamanında konu ile ilgili test yapmıştım. 140 field bulunan bir Stok hareket tablosunda yaklaşık 500 bin kayıt mevcut ise adoyu geçtim, SQLin kendisinden yüzde 50 daha hızlı getiriyordu Smile

Hocam bu yazdığından sonra beynim biraz yandı şu anda  Huh
işlemin sonucunu ekrana getirmek farklı olabilir fakat işi yapan zaten SQL server değilmi ?
Bu durumda client bir istekte bulununca önce server işini bitirecek ki clietın istediğini geri döndürebilsin.
Bu nasıl bir şey anlayamadım SQL den daha hızlı iş yapabilmesi.
Ve %50  daha hızlı diyorsunuz bu çok ciddi bir süre yani
Bu dünyada kendine sakladığın bilgi ahirette işine yaramaz. 
Cevapla
#10
(27-01-2020, Saat: 18:02)adelphiforumz Adlı Kullanıcıdan Alıntı:
(27-01-2020, Saat: 17:01)narkotik Adlı Kullanıcıdan Alıntı: Zamanında konu ile ilgili test yapmıştım. 140 field bulunan bir Stok hareket tablosunda yaklaşık 500 bin kayıt mevcut ise adoyu geçtim, SQLin kendisinden yüzde 50 daha hızlı getiriyordu Smile

Hocam bu yazdığından sonra beynim biraz yandı şu anda  Huh
işlemin sonucunu ekrana getirmek farklı olabilir fakat işi yapan zaten SQL server değilmi ?
Bu durumda client bir istekte bulununca önce server işini bitirecek ki clietın istediğini geri döndürebilsin.
Bu nasıl bir şey anlayamadım SQL den daha hızlı iş yapabilmesi.
Ve %50  daha hızlı diyorsunuz bu çok ciddi bir süre yani
Hocam bende ilk okyunca garipsedim ama sanırsam kullanılan veritabanı yöneticisinden bahsediliyor.
Zira veritabanı yönetim uygulaması da esasında bir client.
kisisel_logo_dark.png
WWW
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  DBGrid Bileşen Önerisi 3ddark 5 5.151 16-05-2020, Saat: 16:05
Son Yorum: Abdullah ILGAZ



Konuyu Okuyanlar: 1 Ziyaretçi