Ne Hizmet Aracısı?
Service Broker Geliştiriciler, bağımsız bileşenler bir görevi yerine getirmek için birlikte çalışır, zaman uyumsuz, gevşek biçimde eşleşmiş uygulamaları yardımcı olur.Bu uygulama bileşenleri görevi tamamlamak için gereken bilgileri içeren bir ileti alışverişinde bulunmak.Bu konu aşağıdaki yönlerini açıklarService Broker:
Görüşmeleri
İleti sıralama ve düzenleme
Zaman uyumsuz işlem programlama
Gevşek biçimde eşleşmiş uygulamalar için destek
Service Broker Bileşenler
Görüşmeleri
Service Broker ileti gönderme ve alma, temel işlevlerini tasarlanmıştır.Her ileti parçası oluşturan birKonuşma.Her görüşme, güvenilir ve kalıcı bir iletişim kanalıdır.Her ileti ve konuşma özel olan, yazınService Brokergeliştiriciler yazma yardımcı olması için zorlar güvenilir uygulamalar.
YeniTransact-SQLifadeleri izin uygulamaların güvenilir bir şekilde göndermek ve almak bu iletileri.Uygulama ileti gönderen birhizmet,bir ad için bir dizi ilişkili görevler.Bir uygulamanın iletileri alır birsıraolan bir görünümü bir iç tablo. ,
İletiler için aynı görevi aynı konuşmaya bir parçasıdır.Her görüşme içindeService Brokeruygulama her alır garanti ileti yalnızca bir kez sıraya ileti gönderilmedi.İlgili görüşmeleri aynı hizmeti uygulayan hizmet programı ilişkilendirebilirsiniz birKonuşma grubu ' de açıklandığı gibi Hizmet Aracısı'ın yararları.
Sertifika tabanlı güvenlik hassas iletileri korumak ve hizmetlerine erişimi denetlemenize yardımcı olur.Bir benzerliği olduğunu düşünüyorsanız içinService Brokerşu anda gibi bir posta hizmet.Uzaktaki bir iş arkadaşınız ile bir görüşme tutmak için mektup, posta hizmet aracılığıyla göndermek yoluyla iletişim kurabilirsiniz.Posta Hizmetleri, sıralar ve harfleri sunar.Ve kendi çalışma arkadaşınıza sonra kendi posta kutularına harfler almak, bunları okuyabilir, yanıtlarını yazma ve görüşme sona kadar yeni mektupları gönderin.Mektubu teslim ve kendi çalışma arkadaşınıza diğer görevleri işlemesi sırasında zaman uyumsuz olarak ortaya çıkar.
Programları kullanabilirService Brokerzaman uyumsuz Konuşmalar diğer programlar. desteklemek için bir posta hizmet gibiThe Service Broker messages function like letters.AService Brokerhizmet adresidir burada posta ofisi teslim harfler.Sonra teslim edilir, tüm harfleri içeren posta sıralardır.Uygulamalar iletileri alma, iletiler işlem ve yanıtlar.
, Uygulama ileti gönderen birService Brokerhizmet olarak konuşma. diğer ucundaki uygulama uygulama ayrıntılarını tarafından ayrılmışAlıcı uygulama dinamik olarak yeniden veya gönderen uygulama etkilemeden yeni koduyla değiştirilir.Alıcı uygulama bile bilgisayarı geçici olarak; tek etkisi, olacaktırService BrokerYeni ileti sıraya alma uygulaması yeniden başlatılana kadar ekleme tutar.
İleti sıralama ve Coordination
Service Broker sıraya alma, programlama tekniği, iki anahtar bakımdan farklı geleneksel ürünleri arasında ortak bir veritabanını gerçekleştirir:
Service Broker sıra veritabanı ile tümleşiktir.
Kuyruklar düzenleyin ve ilgili iletileri sipariş.
Tümleşik kuyruk anlamına gelir, normal bir veritabanı bakımını ve yönetimini deService Broker.Genellikle bir yönetici olan görevleri ile ilgili olmayan rutin bakımService Broker.
The Service Broker framework provides a simple Transact-SQL interface for sending and receiving messages combined with a set of strong guarantees for message delivery and processing.Service Broker guarantees that a program receives each message in a conversation exactly once in the order in which the message was sent, not the order in which the message entered the queue.Geleneksel sıra ürünler iletileri, sıra iletileri girdiğiniz sırada sağlar.This requires an application to determine the order and grouping of messages.Service Broker guarantees that two queue readers cannot simultaneously process messages from the same conversation or the same group of related conversations.
HerService BrokerKonuşma sahip iki taraflı.Başlatan, görüşmeyi başlatan taraf verilir; diğer tarafı hedef olarak adlandırılır.Her bir hizmet; Başlatıcısı hizmeti ve hedef hizmeti vardır.Her hizmet bir ilişkili ileti sırası vardır.
Normal iletişim Konuşmada iletileri değişimi gösterilmektedir:
Başlatıcı sırasında:
Bir program konuşmaya başlar.
Program bir görevi gerçekleştirmek için gerekli olan veriler içeren bir ileti oluşturur.
Program iletiyi hedefe gönderir hizmet.
Hedef:
İleti, hedef ile ilgili sıraya yerleştirilir hizmet.
Program, sıradan ileti alır ve işi gerçekleştirir.
Program Başlatıcısı hizmet için bir ileti göndererek yanıt verir.
Başlatıcı sırasında:
Başlatıcı hizmet ile ilişkili sırası yanıt iletisi yerleştirilir.
Bir program yanıt alır ve işler.
Bu döngü, hedefe göndermek için daha fazla isteği yok olduğundan, görüşmeyi başlatan sona kadar yinelenir.
Service Broker öncelikleri (yüksek) 10-1 (düşük) her görüşme için ayarını destekler.This ensures that low priority work does not block higher priority work.Service Broker systems can be configured to offer varying levels of service.Daha fazla bilgi için bkz:Konuşma öncelikleri.
Service Broker İleti yazma uygulamalarında kullanılan en zor görevleri gerçekleştirir.İleti düzenleme, kilitleme ve sıra okuyucular başlangıç güvenilir ileti teslimi, bu zor görevler içerir.Bu veritabanı geliştiricilerin iş sorunlarını çözme konusunda öðrenmeye sağlar.
Zaman uyumsuz işlem programlama
,Service Brokeryapısıdır, uygulamalar arasındaki ileti teslimiişlem and asynchronous.ÇünküService Brokeriletiler işlem, işlem geldiğinde yeniden tümService Brokerhareket işlemleri geri almak almak geri almak almak.Bu dahil gönderme ve alma işlemleri., Zaman uyumsuz teslim,Database Enginetutamaçları teslim sırasında uygulama devam çalışma.Ölçeklenebilirlik, artırmak içinService Brokeryararlı yok sıra çalışma do. program için bu işlem programları otomatik olarak başlatılması için düzenekler sağlarDaha fazla bilgi için bkz:Service Broker etkinleştirme.
Zaman uyumsuz programlama sıraya kullanım uygulamaları yazma olanağı tanır.Pek çok veritabanı uygulamaları, kaynaklar izin olarak gerçekleştirilmesi için iş sırası olarak tabloları içerir.Sıra veritabanı uygulamaları için iki yararı sağlar:
Bir uygulama için etkileşimli kullanıcı, iş isteği sıraya koymak hemen sonra yanıt verebilir.Uygulama, tüm istek yanıt vermeden önce tamamlanması gereken ilişkili iş beklemek yok.Kaynaklar, sıraya alınan istek işlenir.Bu, etkileşimli kullanıcılar için yanıt olarak kalır ve kullanılabilir kaynakları verimli kullanmak sağlar.
Tek bir istek söz konusu iş bazen birden çok birimi ayrı işlemler olarak işlenen çalışma ayrılabilir.Bu durumda, bir veritabanı uygulaması, bir isteği sıraya girerek her iş birimi başlatabilirsiniz.Hizmet Aracısı birden çok örneği arasında yayılmış uygulamalar çalışma izin vererek bu fikir genişletenService Brokerayrı bir bilgisayar.
Doğru sıra ve kuyrukları öğeleri işlemek için uygulamaların kodlama genellikle karmaşık olur.Geliştiricilerin kullanabileceğiService Brokerkodlama basitleştirmek için veritabanı altyapısı olarak yerleşik işlevleri başarıyla uygulayan için gerekli veritabanı sıraları.
Gevşek eşleşmiş uygulamalar için destek
Service Broker gevşek biçimde eşleşmiş uygulamalarını destekler.Gevşek biçimde eşleşmiş uygulamaları birbirinden ileti gönderme ve alma, birden çok program oluşur.Bu tür uygulamalar exchanged iletiler için aynı tanımlarının İçermeli ve hizmetler arasındaki etkileşim için aynı genel yapısını tanımlamanız gerekir.Ancak uygulamaları aynı anda çalıştırmak zorunda saat, aynı çalışmaSQL Serverörnek veya paylaşım uygulama ayrıntıları.Uygulamanın fiziksel konumu veya iletişimindeki diğer katılımcı uygulaması gerekmez.
Servis aracı bileşenleri
Service Broker üç bileşeni vardır:
Konuşma bileşenleri. Konuşma grupları, konuşma ve ileti oluşturmak çalışma-saat yapısı Service Brokeruygulaması.Uygulama bir parçası olarak ileti alışverişi.Her görüşme bir konuşma grubun parçası olan ve birden fazla görüşme konuşma grubu içerebilir.HerService BrokerKonuşma olan bir iletişim.Bir iletişim kutusu, görüşme yeri tam olarak iki katılımcıların ileti değişimi oluşur.Konuşma bileşenleri hakkında daha fazla bilgi için bkz:Konuşma mimarisi.
Hizmet tanımı bileşenleri. Bu uygulamanın kullandığı görüşmeleri temel yapısını belirleyen tasarım zamanı bileşenleridir.Uygulama ileti türleri, uygulama konuşma akış ve uygulama veritabanı depolama tanımlarlar.Hizmet tanımı bileşenleri hakkında daha fazla bilgi için bkz:Hizmet mimarisi.
Ağ ve güvenlik bileşenleri. Bu bileşenler'in örnekleri arasında ileti değişimi için kullanılan alt yapı tanımlayın.Veritabanı yöneticileri değişen ortamlarını yönetmek içinService BrokerYöneticiler bu bileşenleri bağımsız olarak yapılandırma sağlar uygulama kodunu.Ağ ve güvenlik bileşenleri hakkında daha fazla bilgi için bkz:Ağ ve Uzaktan güvenlik.
hizmet tanımı bileşenleri, ağ bileşenlerini ve güvenlik bileşenleri veritabanına ait meta veriler bir parçası olan veSQL Serverörnek.Konuşma grupları, konuşma ve iletileri veritabanını içeren bir veri parçasıdır.