1 client 5 server pc arasında haberleşme hk.

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
sadikacar60
Üye
Mesajlar: 83
Kayıt: 28 Ara 2017 04:14
İletişim:

1 client 5 server pc arasında haberleşme hk.

Mesaj gönderen sadikacar60 »

arkadaşlar 1 projem var bu projede haberleşme hakkında fikir almak isityorum.

5 server pc deki veritabanları kendini client pc deki ana veritabanına bilğilerini göndererek sürekli günceleme yapabilirmi. bu mümkün mü.?

mevcut durum şöyle her pc de bir veritabanı var client pc bilği ihtiyacı olunca istediği pc ye bağlanıp bilğiyi alıyor. sistem bu şekilde çalışıyor.

bu durumda şöyle bir problem var diyelimki 6587965 ide li kayıta ulaşmamız lazım ama hangi pc de olduğunu bilmiyoruz her pc ye bağlanıp tek tek bakmak gerekiyor. oysa her pc veritabanını otomatik client pcde bir veritanında güncellese çok güzel olurdu .

böylece pc pc bilği aramak durumunda kalmazdık bu mümkünmü. 5 pc de aynı anda client pc ye sürekli data gönderse bir tıkanma olur mu
saygılarımla
Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7586
Kayıt: 10 Haz 2003 12:26
Konum: İstanbul
İletişim:

Re: 1 client 5 server pc arasında haberleşme hk.

Mesaj gönderen mussimsek »

Yapınız çok sıkıntılı gözüküyor. Replikasyon olayları çok kontrol gerektiren işler.

Mümkünse bir veritabanı yapıp, verileri bunda tutmaya çalışın. Clientlar bilgileri buradan çekip, göndersin. Hız noktasında çok sıkıntı yaşamazsınız.

Mecbur ayrı tutmam gerekir diyorsanız, 6. bir merkez veritabanı oluşturup, düzenli aralıklarla kayıtları bu veritabanına aktarın. Raporlamaları/Aramaları buradan yapın.

Kolay gelsin.
sadikacar60
Üye
Mesajlar: 83
Kayıt: 28 Ara 2017 04:14
İletişim:

Re: 1 client 5 server pc arasında haberleşme hk.

Mesaj gönderen sadikacar60 »

merak ettiğim bir şey var 5 pc aynı anda veya gelişiguzel zamanlarda clietdeki ana veritabanına bağlanıp data yazabilirmi? bu iletişim problem yaratır mı?
Kullanıcı avatarı
freeman35
Admin
Mesajlar: 2356
Kayıt: 12 Haz 2003 04:05
Konum: merkez camii yanı

Re: 1 client 5 server pc arasında haberleşme hk.

Mesaj gönderen freeman35 »

Mustafa nın dediği gibi konunun genel adı replication, bu konuyu araştır.
"...clietdeki ana veritabanına " kavramları karıştırma. Ana tektir. her client ta ana olmaz.

İlk mesajında yazdığın yönteme "two way replication" deniyor, doğal olarak zorun katmerlisi oluyor.
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5

Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Kullanıcı avatarı
Commandx
Üye
Mesajlar: 181
Kayıt: 01 Oca 2008 05:34

Re: 1 client 5 server pc arasında haberleşme hk.

Mesaj gönderen Commandx »

sadikacar60 yazdı: 24 Mar 2021 06:13 merak ettiğim bir şey var 5 pc aynı anda veya gelişiguzel zamanlarda clientdeki ana veritabanına bağlanıp data yazabilirmi? bu iletişim problem yaratır mı?
Sorun yaratmaz. sadece zorluk çıkartır
Veritabanı denilen olgu budur zaten, Aslolan Veriler Tek yerde toplanmalıdır, Tüm clientler bağlanıp bilgiyi tek veri tabanından alıp güncelleyip silmelidir. Veri tabanı 5 yerde olursa işin yoksa her birine bağlan veriyi bul güncelle sil, Dediğiniz bu iş, sanki biraz da P2P ye benziyor.

