Aracılığıyla paylaş


Hizmet Aracısı avantajları

Hizmet Aracısı'ın özellikleri, bir dizi veritabanı uygulamaları için önemli avantajlar sağlar.Bu özellikler ve yararları şunlardır:

  • Veritabanı tümleştirme uygulama performansını geliştirir ve yönetimi kolaylaştırır.

  • İleti sıralama ve koordinasyonu için Basitleştirilmiş uygulama geliştirme

  • Gevşek uygulama bağlantı iş yüküne esneklik sağlar.

  • İlgili ileti kilitleme birden fazla verir örnek açık eşitleme yapmadan aynı sırada işlem iletileri için bir uygulama.

  • Otomatik etkinleştirme iletisi birimle ölçeklemek uygulamaları sağlar.

Veritabanı entegrasyonu

Hizmet Aracısı'ın tümleşik tasarım uygulama performansı ve Yönetim için yararları sağlar.

İle tümleştirme SQL Server eklenen ileti işlem sağlayan genel giderleri ve harici karmaşıklığını dağıtılmış işlem koordinatörü.Bir uygulama bir veya daha fazla ileti alır, ileti veya iletileri işler ve bir tek veritabanı hareket içinde bir yanıt iletisi gönderir.Bu nedenle işlem başarısız, tüm iş geri alır ve alınan ileti sıraya döndürülür, bu başka bir girişim iþlemek için yapılabilir.Hiçbir eylem uygulama hareketi tamamlar kadar etkili.Uygulamanın tutarlı bir durumda kalır.

Veritabanındaki tüm verileri, iletileri ve uygulama mantığı olduğunda üç veya dört ayrı bileşenlerini yönetmek rutin yönetim veritabanı ve yönetici sonra haline yönetim uygulaması (olağanüstü durum kurtarma, güvenlik, yedek ve benzeri) için bir parçası olmadığı için yönetim daha kolay olur.

Geleneksel ileti sistemleri ile ileti deposu ve veritabanı tutarsız hale gelebilir.Bir bileşen bir yedek kopyadan geri yüklendiğinde, örneğin, başka bir bileşen de aynı anda alınmış bir yedekten geri gerekir saat, ya da başka ileti deposundaki bilgiler veritabanındaki bilgileri eşleşmiyor.Hizmet Aracısı iletileri ve verileri aynı veritabanında tutar, tutarsızlık sorunu değildir, çünkü.

Veritabanı bir yararı da ortak bir geliştirme ortamı olan tümleştirme.Bir uygulamanın ileti parçası ve bir uygulama veri parçası aynı kullanabilirsiniz SQL Server Dil ve araçları bir uygulamada Hizmet Aracısı, veritabanı programlama için ileti tabanlı programlama teknikleri ile geliştirici benzerlik yararlanmaSaklı yordamlar uygulayan bir hizmet Aracısı ya da hizmet yazılabilir Transact-SQL veya ortak dil çalışma zamanı (clr) dilleri.Veritabanı kullanımı dışından programlar Transact-SQL ve tanıdık veritabanı programlama arabirimleri gibi ado.net.

Ayrıca, veritabanı tümleştirme otomatik Kaynak yönetimini etkinleştirir.Hizmet Aracısı bağlamında çalışan SQL Server örnek için Hizmet Aracısı izleyen tüm iletileri hazır aktarılan tüm veritabanlarındaki örnek.Böylece, her veritabanı Hizmet Aracısı'ı tüm kaynak kullanımını yönetmek için yardımcı olurken, kendi sıraları korumak SQL Server örnek.

Sıralama ve iletileri koordine

Geleneksel ileti sistemlerinde, uygulama, sıralama ve sıra dışı gelen iletileri düzenlemekten sorumlu olmuştur.Örneğin, uygulama a 1, 2 ve 3 iletileri gönderir.Uygulama b alır ve iletileri 1 ve 3 edene, ancak bir hata iletisiyle 2.Uygulama bir ileti 2 yeniden gönderir, ancak şimdi, ileti iletiler sonra 1 ve 3 aldı.Geçmişte, bir geliştirici ya da ileti sırası gelmedi önemi, ya da Aksi böylece ileti 3 uygulama doğru düzende ileti işleme koyamadı böylece mesajın 2 geldiği kadar geçici olarak önbelleğe uygulama yazmanız gerekmektedir.İkisi de kolay anlaşılan ya da basit bir çözümdür.

