Udostępnij za pośrednictwem


Konfigurowanie wartości recyklingu aplikacji COM+

Poniższe metody umożliwiają skonfigurowanie wartości recyklingu aplikacji dla aplikacji COM+.

Notatka

Nie można odzyskać aplikacji COM+ skonfigurowanej do uruchamiania jako usługa systemu Windows. Ponadto aplikacje biblioteki mają właściwości recyklingu i buforowania procesu hosta.

 

Narzędzie administracyjne usług komponentów

Aby skonfigurować ponowne uruchamianie aplikacji dla aplikacji COM+, wykonaj następujące kroki:

  1. W drzewie konsoli narzędzia administracyjnego Usługi składników kliknij prawym przyciskiem myszy aplikację serwera COM+, którą chcesz ponownie uruchomić, a następnie kliknij Właściwości.

  2. Na karcie buforowania & recyklingu wprowadź wartości limitu okresu istnienia (w minutach), limit pamięci (KB)limit czasu wygaśnięcia (minuty)limitu wywołańi limit aktywacji, w zależności od kryteriów, których chcesz użyć.

    • limit okresu istnienia wskazuje maksymalną liczbę minut, przez które proces może zostać uruchomiony przed jego przetworzeniem. Prawidłowy zakres wynosi od 0 do 30 240 minut (21 dni). Domyślna liczba minut to 0.
    • limit pamięci wskazuje maksymalną ilość pamięci procesu (w kilobajtach) przed odtworzeniem procesu. Jeśli użycie pamięci procesu przekracza określoną liczbę przez ponad jedną minutę, proces jest restartowany. Prawidłowy zakres wynosi od 0 do 1048 576 KB, a domyślna ilość pamięci to 0 KB.
    • Czas wygaśnięcia wskazuje liczbę minut oczekiwania przed wymuszonym zamknięciem, aby umożliwić zwolnienie wszystkich zewnętrznych odwołań do obiektów w procesie. Prawidłowy zakres to od 1 do 1440 minut (24 godziny), a domyślny limit czasu wygaśnięcia wynosi 15 minut. Ta wartość jest używana tylko wtedy, gdy jest już określona, że proces zostanie poddany recyklingu na podstawie innych kryteriów.
    • limit wywołań wskazuje maksymalną liczbę wywołań, które obiekty aplikacji mogą zaakceptować przed odtworzeniem procesu. Prawidłowy zakres to od 0 do 1048 576 wywołań, a domyślna liczba wywołań to 0.
    • limit aktywacji wskazuje maksymalną liczbę aktywacji obiektów aplikacji do zaakceptowania przed odtworzeniem procesu. Prawidłowy zakres to od 0 do 1048 576 aktywacji, a domyślna liczba aktywacji to 0.

    Notatka

    Gdy limit okresu istnienia , limit pamięci , limit wywołań lub wartość limitu aktywacji jest ustawiona na 0 (wartość domyślna), recykling aplikacji dla tego kryterium jest wyłączony. Gdy wszystkie cztery z tych kryteriów są ustawione na 0, recykling aplikacji dla wybranej aplikacji jest wyłączony.

     

  3. Kliknij przycisk OK.

Visual Basic

Poniższa funkcja w programie Microsoft Visual Basic pokazuje, jak ustawić wartości recyklingu aplikacji dla dowolnej wybranej aplikacji serwera COM+. Aby używać go z poziomu języka Visual Basic, dodaj odwołanie do biblioteki typów administracyjnych COM+ .

Function SetMyApplicationRecycling( _
  strApplicationName As String, _
  lngLifetimeLimit As Long, _
  lngMemoryLimit As Long, _
  lngCallLimit As Long, _
  lngActivationLimit As Long, _
  lngExpirationTimeout As Long _
) As Boolean  ' Return False if any errors occur.

    SetMyApplicationRecycling = False  ' Initialize the function.
    On Error GoTo My_Error_Handler  ' Initialize error handling.

    Dim objCatalog As COMAdmin.COMAdminCatalog
    Dim objAppCollection As COMAdmin.COMAdminCatalogCollection
    Dim objApplication As COMAdmin.COMAdminCatalogObject
    Set objCatalog = CreateObject("COMAdmin.COMAdminCatalog")
    Set objAppCollection = objCatalog.GetCollection("Applications")
    objAppCollection.Populate
    For Each objApplication In objAppCollection
        With objApplication
            If .Name = strApplicationName Then
                .Value("RecycleLifetimeLimit") = lngLifetimeLimit
                .Value("RecycleMemoryLimit") = lngMemoryLimit
                .Value("RecycleCallLimit") = lngCallLimit
                .Value("RecycleActivationLimit") = lngActivationLimit
                .Value("RecycleExpirationTimeout") = lngExpirationTimeout
                MsgBox strApplicationName & _
                  " recycling values are now set to the following: " & _
                  vbNewLine & vbNewLine & _
                  "Lifetime Limit = " & lngLifetimeLimit & vbNewLine & _
                  "Memory Limit = " & lngMemoryLimit & vbNewLine & _
                  "Call Limit = " & lngCallLimit & vbNewLine & _
                  "Activation Limit = " & lngActivationLimit & vbNewLine _
                  & "Expiration Timeout = " & lngExpirationTimeout
                Exit For
            End If
        End With
    Next
    objAppCollection.SaveChanges
    Set objApplication = Nothing
    Set objAppCollection = Nothing
    Set objCatalog = Nothing
    SetMyApplicationRecycling = True  ' Successful end to procedure
    Exit Function
    
My_Error_Handler:  ' Replace with specific error handling.
    MsgBox "Error # " & Err.Number & " (Hex: " & Hex(Err.Number) _
      & ")" & vbNewLine & Err.Description
    Set objApplication = Nothing
    Set objAppCollection = Nothing
    Set objCatalog = Nothing
End Function

Aby użyć funkcji, podaj wartość ciągu dla nazwy aplikacji i wartości całkowite dla żądanych ustawień recyklingu aplikacji. Poniższy kod języka Visual Basic pokazuje, jak ustawić wartość RecycleLifetimeLimit na 5, wartość RecycleMemoryLimit do 10, wartość RecycleCallLimit na wartość 9, RecycleActivationLimit wartość 100, a wartość RecycleExpirationTimeout do 15.

Sub Main()
    If Not SetMyApplicationRecycling("MyApp", 5, 10, 9, 100, 15) Then
        MsgBox "SetMyApplicationRecycling failed."
    End If
End Sub

pojęcia dotyczące recyklingu aplikacji COM+