Aracılığıyla paylaş


İletişim görüşmeleri

Tarafından gönderilen tüm iletilerin Service Broker parçası konuşma.Bir iletişim kutusu iki hizmet arasındaki bir görüşme oluşur.Bir iletişim kutusu iletileri iki hizmet arasındaki bir güvenilir ve kalıcı çift yönlü akışıdır.

İletişim kutuları, tam olarak bir kez-içinde-sipariş (EOIO) İleti teslimini sağlar.İlgili iletileri belirlemek ve doğru sırada iletileri teslim etmeye her iletide yer alan konuşma tanıtıcı ve sıra numaraları iletişim kutularını kullanın.Bir iletişim kutusu bir güvenilir ve kalıcı iki hizmet arasındaki iletileri akışıdır.

İki katılımcıların iletişim konuşma vardır.The initiator starts the conversation.The target accepts a conversation begun by the initiator.Bir katılımcı konuşmaya başlayıp başlamadığını belirler katılımcının gönderebilir, iletileri belirtildiği gibi anlaşma görüşme için.Aşağıdaki diyagramda, bir iletişim kutusu iletisi akışını gösterir:

Başlatıcı ile hedef arasındaki ileti akışı

Uygulamalar iletileri iletişim bir parçası olarak değişimi.Zaman SQL Server bir ileti için bir iletişim kutusu alır SQL Server koyar iletiyi iletişim.Uygulama ileti kuyruğundan alır ve ileti gereken işler.İşleme bir parçası olarak, uygulamanın diğer göndermek katılımcı iletişim.

Güvenilir teslim

Dialogs incorporate automatic message receipt acknowledgements to ensure reliable delivery.Service Broker saves each outgoing message in the transmission queue until the message is acknowledged by the remote service.Bu otomatik bildirimleri, saat ve kaynak açıkça her iletiyi kabul etmek bir uygulama için gereksiz yaparak kaydedin.Mümkün olduğunda, bildirim iletileri parçası olarak iletişim için iade iletilerinin dahil edilir.

Not

Service Broker alındı bildirimi iletileri dahili olarak işler.Bu iletiler bir sırada görüntülenmesini ve uygulamaya teslim edilir.

Service Broker bir uzaktan hata olmasını dikkate almaz hizmet ulaşılamaz hale gelmesine.Uzak hizmet erişilemiyor, Service Broker hizmet iletileri iletişim yaşam süresi sona erdikten veya hizmet erişilebilir duruma kadar tutan.

İletişim yaşam süresi

İletileri iletişim yaşam süresi sırasında uygulamalar arasında değiştirilebilir.Ömürsaat bir iletişim kutusu sürer dan saat , yerel SQL Server kadar uygulama açıkça sona erer iletişim ya da ilişkili hata iletisi iletişim örneğini oluştururiletişim. Her katılımcı, uygulama bir hata ya da görüşme sonunda bildiren bir ileti aldığında, açıkça konuşma bitiş için sorumludur.Hizmetlerin çoğunun, konuşma bir hata olmadan konuşma bitiş tarafından eksiksiz ve başarılı olduğunu belirten bir katılımcı sorumludur.Olup bu hedef veya başlatıcı tarafından yapılır, Görüşmenin amacına göre değişir.

Yerel Service Broker için başlatan bir uygulama başlatıldığında uygulamanın iletişim kutusu için bir konuşma uç noktası oluştururiletişim. Yerel Service Broker bir hedef uygulama oluşturduğu bir konuşma uç noktası için iletişim, örnek aldığı ilk iletide iletişim.

İletişim kutuları, konuşma süresi belirli bir sınırı aşan garanti edilmektedir.Başlatan uygulama isteğe bağlı olarak bir iletişim kutusu en fazla etkin kalma süresi belirtebilirsiniz.Yerel Service Broker ve Uzaktan Service Broker izlemek bu yaşam.En fazla yaşam saat sırasında bir iletişim kutusu etkin kalır, her iki tarafında görüşme bir saat aşımı hata iletisi hizmet sıraya koyar ve iletişim için yeni iletileri reddeder.Görüşmeleri iletişim başladığında, kurulduktan en yüksek yaşam hiçbir zaman Canlı.Bir uygulama görüşme sona erdikten sonra konuşma için iletilerini almaya devam, ancak hiçbir yeni ileti için Konuşma Uygulama görüşme hakkında ileti gönderemez ulaşmasını, dikkat edin.

Applications are responsible for indicating when they are finished with a dialog by explicitly ending the dialog.Service Broker never ends a dialog automatically.Bir uygulama açıkça görüşme sona kadar iletişim veritabanında kalır.Bu nedenle, hatta iletişim ne zaman zaman aşımına uğrar veya broker hata raporları, her katılımcı görüşmesinde end konuşma deyim açıkça dağıtmalı.

Konuşma süreölçeri

A Konuşma saatr sağlayan bir uygulamayı belirli bir anda bir ileti almak saat.Konuşma süreölçerin süresi bittiğinde, SQL Server bir ileti görüşmesi başlatan uç noktada konuşma için kuyruğa eklerkonuşma süreölçeri. Konuşma süreölçeri, bir uygulama herhangi bir amaç için kullanabilirsiniz.Bir ortak konuşma süreölçeri amaçlıdır yanıtlarına gecikme uzak yanıtlamak için hizmet.Başka bir ortak için Uzak hizmet küme aralıklarla iletileri gönderen bir hizmet oluşturmak için kullanılır.Örneğin, bir hizmet konuşma süreölçeri üzerinde geçerli durumunu bildirmek için kullanabileceğiniz SQL Server birkaç her dakika.Uygulamaları da bir konuşma kullanın saatbelirli bir saklı yordam etkinleştirmek için r saat.Böylece, Service Broker destekleyecek planlanan etkinlikler.

Her katılımcının bir konuşma yapabilirsiniz küme konuşma başına bir konuşma süreölçeri.Konuşma süreölçer birbirleriyle paylaştırılmamış katılımcı, ve konuşma süreölçeri yaşam konuşma süresini etkilemez.Bunun yerine, ne saat süreölçerin saat, yerel Service Broker bir saat aşımı iletisi için sırasına ekleryerel hizmet. Bir saat aşımı iletisi türü adı olan https://schemas.microsoft.com/SQL/ServiceBroker/DialogTimer