Geleneksel sistemleri ile ilgili başka bir sorun, yinelenen teslim olmuştur.Önceki örnekte, uygulama b 2, iletiyi alır, ancak uygulama a için geri bildirim iletisi kayıp, uygulama bir ileti 2, b almak uygulama neden gönderecektir, 2 kez ileti.Tanımlamak ve yinelenen atmak ya da yinelenen olumsuz etkileri olmadan yeniden işleme yapabilmek uygulama kodu vardı.Yine her iki yaklaşım uygulamak zor.

İleti koordinasyonu da geleneksel olarak işlemek için zor bir sorun olmuştur.Örneğin, yetkiliye bir uygulama yüzlerce ya da binlerce isteği için bir hizmet.Hizmet paralel isteklerini işler ve hizmet isteği işlemeyi tamamladıktan hemen yanıt verir.Her isteği işlemek için saat farklı bir miktarda aldığı için uygulamanın uygulama giden ileti gönderilme sırası ile farklı sırada yanıtları alır.Ancak, doğru yanıtları işlemek için uygulamanın her yanıt doğru giden ileti ile ilişkilendirmelisiniz.Geleneksel ileti sistemlerinde, her uygulama maliyetini ve karmaşıklığını uygulama geliştirme için eklenen bu ilişki yönetiliyor.

Hizmet Aracısı ileti sırası, benzersiz teslim ve konuşma kimliği otomatik olarak işlenmesini sağlayarak bu sorunları çözer.Bir uygulama iki hizmet broker bitiş noktaları arasında bir görüşme kurulduktan sonra her iletinin yalnızca bir kez ve iletinin gönderildiği sırada alır.Uygulamanız yalnızca bir kez ek kod olmadan sipariş iletilerini işleyebilir.Son olarak, Hizmet Aracısı her iletiye otomatik olarak bir tanımlayıcı içerir.Bir uygulamayı her zaman belirli bir iletiye ait hangi konuşma söyleyebilirsiniz.

Gevşek bağlantı ve iş yüküne esneklik

Hizmet Aracısı başlatan uygulama ve hedef uygulama arasında gevşek bir bağlantı sağlar.Bir uygulama üzerinde bir sıraya ileti göndermek ve ileti ulaştığından emin olmak için işleme, güvenmek üzerinde Hizmet Aracısı uygulama ile devam etmek, hedef.Bu gevşek bağlantı, zamanlama esnekliği sağlar.Başlatıcı birden çok ileti gönderebilir ve birden çok hedef hizmet bunları paralel olarak işleyebilir.Her hedef hizmet iletileri en geçerli iş yüküne bağlı olarak, kendi doğrultusunda işler.

Queuing bir sunucu tarafından istenen en yüksek kapasiteyi azaltarak daha eşit şekilde işleme dağıtmak systems sağlar.Bu, toplam işlem hacmi ve veritabanı uygulamaları performansı iyileştirebilir.Örneğin, birçok veritabanı uygulamaları bir dalgalanma hareketleri günün kaynak tüketimini artırmayı ve yanıt süreleri yavaşlatan, belirli zamanlarda var.Uygulamaya gönderildiğinde Hizmet Aracısı ile bu uygulamalar tüm işlemlerin iş hareketi için gerçekleştirilmemesini.Bunun yerine, arka plan işlemleri gerçekleştiren uygulamalar için hareket hakkında bilgi göndermek için Hizmet Aracısı uygulama kullanır.Yeni iş hareketlerini almak ana giriş uygulaması devam ederken bu uygulamaların güvenilir saat, üzerinde işlem.

Hedef hemen kullanılabilir durumda değilse, iletiyi gönderen veritabanı için iletim sırada kalır.Hizmet Aracısı ileti başarıyla gönderilene veya konuşma süresi dolmadan iki hizmet bir servis görüşmesi sırasında belirli bir noktada geçici olarak kullanılamıyorsa, devam etmek güvenilir bir konuşma vermek iletisi yeniden dener.İletim sırasındaki iletilerin veritabanının bir parçası olan; Hizmet Aracısı örnek devri veya yeniden bile iletiyi teslim eder.

İlgili ileti kilitleme

Birden fazla programı aynı sıradan paralel okumaya izin vermek için geleneksel bir ileti uygulama yapmanın en zor şeylerden biri olmuştur.Birden çok program veya birden çok iş parçacığı aynı sıradan okunurken geleneksel ileti sistemlerinde, iletilerin sıra dışı işlendikten.Hizmet Aracısı bu durum konuşma grubu aracılığıyla kilitleme oluşmasını engeller.