Google, Facebook altyapısı gibi Replike bir şey düşünüyorsan bu çok zor bir iş, bir veri tabanında en ufak bir düzeltme operasyonu için tüm clientlerdeki veritabanlarında da operasyon düzeltmesi yapman gerekir ki bu kendine zorluk çıkartmaktan başka bir şey değil.
Her bir client için güvenli WAN için güvenli pipe açman gerekecek bu sefer.
Ağ içindeysen bu biraz daha kolaylaşır ama yinede zahmetlidir.
http://www.delphibasics.co.uk/RTL.asp?Name=DaysBetween
http://www.neonhaber.com/Static/mega-co ... index.html
www.delphican.con
Function PARSE( text, ilk, son:String ): String; //
begin
Delete(Text, 1, pos(ilk, Text) + Length(ilk)-1);
Result := Copy(Text, 1, Pos(Son, Text)-1);
end;
sadikacar60
Üye
Mesajlar: 83
Kayıt: 28 Ara 2017 04:14
İletişim:

Re: 1 client 5 server pc arasında haberleşme hk.

Mesaj gönderen sadikacar60 »

teşekkürler arkadaşlar replication olayını araştıracağım
saygılar
ikra
Üye
Mesajlar: 900
Kayıt: 28 Nis 2005 01:26
Konum: Simdilik Topragin Üstü

Re: 1 client 5 server pc arasında haberleşme hk.

Mesaj gönderen ikra »

Söyle bir yapi kullanabilirsin:
1 adet Key-Server
5 adet Data-Server

Data-Serverler her islem gerceklestirdiginde, Key-Server‘e ilgili ID numarasini ve Data-Server adresinini bildirir.
Client Key-Server‘e baglanip istenen ID‘nin hangi Data-Server‘de oldugunu sorgular. Bilgi aktarimi gerceklestiginde, ilgili Data-Servere baglanilip sorgu yapilir.

Replikasyon benim kafama yatmadi.
Replikasyon tüm verilerin eslesmesi anlamina geliyor.
Tüm veriler eslesecekse, yedekleme/güvenlik haricinde neden birden fazla veritabani kullanilsin?

Replikasyonda seneryo söyle olabilir:
Sabah laptopunla sirkete gelir, ana makinaya baglanip replike edip, daha sonra güncel bir veritabani ile müsteriye gidersin. Burada replikasyon mantikli.

Ikinci seneryo ise, güvenlik anlaminda olabilir. Ara makinalar, daha güvenli bir makinaya baglanip data-store ederler ve ayni anda, merkez tarafindan silinmesi yada güncellenmesi istenen verileri kendi bünyesindeki veriler ile kiyaslayip gerekli islemi yapar. Bunda da replikasyon mantikli.

Ama senin amacin icin replikasyonun gerekliligini düsünmüyorum.
Tahmin yürütemedigim farkli bir seneryo varsa, o zaman durum degisir.
kıdemsiz üye
sadikacar60
Üye
Mesajlar: 83
Kayıt: 28 Ara 2017 04:14
İletişim:

Re: 1 client 5 server pc arasında haberleşme hk.

Mesaj gönderen sadikacar60 »

bu bir bowling skorlama programı. oyun açılan bir adet resepsiyon pc var burda kasa hesabı için açılan oyunları kaydediyoruz. ayrıca 5 adet pc de 10 adet skorlama programı çalışıyor her birinin veritabanı olmak zorunda. (resepsiyon pc: kasa hesp vt)(5 adet yol pc:10 adet oyun kayıt vt)

diyelimki 2 kişi geldi bowling oynamak istiyoruz dedi. isimlerini aldık ve 6 yola oyunu açtık(bilğileri hem respsiyon pc ye hemde 6 yoldaki veritabanına kaydettik.) oyun başladı her top atıldığında kazanılan puanlar ve bilğiler 6 yoldaki vertibanına kaydediliyor. bu arada resepsiyondan oyunun durumu hakkında bilği almak istenirse o yola vt ye bağlanıp bilğilere bakabiliyor. oyun bitince resepsiyon pc ye oyun bitti bilğisi gidiyor. mevcut sistem bu şekilde sorunsuz çalışıyor bir problemde yok. resepsiyon pc de isimler oyun açılış saati para gibi bilğiler saklanırken oyun oynanan pc de tum oyun bilğileri saklanıyor. resepsiyon pc bozulsa bile oyun açılmak zorunda o nedenle yolarda vt olmak zorunda.

