Planowanie usługa Broker rozwoju

Podczas projektowania, przejrzyj następujące Service Broker Aplikacja:

  • Metryki dotyczące rodzaj i wielkość dane wejściowe i wyjściowe oczekiwanych z aplikacji.

  • Wymagania dotyczące proponowane aplikacji.

Jeśli rozumiesz tych czynników, można utworzyć w systemie, który spełnia cele biznesowe.

Planowanie Lista kontrolna

Podczas planowania aplikacji, należy wziąć pod uwagę na następujące pytania:

  • Jakie rola jest odtwarzany usługa Broker w aplikacji?

    Odpowiedź na to pytanie pomaga zaplanować typów wiadomości, aplikacja używa, strukturę aplikacji, a na potrzeby przechowywania i przetwarzania aplikacji.

    Na przykład aplikacja może używać Service Broker Aby zajmuje impulsy kursów nadejścia wiadomości przez przechowywanie wiadomości w kolejkach, dopóki dostępnych zasobów do ich przetworzenia. W takim przypadek typów wiadomości, aplikacja używa powinna odpowiadać dokładnie dane wejściowe i wyjściowe istniejącej aplikacji.Można oszacować przechowywania i przetwarzania potrzeby w zakresie aplikacji, w zależności od obciążenia istniejących.

    Natomiast w przypadku projektowania nową aplikację, zwróć uwagę operacje mogą korzystać z najbardziej Service Broker. Za pomocą Service Broker często handlu poza przewidywalne czasy przetwarzania w najlepszym przypadek w zamian za niezawodność podczas konwencjonalnych aplikacji nie może całkowicie.

    Na przykład aplikacja wpis zamówienia online nie ma całkowicie przetwarzanie zamówienia i Potwierdź końcowe w momencie złożenia zamówienia.Zamiast tego aplikacji może przesłać zamówienie do usługa, która przetwarza zamówienia i zapewnia ostatecznego potwierdzenia za pośrednictwem poczty e-mail.Za pomocą tego projektu, aplikacja zamówienia może kontynuować do przyjmowania zamówień, nawet wtedy, gdy problemy z siecią uniemożliwić aplikacji z potwierdzeniem zamówienia.Gdy zostaną rozwiązane problemy z siecią, aplikacja przetwarza zamówienia.W takim przypadek potrzeby przechowywania i przetwarzania dla aplikacji zależy od liczby zamówień, wielkość każdej wiadomości kolejność i czas każde zlecenie wymaga do przetworzenia.

  • Jakie informacje musi w konwersacji w celu ukończenia żądane zadanie? Co to są schematy wiadomości, które będą wymianą udostępnia te informacje do siebie punkty końcowe?

    Większość usług jest wymiana informacji półstrukturalnych.Dlatego też XML kodowanie to dobre rozwiązanie.Kodowanie binarne jest przydatne w przypadku wymiany plików binarnych, takich jak obrazy.Gdy wiadomości komunikuje się tylko na fakt, że odebrano wiadomość, wiadomości puste.

    Po wybraniu odpowiedniego typ komunikatu, jest mniej prawdopodobne zaktualizować później aplikacji.W zależności od typu komunikatu kodowania aktualizacje mogą obejmować wszystko od konieczności aktualizacji pliku schematu XML do konieczności wprowadzeniem znaczących zmian kodowania w aplikacji.W przypadku elementów danych, które nie są obecnie potrzebne, ale powinny być potrzebne w przyszłości, to może spowodować, że znaczeniu, aby uwzględnić je.Po zdefiniowaniu tych elementów w schemacie aby początek od, nie trzeba zmieniać schemat, gdy obsługują je.

  • Gdy zostanie wiadomość przetwarzanie logiki uruchomić?

    Można zaprojektować aplikację jako procedura przechowywana, która jest uaktywniona przez Service Broker, jako usługa w tle, zaplanowane zdarzenie lub jako aplikacji zewnętrznej. Ostatecznej decyzji zależy od roli, która Service Broker jest odtwarzany w aplikacji. Na przykład jeśli aplikacja przetwarza ciągły strumień wiadomości przychodzące z szybkością przewidywalny, można użyć usługa tła.Jeśli aplikacja musi skalować dynamicznie w zależności od liczby wiadomości przychodzące, można użyć procedura przechowywana uaktywniony przez kolejkę.Jeśli aplikacja przechowuje wiadomości w kolejce i procesów wszystkie wiadomości na określony czas, umożliwia zdarzenie zaplanowane do uruchomienia aplikacji.

    Jeśli program wymaga dostępu do zasobów poza bazą danych, takich jak strony sieci Web lub pliki, można użyć zewnętrznej aplikacji.Za pomocą zewnętrznej aplikacji może zwiększyć skalowalność aplikacji, ponieważ przetwarzanie odbywa się na serwerach mid-tier zamiast na serwerze bazy danych.Łatwo jest skali się aplikacji korzystającej z Service Broker, ponieważ Service Broker Umożliwia zdalny dostęp transakcyjne do kolejki. Dowolnej aplikacji, które mogą wysyłać Transact-SQL można użyć polecenia do bazy danych i proces wyniki Service Broker.

    Każdy program zewnętrzny jest izolowana od innych programów korzystających z kolejki.Dlatego programy zewnętrzne nie są potrzebne specjalne środki ostrożności, aby określić zarządzanie dostępem do kolejki.Ponadto, jeśli połączenie nie powiedzie się, podczas gdy aplikacja przetwarza wiadomości, transakcji powoduje powrót i Service Broker Zwraca wiadomości do kolejki. Problemy z siecią nie może spowodować utratę wiadomości aplikacji.

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

    Aplikacji zewnętrznej można zaimplementować za pomocą technologii można połączyć się z bazą danych i uruchamiania Transact-SQL instrukcje w SQL Server. Jednak aplikacje zwykle są opracowywane w .NET Framework-zgodne języka 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 Database Engine.Zgodny z interfejsem CLR języków może zapewnić większą elastyczność, większego sterowania przepływem programu, lepszą wydajność dla aplikacji wymagających dużej ilości procesora i bezpośredni dostęp do .NET Framework.

  • Jakie składniki serwera aplikacji użyje najbardziej silnie?

    Praca z sieci administrator systemu, aby upewnić się, że masz wystarczające zasoby aplikacji optymalnej wydajności.Znane składniki, które najczęściej używanych.Na przykład jeśli aplikacja korzysta z kolejki w celu wyrównania obciążenia przetwarzania lub włącza funkcję przechowywania wiadomości, upewnij się że jest dostateczna ilość wolnego miejsca na dysku dla kolejki na powiększenie.I odwrotnie aplikacji, która ma wysoki wiadomości woluminów, ale niższy czasy oczekiwania kolejki mogą korzystać z większej przepustowości sieci, ale zajmują mniej miejsca na dysku.

  • Wiadomości mają różne priorytety?

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