Sprawdzam narzędzie do obsługi wielu podmiotów korzystających z serwera SQL Server. Rozważam udostępnioną bazę danych, wspólny schemat i filtr widoku dzierżawcy opisany tutaj. Jedyną wadą jest rozdrobniony puli połączeń ...Wydajność pofragmentowanej puli połączeń programu SQL Server w aplikacjach dla wielu dzierżawców
Per http://msdn.microsoft.com/en-au/architecture/aa479086, Lokator Zobacz Filtr jest opisana w następujący sposób:
„SQL widoki mogą być wykorzystywane do udzielania indywidualnych lokatorów dostęp do niektórych wierszy w danej tabeli, uniemożliwiając dostęp do innych wierszy:
W języku SQL widok jest tabelą wirtualną zdefiniowaną przez wyniki zapytania SELECT, a wynikowy widok można następnie zapytać i zastosować w procedurach przechowywanych tak, jakby był Faktyczna tabela bazy danych Na przykład: poniższa instrukcja SQL tworzy widok tabeli o nazwie Pracownicy, która została przefiltrowana w ten sposób t tylko wiersze należące do jednego najemcy są widoczne:
CREATE VIEW TenantEmployees AS
SELECT * FROM Employees WHERE TenantID = SUSER_SID()
To stwierdzenie otrzymuje identyfikator zabezpieczeń (SID) konta użytkownika dostępu do bazy danych (co, będziesz Przypomnijmy, to konto należących do najemcy, nie użytkownik końcowy) i wykorzystuje je w celu określenia, które wiersze powinny być zawarte w widoku”
myślenia to dzięki, jeśli mamy jedną bazę danych przechowującą powiedzieć 5,000 różnych lokatorów, to pula połączenie jest całkowicie pofragmentowane i za każdym razem, gdy zapytanie jest wysyłane do bazy danych ADO.NET musi ustanowić nowe połączenie i uwierzytelnić (pamiętaj, że tworzenie połączeń działa dla każdego unikalnego ciągu połączenia), a to oznacza, że masz 5000 ciągów połączeń ...
Jak bardzo powinienem się tym przejmować? Czy ktoś może mi podać przykłady z prawdziwego świata, jak znaczący wpływ ma puli połączeń na zajęty serwer bazy danych dla wielu dzierżawców (np. Obsługa 100 żądań na sekundę)? Czy mogę po prostu rzucić więcej sprzętu na problem i znika?
Myśli?
Planujesz posiadania każdy lokator ustalenia ich połączenia z SQL Server, lub planujecie posiadający usługę pośrednika (npWCF), w którym przesyłane są wszystkie żądania? – Alexander
W skrócie: to, co opisują lekarze, to zły pomysł ... – usr