şimdi aklıma gelen not: hem yollarda hemde resepsiyon pc de veritabanları olsa yani 10 yol varsa 10 vt var demektir yollardaki 10 vt aynısını resepsiyonada koysam otomatik kendi kendini eşitleyen bir sistem olsa çok güzel olurdu.

sorun şu.
prg'a turnuva özelliği eklemek istiyorum. diyelimki 200 kişilik bir gurup geldi turnuva yapacaklar 2 şekil sunmak zorundayim eleme usulu mü toplam oyun puanı üzerinden mi.
1. eleme usulu herkes 1 oyun oynar yuksek puan alan 50 kişi 2 tura çıkar 2. oyunda 10 kişi 3. oyunda kazanan belirlenir
2. puan usulu ; herkes 3 oyun oynar en yüksek puan alan turnuvayı kazanır.

bu organizasyonu nasıl kordine edeceğim. normal oyundan farklı olacak.
benim aklıma gelen çözümüm şu;
1. her yola 10 kişilik oyunları aç 10 yol 100 kişi yapar bir seferde 100 kişiye oynatmış olurum. oyunlar bitince tüm yollardaki oyun kayıtlarını bağlan
al resepsiyonda oluşturduğun turnuva tablosuna aktar. 2 parti 100 kişiyide aynı şekilde oynat onların kayıtlarınıda tek tabloda resepsiyon pc de birleştir.
200 kişi ilk oyununu oynadı bütün oyun kayıtlarını respsiyon pc de tek tabloda birleştirdik. bir formda dbgrid puan sıralaması olarak ilk 50 yi çekerek
2 tura çıkan 50 yi belirleyebilirim. bu şekilde devam eder gider. bu şekilde çözebilirim ama resepsiyondaki görevliye çok iş düşecek.

başka nasıl bir yöntem uygulayabiliriz.
fikir verebilecek varsa sevinirim
saygılarımla.
Kullanıcı avatarı
freeman35
Admin
Mesajlar: 2356
Kayıt: 12 Haz 2003 04:05
Konum: merkez camii yanı

Re: 1 client 5 server pc arasında haberleşme hk.

Mesaj gönderen freeman35 »

ben olsam eğer kurulumu değiştirebileceksen, 10 +1 pc yeri tek ana makina yani yok başına pc maliyetin düşer. ayrıca 10 gereksiz yere arıza demek.Ana makina bozulursa??? 10 pc almak yerine 1 yedek kasa(pc) bulundurmak ve harici bir yere db ye sürekli yedeklemek işletme maliyetine oldukça etkiler.
Senin sistemede ise, resepsion 10 path de ki db ye ulaşacağına, 10 yoldaki pc lerin resepsion daki tek pc ye ulaşması arasında fark var mı?
Yolardaki pc leride raspberry pi vs gib en düşük maliyetli pc benzerleri ile değiştirip, resepsion a da apache yada IIS server kurup, php html ile daha kolay ve düşük maliyetli çözüm üretebilirsin.
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5

Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Kullanıcı avatarı
xozcanx
Üye
Mesajlar: 362
Kayıt: 05 Oca 2012 12:55

Re: 1 client 5 server pc arasında haberleşme hk.

Mesaj gönderen xozcanx »

Merhaba,
@freeman35 hocamın dediği gibi Tek server, Tek DB ile bu işi rahatlıkla halledebilirsin aslında ve 10 farklı pc yerine yine 1 Client pc ile USB 3.0 HUB.
Gereksinimler,
1- 1 Ad. Server
2- 1 Ad. yedek sunucu(Nas olabilir)
3- 1 Ad. Client Makine
4- USB 3.0 HUB(Yol Sayısı kadar port)
5- USB TO VGA&HDMI (Yol Sayısı kadar)

Uygulamanız tek veritabanı üzerine tasarlayabilirsiniz.
Buradaki bağlantıda anlatılan yöntem ile 10 Ad. Terminal makineden de kurtulmuş olursunuz.
Sadece ekranda Score Board göstermek için PC kullanmak mantıksız olur bence. :roll:
Bu sayede Client ilk açıldığında Otomatik olarak yol sayısı kadar Form Create edip ilgili ekranlara otomatik olarak yerleşmesini sağlayabilirsin.
Turnuva için ise, Ayrı bir yapı hazırlayabilirsiniz.

