C# iki program arası haberleşme

En basit hali ile anlatayım a değişkenini bir veri tabanı veya basit bir API'ye kaydedip diğer tarafa basarsın.
 
Bunun bir sürü yolu var.

Anlık haberleşme için: Soket Programlama
Diğerleri için ister API yazın ister yerel dosyaya yazıp okuyun ister RAM üzerinde tutun.
 
İhtiyaçları daha net belirlemek gerekiyor. Ama genel her şeyi kapsayacak bir çözüm olarak, bu programlara birer REST api entegrasyonu ekleyebilirsin, istekler atarak iletişim kurabilirler.
 
Eger fiziksel olarak ayni cihazda calisacaklarsa en performansli yontem shared memory.

Soketle ugrastigin an OSI layer'a inmis oluyorsun, gereksiz bir overhead getiriyor. Eger cok kompleks bir sey degilse yaptigin direkt dosyaya da yazabilirsin. A dosyaya yazar, B okur.

Surekli birisi okuyor, digeri yaziyorsa producer-consumer mimarisi yapabilirsin, farkli implementasyonlari var.

https://en.wikipedia.org/wiki/Producer–consumer_problem

Eger bu degerleri uygulamalar kapandiginda da saklayacaksan veritabani kullanmalisin.

Eger fiziksel olarak ayni cihazda degilse API acarak haberlesme saglarsin. REST, SOAP vs.

Neden boyle bir sey yapmak istiyorsun, nasil bir haberlesme gerekiyor, ne kadar data gonderilecek ve ne gibi guvenlik katmani gerekiyor buna gore karar verirsin.

En amator ve pratik is dosyaya yazma. A.exe A.txt ye yazsin en guncel veriyi, B de B.txt ye yazsin. Lazim oldugunda A B.txt'den, B de A.txt den okusun.
 
Neden boyle bir sey yapmak istiyorsun, nasil bir haberlesme gerekiyor, ne kadar data gonderilecek ve ne gibi guvenlik katmani gerekiyor buna gore karar verirsin.
İkisi aynı bilgisayarda çalışacak ve alıp gönderecekleri tek şey text. Console Application zaten. Herhangi bir güvenlik katmanı gerekmiyor çünkü güvenlikli bir şekilde göndermeye ihtiyacım yok. B programının konsolunda akan yazıları A'ya göndermem lazım. Yani B programında akan yazılar A programının konsolunda akmalı. Sizce saydıklarınızdan hangisi daha iyi olur?
 

Yeni konular

Geri
Yukarı