Wskazówki: Profilowanie aplikacji SharePoint
W tym instruktażu przedstawiono sposób użycia narzędzia profilowania w Visual Studio, aby zoptymalizować wydajność aplikacji programu SharePoint.Przykładem zastosowania jest odbiorca zdarzeń funkcji programu SharePoint, zawierającego pętlę bezczynności, który spowalnia odbiorca zdarzeń funkcji.Profiler Visual Studio umożliwia wyeliminowanie najdroższe (najwolniejsze wykonywania) części projektu, znany również jako ścieżka hot.
W tym instruktażu przedstawiono następujące zadania:
Dodawanie funkcji i odbiorca zdarzeń funkcji.
Konfigurowanie i wdrażanie aplikacji programu SharePoint.
Uruchomienie aplikacji SharePoint.
Przeglądanie i interpretacji wyników profilowania.
[!UWAGA]
Na danym komputerze mogą być używane inne nazwy lub lokalizacje pewnych elementów interfejsu użytkownika programu Visual Studio, które są używane w poniższych instrukcjach. Używana wersja programu Visual Studio oraz jej ustawienia określają te elementy. Aby uzyskać więcej informacji, zobacz Visual Studio, ustawienia.
Wymagania wstępne
Potrzebne do przeprowadzenia tego instruktażu następujące składniki:
Obsługiwane wersje systemu Microsoft Windows i programu SharePoint.Aby uzyskać więcej informacji, zobacz Wymagania dotyczące rozwiązań programu SharePoint.
Visual Studio 2012.
Tworzenie projektu programu SharePoint
Najpierw utwórz projekt programu SharePoint.
Tworzenie projektu programu SharePoint
Na pasku menu wybierz pliku, Nowa, Projekt do wyświetlania Nowy projekt okno dialogowe.
Rozwiń SharePoint albo węzeł Visual C# lub języka Visual Basic, a następnie wybierz polecenie 2010 węzła.
W okienku szablony wybierz Programu SharePoint 2010 projektu szablonu.
W Nazwa polu, wpisz ProfileTest, a następnie wybierz OK przycisk.
Kreatora dostosowania programu SharePoint pojawia się.
Na Określ witrynę i poziom zabezpieczeń dla debugowania strony, wprowadź adres URL witryny SharePoint server, w którym chcesz debugować definicji witryny lub użyj domyślnej lokalizacji (http://nazwy systemu/).
W Co to jest poziom zaufania dla tego rozwiązania programu SharePoint? sekcji, wybierz opcję Wdrażanie rozwiązań gospodarstwa jako przycisku opcji.
Obecnie można tylko profil rozwiązaniami farmy.Aby uzyskać więcej informacji na temat rozwiązania w trybie piaskownicy porównaniu z rozwiązaniami farmy, zobacz Względy roztwór trybie piaskownicy.
Wybierz wykończenie przycisk.Projekt pojawia się w Solution Explorer.
Dodawanie funkcji i odbiorca zdarzeń funkcji
Następnie należy dodać funkcję do projektu oraz odbiornik zdarzenia dla funkcji.Ten odbiorca zdarzenia będzie zawierać kod, aby być wyprofilowane.
Aby dodać funkcję i odbiorca zdarzeń funkcji
W Solution Explorer, otwórz menu skrótów dla Funkcje węzła, wybierz Dodać funkcjęi pozostaw nazwę wartości domyślne, Feature1.
W Solution Explorer, otwórz menu skrótów dla Feature1, a następnie wybierz polecenie Dodać odbiorca zdarzenia.
Dodaje plik kodu do funkcji z kilku obsługi zdarzeń się komentarz i otwiera plik do edycji.
W klasie odbiornik zdarzenia należy dodać następujące deklaracje zmiennych.
' SharePoint site/subsite. Private siteUrl As String = "https://localhost" Private webUrl As String = "/"
// SharePoint site/subsite. private string siteUrl = "https://localhost"; private string webUrl = "/";
Zamień FeatureActivated procedurę z następującego kodu.
Public Overrides Sub FeatureActivated(properties As SPFeatureReceiverProperties) Try Using site As New SPSite(siteUrl) Using web As SPWeb = site.OpenWeb(webUrl) ' Reference the lists. Dim announcementsList As SPList = web.Lists("Announcements") ' Add a new announcement to the Announcements list. Dim listItem As SPListItem = announcementsList.Items.Add() listItem("Title") = "Activated Feature: " & Convert.ToString(properties.Definition.DisplayName) listItem("Body") = Convert.ToString(properties.Definition.DisplayName) & " was activated on: " & DateTime.Now.ToString() ' Waste some time. TimeCounter() ' Update the list. listItem.Update() End Using End Using Catch e As Exception Console.WriteLine("Error: " & e.ToString()) End Try End Sub
public override void FeatureActivated(SPFeatureReceiverProperties properties) { try { using (SPSite site = new SPSite(siteUrl)) { using (SPWeb web = site.OpenWeb(webUrl)) { // Reference the lists. SPList announcementsList = web.Lists["Announcements"]; // Add a new announcement to the Announcements list. SPListItem listItem = announcementsList.Items.Add(); listItem["Title"] = "Activated Feature: " + properties.Definition.DisplayName; listItem["Body"] = properties.Definition.DisplayName + " was activated on: " + DateTime.Now.ToString(); // Waste some time. TimeCounter(); // Update the list. listItem.Update(); } } } catch (Exception e) { Console.WriteLine("Error: " + e.ToString()); } }
Dodaj następującą procedurę poniżej FeatureActivated procedury.
Public Sub TimeCounter() Dim result As Integer For i As Integer = 0 To 99999 For j As Integer = 0 To 9999 result = i * j Next j Next i End Sub
public void TimeCounter() { for (int i = 0; i < 100000; i++) { for (int j = 0; j < 10000; j++) { int result = i * j; } } }
W Solution Explorer, otwórz menu skrótów dla projektu (ProfileTest), a następnie wybierz polecenie Właściwości.
W Właściwości okno dialogowe Wybierz SharePoint kartę.
W Konfiguracji wdrażania usługi Active listy, wybierz opcję Nr Aktywacja.
Wybranie tej konfiguracji wdrażania umożliwia ręcznie uaktywnić funkcję później w programie SharePoint.
Zapisz projekt.
Konfigurowanie i wdrażanie aplikacji programu SharePoint
Teraz, że projekt programu SharePoint jest gotowy, skonfigurować i wdrożyć go na serwer programu SharePoint.
Do konfigurowania i wdrażania aplikacji programu SharePoint
Na analizy menu, wybierz polecenie Kreatora uruchamiania wydajności.
Na stronie jednego z Wydajność kreatora, pozostaw metody profilowania jako Procesora pobierania próbek i wybierz polecenie Dalej przycisk.
Inne metody profilowania służy w bardziej zaawansowane profilowania sytuacje.Aby uzyskać więcej informacji, zobacz Opis metod profilowania.
Na stronie dwóch z Wydajność kreatora, pozostaw miejsce docelowe profil jako ProfileTest i wybierz polecenie Dalej przycisk.
Jeśli rozwiązanie ma wiele projektów, pojawiają się na tej liście.
Na stronie trzy Wydajność kreatora, jasne Włączyć profilowanie interakcji warstwy pole wyboru, a następnie wybierz Dalej przycisk.
Funkcja profilowania interakcji warstwy (TIP) jest użyteczna do pomiaru wydajności aplikacji, że kwerendy baz danych i pokazano, ile razy strona sieci web jest wnioskiem.Dlatego, że dane nie jest wymagane na przykład, firma Microsoft nie włączyć tę funkcję.
Na stronie cztery z Wydajność kreatora, pozostaw uruchomić profilowania po zakończeniu pracy Kreatora zaznaczone pole wyboru, a następnie wybierz wykończenie przycisk.
Kreator umożliwia aplikacji profilowania na serwerze, wyświetla Explorer wydajności okna, a następnie buduje, wdraża i uruchomi aplikację programu SharePoint.
Uruchomienie aplikacji SharePoint
Włączanie funkcji w programie SharePoint, wyzwalając FeatureActivation uruchomić kod zdarzenia.
Do uruchomienia aplikacji SharePoint
Otwórz w programie SharePoint, Akcje witryny menu, a następnie wybierz polecenie Ustawienia witryny.
W Akcje witryny listy, wybierz opcję Funkcje witryny Zarządzanie link.
W Funkcje listy, wybierz opcję Activate przycisk obok ProfileTest Feature1.
Jest pauza w tym, z powodu bezczynności pętli wywoływana FeatureActivated funkcji.
Na Szybkie uruchamianie paska, wybierz zawiera listę , a następnie w zawiera listę wybierz ogłoszenia.
Należy zauważyć, że nowy anons został dodany do listy, stwierdzające, że funkcja została aktywowana.
Zamknąć witrynę programu SharePoint.
Po zamknięciu programu SharePoint, profiler tworzy i wyświetla raport profilowania próbki i zapisuje go jako plik .vsp w ProfileTest folderu projektu.
Przeglądanie i interpretacji wyników profilowania
Teraz, że ma uruchomić i profilowane aplikacji programu SharePoint, należy wyświetlić wyniki testu.
Aby wyświetlić i interpretacji wyników profilowania
W Funkcje robi najbardziej indywidualnych pracy sekcji raportu profilowania próbki, należy zauważyć, że TimeCounter jest w górnej części listy.
Ta lokalizacja wskazuje, że TimeCounter był jedną z funkcji z największą liczbą próbek, co oznacza, jest jednym z największych wąskie gardła wydajności w aplikacji.Ta sytuacja nie jest Zaskakujące, jednak, ponieważ był celowo zaprojektowane w ten sposób, w celach demonstracyjnych.
W Funkcje robi najbardziej indywidualnych pracy sekcji, wybierz opcję ProcessRequest łącze, aby wyświetlić rozkład kosztów dla ProcessRequest funkcji.
W funkcji o nazwie sekcji dla ProcessRequest, należy zauważyć, że FeatureActiviated funkcja jest wymieniony jako najbardziej kosztowne wywołana funkcja.
W funkcji o nazwie sekcji, wybierz opcję FeatureActivated przycisk.
W funkcji o nazwie sekcji dla FeatureActivated, TimeCounter funkcja jest wymieniony jako najbardziej kosztowne wywołana funkcja.W Widok Kod funkcji okienko, wyróżnione kod (TimeCounter) jest punkt aktywny i wskazuje, gdzie jest potrzebne korekty.
Zamknij próbki profilowania raportu.
Aby wyświetlić raport ponownie w dowolnym czasie, otwórz plik .vsp w Explorer wydajności okna.
Ustalenie kodu i Reprofiling aplikacji
Teraz, że został zidentyfikowany punkt aktywny funkcji w aplikacji programu SharePoint, można go naprawić.
Aby naprawić ten błąd i reprofile aplikacji
W funkcji kodu odbiorcy zdarzeń, w komentarz TimeCounter wywołanie metody FeatureActivated Aby zapobiec jego miano.
Zapisz projekt.
W Explorer wydajności, otwórz folder z obiektami docelowymi, a następnie wybierz ProfileTest węzła.
Na Explorer wydajności pasek narzędzi, w działania tab, wybrać Uruchomić profilowania przycisk.
Jeśli chcesz zmienić właściwości profilowania przed reprofiling aplikacji, wybierz polecenie Kreatora uruchamiania wydajności zamiast przycisku.
Postępuj zgodnie z instrukcjami w uruchamiania aplikacji SharePoint sekcja wcześniej w tym temacie.
Funkcji należy aktywować znacznie szybciej teraz, że wywołanie pętlę bezczynności zostało wyeliminowane.Przykładowy raport profilowania powinno odzwierciedlać.
Zobacz też
Koncepcje
Analizowanie wydajności aplikacji za pomocą narzędzia profilowania
Profilowanie wydajności narzędzia sesji, omówienie
Przewodnik początkujących Profilowanie wydajności