İyi Çalışmalar.
Nasibinde varsa, alırsın karıncadan bile ders, Nasibinde yoksa, bütün cihan önüne serilse, sana ters..
sadikacar60
Üye
Mesajlar: 83
Kayıt: 28 Ara 2017 04:14
İletişim:

Re: 1 client 5 server pc arasında haberleşme hk.

Mesaj gönderen sadikacar60 »

oyunlar için 5 pc var her pc 2 yolu kontrol ediyor. her pc de 2 adet hdmı çıkşı var bunlar 2 tv ye bağlı sesli animasyon oynatmak gerektiği için ayrı pc ler kullanılmış orjinal yabancı sistemlerde benzer mantıkla yapılmış.

ama bahsettiğiniz sistemlerde var 1 resepsiyon pc 1 adet de yol pc yol pc 6 yola kadar çıkışı destekliyor. bu şekildede sistemler var.
ama şu olabilir maliyeti düşürmek için 1 adet yol pc ile 4 yolu destekleyebilir.

diyelimki resepsiyona 1 adet oyun açma pc koyduk.
oyunlar için 1 adet pc de yollara koyduk. sonra 1 adet 4 lü "HDMİ ÇOKLAYICI SPLİTTER" aldık 4 adet tv yi bu cihazla bağladık pc de 4 ayrı program
ile 4 ayrı ekranda oyunları açabilirim sorun yok. ama sesi nasıl yapacağız sesde sorun olmaz mı her yolda farklı animasyon oynayacak farklı sesler çıkması lazım burda sorun çıkabilir diye düşünüyorum.

veritabanı olayına gelince aslında yollarda vt kendini otomatik resepsiyon daki pc ye sürekli güncellerse süper olur du ben kontrollerimi yol pc lere bağlanmak yerine resepsiyondaki sürekli eşitlenen vt den halledebilirdim tabi böyle bir şey mümkünse

saygılarımla
Kullanıcı avatarı
xozcanx
Üye
Mesajlar: 362
Kayıt: 05 Oca 2012 12:55

Re: 1 client 5 server pc arasında haberleşme hk.

Mesaj gönderen xozcanx »

Ses için aklıma 5+1 ses sistemleri geldi. Ses kartı ayarlarında Ses sistemi seçildiğinde herbir hoparlörü test etme imkanı veriyordu bize. Hangi hoparlörü seçersek test için o hoparlörsen ses çıkarıyor. Buna benzer bir yapı inşa edilebilir.
Nasibinde varsa, alırsın karıncadan bile ders, Nasibinde yoksa, bütün cihan önüne serilse, sana ters..
Kullanıcı avatarı
freeman35
Admin
Mesajlar: 2356
Kayıt: 12 Haz 2003 04:05
Konum: merkez camii yanı

Re: 1 client 5 server pc arasında haberleşme hk.

Mesaj gönderen freeman35 »

Eğer sistemi baştan yapıyorsan, ben hala bir önceki mesajımdaki yöntemi tavsiye ederim, raspberry pi tarzı bi cihaz. bunlara lazarus ile program yazabilirsin, yada gene o mesajda yazdığım gibi browser dan ana makinaya ve IIS servera bağlanır. Hem yol dediğin cihazlardan bilgi vs girişleri alırsın, kontrol edersin, hemde görüntü ses vs işlerinde sorun yaşamazsın. sıkıştırılmış pc gibi :)
Veritabanı işine gelince, arada LAN var, yol pc lerde db ye gerek yok. tek db oda serverda. db de her table da yolNo diye bir alan oluştur. yolpc lerindeki exe lerde kendi yollarını bilecekler, bunu exe nin olduğu klasöre bir ini dosya içine eklersin. yol exe çalıştığında iniden hangi yol olduğunu alır, anamakinaya bağlanır, gereken tablolara select, insert,update,delete sql lerine bu yolNo bilgisini eklersin.
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5

Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
sadikacar60
Üye
Mesajlar: 83
Kayıt: 28 Ara 2017 04:14
İletişim:

Re: 1 client 5 server pc arasında haberleşme hk.

Mesaj gönderen sadikacar60 »

çok teşekkürler tavsiyeleriniz için minnettarım
saygılarımla
Cevapla