Udostępnij za pośrednictwem


Planowanie Service Broker rozwoju

Przejrzyj następujące podczas projektowania Service Broker aplikacji:

  • Wskaźniki dotyczące rodzaju i wielkości wejściowe i wyjściowe z aplikacji.

  • Wymagania dotyczące proponowanych aplikacji.

Zrozumienie tych czynników można opracować system, który spełnia cele biznesowe.

Planowanie Lista kontrolna

Podczas planowania aplikacji, należy rozważyć następujące kwestie:

  • Jaką rolę jest odtwarzany Service Broker w aplikacji?

    Odpowiedź na to pytanie pomoże zaplanować typy wiadomości aplikacja używa, struktury aplikacji i przechowywania i przetwarzania wymagań aplikacji.

    Na przykład, aplikacja może używać Service Broker postępowania z impulsy kursów nadejścia wiadomości przez przechowywanie wiadomości w kolejkach, aż do ich przetworzenia dostępnych zasobów.przypadek typów wiadomości, aplikacja używa powinny pasować wejściowe i wyjściowe istniejącej aplikacji.Można oszacować składowania i przetwarzania na potrzeby aplikacji, w zależności od obciążenia istniejących.

    Natomiast w przypadku projektowania nowego wniosku rozważyć operacje mogą korzystać najbardziej z Service Broker.Za pomocą Service Broker często standardzie przewidywalne czasy przetwarzania przypadek najlepiej w zamian za niezawodność podczas konwencjonalnych aplikacji może przestać działać.

    Na przykład aplikacja zapis zamówienia online mieć całkowicie przetwarzanie zamówienia i dostarczyć ostateczne potwierdzenie w czas złożenia zamówienia.Zamiast tego aplikacja może przesłanie do usługa, która przetwarza zamówienia i zapewnia ostateczne potwierdzenie pocztą e-mail.Korzystając z tego projektu aplikacji zamówienia można kontynuować zaakceptować zamówienia, nawet jeśli problemy z siecią uniemożliwić aplikacji z potwierdzeniem zamówienia.Kiedy są rozwiązywane problemy z siecią, aplikacja przetwarza zamówienia.przypadek potrzeby przechowywania i przetwarzania aplikacji zależą od liczby zamówień oczekiwane, rozmiar każdej wiadomości zamówienia i czas każdego zamówienia wymaga przetwarzania.

  • Jakie informacje będą wymagane w konwersacji do wykonaj żądane zadanie?Co to są schematy wiadomości, które punkty końcowe wymieniają informacje do siebie?

    Większość usług wymiany informacji półstrukturalnych.Dlatego Kodowanie XML dobrym wyborem.Kodowanie binarne jest przydatne do wymiany plików binarnych, takich jak obrazy.Gdy wiadomości komunikuje się fakt, że odebrania wiadomości, użyj pustej wiadomości.

    Wybierając typ komunikatu poprawne, jest mniej prawdopodobne zaktualizować później aplikacji.W zależności od typ komunikatu kodowania, aktualizacje mogą obejmować wszystko od konieczności aktualizacji pliku schematu XML do wprowadzania znaczących zmian kodowania w aplikacji.W przypadku elementów danych, które aktualnie nie jest konieczne, ale oczekują potrzebne w przyszłości może mieć uzasadnienia, aby uwzględnić je.Jeśli najpierw zdefiniować te elementy w schemacie, nie będzie trzeba zmienić schemat, gdy obsługują je.

  • Gdy zostanie wiadomość przetwarzanie logiki uruchomić?

    Można zaprojektować aplikacji jako procedura składowana, która jest uaktywniona przez Service Broker, jako usługa tła, zaplanowane zdarzenie lub jako aplikacji zewnętrznej.Ostateczna decyzja zależy od roli, Service Broker odgrywa w aplikacji.Na przykład jeśli aplikacja przetwarza ciągły strumień wiadomości przychodzące z szybkością przewidywalnym, może używać usługa tła.Jeśli aplikacja musi skali dynamicznie na podstawie liczby wiadomości przychodzących, można użyć procedura składowana uaktywniona przez kolejkę.Jeśli aplikacja przechowuje wiadomości w kolejce i przetwarza wszystkie wiadomości zestawu czas, zaplanowane zdarzenia można użyć do uruchomienia aplikacji.

    Jeżeli program wymaga dostępu do zasobów poza bazą danych, takie jak pliki lub strony sieci Web, można użyć aplikacji zewnętrznej.Za pomocą zewnętrznej aplikacji może zwiększyć skalowalność aplikacji, ponieważ przetwarzanie odbywa się na serwerach masowej średniej wielkości zamiast na serwerze bazy danych.Jest łatwy do skali poza aplikacji korzystającej z Service Broker, ponieważ Service Broker zapewnia dostęp zdalny transakcyjne do kolejki.Dowolna aplikacja, która może wysyłać Transact-SQL polecenia do bazy danych i wyniki można użyć procesu Service Broker.

    Każdy program zewnętrzny jest izolowana od innych programów korzystających z kolejki.Dlatego programy zewnętrzne nie jest konieczne specjalne środki ostrożności do zarządzania dostępem do kolejki.Ponadto, jeśli połączenie nie powiedzie się podczas przetwarzania wiadomości przez aplikację, transakcji wycofuje i Service Broker zwraca wiadomość do kolejki.Problemy z siecią nie może spowodować utratę wiadomości aplikacji.

  • Jakiej technologii planujesz użyć do implementacji aplikacji?

    Można zaimplementować zewnętrznej aplikacji przy użyciu technologii można połączyć z bazą danych i uruchom Transact-SQL instrukcji w SQL Server.Jednak aplikacje zwykle są opracowywane w .NET Framework-język zgodny i ADO.NET.You can implement a stored procedure in either Transact-SQL or one of the .NET Framework-compatible languages.Transact-SQL can provide better performance against the Aparat baz danych.Języki standardem CLR może zapewnić lepszą elastyczność, ściślejsza kontrola przepływu program, lepszej wydajności dla aplikacji intensywnie wykorzystujących procesor i bezpośredni dostęp do .NET Framework.

  • Jakie składniki serwera aplikacji użyje najintensywniej?

    Pracować z administrator systemu do zapewnienia wystarczających zasobów, aby osiągnąć optymalną wydajnością.Znać składniki, które będą najczęściej używanych.Na przykład jeśli aplikacja używa do obciążenie pracą przetwarzania kolejek lub włącza przechowywania wiadomości, zapewnienia, że jest wystarczająca ilość miejsca dla kolejki rosnąć.Odwrotnie aplikacji, która ma wysoki messaging woluminów, ale niższy czasy oczekiwania kolejki może używać większej przepustowości sieci, ale zajmują mniej miejsca na dysku.

  • Wiadomości będą miały różne priorytety?

    W systemach obciążonego Service Broker konwersacji priorytety pomocy zapewnić ważne pracy nie jest blokowana przez duże ilości pracy mniej ważnych.Priorytety konwersacji również włączyć projekty, które obsługują różne poziomy usługa.