Geleneksel bir sipariş işleme uygulaması düşünün.İleti a, sipariş başlığı ve sipariş satır öğelerini oluşturma hakkında yönergeler içeren ileti b oluşturma hakkında yönergeler içeren her ikisi de sıraya alınır.Bu iletilerin her ikisini ayrı uygulama örnekleri tarafından dequeued ve aynı anda işlenen saat, sipariş satırı öğe hareketi işleyin ve sipariş henüz olmadığı için başarısız girişimi.Sırayla geri almak almak Al ve iletiyi yeniden sıraya alındı ve yeniden işlenmesi için harekete neden olan hata kaynakları harcamak.Geleneksel olarak, programcılar, tek bir iletiye ileti b ve a iletisinden bilgilerini birleştirerek bu sorun çözüldü.Bu yaklaşımın iki iletiler için açık olmasına rağmen bu yaklaşım kötü bir şekilde düzinelerce, hatta yüzlerce iletilerin koordine gerektiren sistemler ölçeklenir.

Hizmet Aracısı ilgili görüşmeleri de ilişkilendirerek bu sorunu çözer bir konuşma grubu.Hizmet Aracısı otomatik olarak kilitler tüm iletilerin aynı konuşma grubu, böylece bu iletiler yalnızca alınan ve bir uygulama örnek tarafından işlenir.Bu arada, uygulamanın diğer örneklerini sıradan çıkarmak ve diğer konuşma grubu iletileri işleme devam edebilirsiniz.Bu karmaşık kilitleme uygulama kodunda gerek kalmadan, güvenilir ve verimli bir şekilde çalışması birden çok paralel bir uygulama örnekleri sağlar.

Otomatik etkinleştirme

En kullanışlı özelliklerinden biri Hizmet Aracısı etkinleştirme biridir.Etkinleştirme dinamik olarak kendisini sırasına ulaşır iletilerin hacmi eşleşecek şekilde ölçeklendirmek bir uygulama sağlar.Hizmet Aracısı veritabanı içinde çalışan programları hem etkinleştirme yararlanmak için veritabanı dışında çalışan programları olanak tanıyan özellikler sağlar.Ancak, Hizmet Aracısı uygulama etkinleştirme kullanmanız gerekmez.

Hizmet Aracısı uygulama iletileri ileti kullanılamayabilir görüşmeleri için aldığını belirlemek için bir sıra izler.Çalışma gerçekleştirmek sıra Okuyucu için olduğunda Hizmet Aracısı etkinleştirme yeni bir sıra okuyucu başlatılır.Sıra Okuyucu için iş olduğunda belirlemek için Hizmet Aracısı sıra üzerinde izler.Sıra okuyucu sayısı gelen trafiği eşleştiğinde, sıra düzenli olarak burada kuyruk boştur veya başka bir sıra okuyucu tarafından işlenen bir konuşma sırasındaki tüm iletilerin ait bir durum çıkmaktadır.Bir sıranın saat için bu duruma ulaşması, Hizmet Aracısı uygulama başka örnek etkinleştirir.

Uygulamaları etkinleştirme farklı yaklaşımlar içinde veritabanı programları ve veritabanı dışında çalışan programlar için kullanın.Hizmet Aracısı veritabanı içindeki programları için başka bir kopyasını başlatır saklı yordam sıra tarafından belirtilen.Veritabanı dışında çalışan programlar için Hizmet Aracısı etkinleştirme olay üretir.Program, başka bir sıra okuyucu ne zaman gerekli belirlemek için bu olay izler.

Hizmet Aracısı etkinleştirme başlatılan programın durdurmaz.Bunun yerine, etkinleştirilmiş uygulamaları kapatmak için yazılmış kapalı otomatik olarak alınması için gelen tüm iletiler haber vermeden belirli saat sonra.Bu şekilde tasarlanmış bir uygulamayı büyümesine ve trafik hizmet değişiklikleri dinamik olarak sıkıştırmak için uygulama örneklerinin izin verebilirsiniz.Ayrıca, sistem kapanıyorsa kapalı veya başlatıldıktan sonra uygulama otomatik olarak sistem yeniden başlatıldığında sıradaki iletileri okumak için başlatılır.

Geleneksel ileti sistemlerini bu davranış yetersizliği ve sık sık ya da çok olması en son kaynaklar fazla veya çok az verilen herhangi belirli bir sıraya ayrılmış saat.