2016-03-20 36 views
1

Bazı kodları yürüten ve linux sunucusunda barındırılan IBM WebSphere MQ'ya ileti gönderen bir wcf hizmetim var. Kuyruktan sıraya mesaj koyabilir ve alabilirim. Bilmek istediğim, bir mesajın kuyruğa gönderildiği zaman bir dinleyici servisi (WCF) bu mesajları işlemek için aktif hale getirmenin bir yolu var mı? (this can be done by using netmsmqbinding and WAS for MSMQ)WCF IBM Websphere MQ İletişimi (WCF Dinleyicisi)

Ben çok araştırdım ama bana bu bile mümkündür ....

bazı answers baktım olduğunu düşünüyorum yapılan herhangi bir kod örnekleri bulamadı ancak WCF ve mq bağlantı yok olması

Bölüm. Benzer bir soru WCF/WebService to act as Listener for MQ Message?'dur fakat somut bir cevap yoktur. Ayrıca Listening to new enqueued messages using WCF Service'a da baktım.

Bu senaryo, tek seçeneğimin, bazı aralıklar dinlendikten sonra (sorguları alma yöntemini çağırır) sıradaki pencereyi yazmak veya aynı şeyi yapan bir konsol uygulaması yazmak olduğunu düşünmeme neden oldu.

Daha şık bir çözümü olan var mı?

+0

Kuyrukta java ve java sunucusunu dinlemek için C# kodu ister misiniz? – ilansch

+0

@ilansch IBM Websphere MQ yüklemesini çalıştıran bir linux sunucusu ... –

+0

Burada belgelendiği gibi: http://www.ibm.com/support/knowledgecenter/SSFKSJ_7.5.0/com.ibm.mq.dev.doc/ q029950_.htm? lang = tr - kendi kendine barındırma veya bir Windows Hizmeti kullanabilirsiniz. – Shashi

cevap

2

Tetikleme bir seçenek olabilir. Eğer kuyruk yöneticisinin sunucuda çalışmıyor bir uygulama tetiklemek istediğimizden

http://www-01.ibm.com/support/docview.wss?uid=swg27020075&aid=1

, böyle bir tetikleme monitör gerekir: bir ileti sırasına geldiğinde WebSphere MQ bir uygulamayı başlatmak

http://www-01.ibm.com/support/docview.wss?uid=swg24000149

+0

Teşekkürler ve ona bir göz atalım ... –

+0

Tetikleme konusundaki anlayışım gereği, kuyruk yöneticisine kuyruğa girdiğinde başlayacak olan bir kuyruk monitörünü (hizmet) yapılandıracağım. Ama hizmetim windows hizmeti olarak sunulan wcf servisi olacak, böylece tetikleyici servis bununla nasıl iletişim kuracak? Ya da bir şey özlüyorum ... –

+1

Programı bir windows hizmeti olarak çalıştırıyorsanız, periyodik olarak almanız gerekir. Tetikleme, mesajları işleyen programın başlatılması için kullanılabilir, ya da windows hizmetinizi başlatan bir komut dosyasını çağırmak için kullanılabilir, ancak daha sonra düzenli olarak yayınlamaktan daha iyi olacağını düşünmüyorum. –