Udostępnij za pośrednictwem


Właściwości rozszerzenia usług IIS usługi BITS

Usługa inteligentnego transferu w tle (BITS) używa interfejsu ISAPI w celu rozszerzenia usług IIS w celu obsługi zadań przekazywania . W poniższej tabeli wymieniono właściwości, które usługa BITS dodaje do metabazy usług IIS dla składnika katalogu wirtualnego. Usługa BITS używa tych właściwości do określenia sposobu przekazywania plików. Właściwości rozszerzenia USŁUG IIS usługi BITS są dziedziczone, z wyjątkiem BITSUploadEnabled.

Własność Opis
BITSUploadEnabled Typ danych: wartość logiczna
Wskazuje, czy przekazywanie usługi BITS jest włączone w katalogu wirtualnym. Jeśli ustawienie nie jest obecne lub ma wartość 0, przekazywanie usługi BITS jest wyłączone.
Jest to właściwość tylko do odczytu. Aby ustawić tę właściwość, wywołaj metodę EnableBITSUploads lub DisableBITSUploads metody interfejsu IBITSExtensionSetup.
BITSSessionTimeoutTyp danych: DWORD
Liczba sekund, w których połączenie jest utrzymywane, jeśli nie zostanie wykonany postęp przekazywania pliku; czasomierz jest resetowany po osiągnięciu postępu. Usługa BITS zamyka połączenie, jeśli osiągnięto limit czasu i czyści dane skojarzone z sesją.
Ustawienie krótkiego limitu czasu sesji może być problemem z zadaniami przekazywania odpowiedzi, ponieważ odpowiedź jest pobierana tylko wtedy, gdy użytkownik jest zalogowany i połączony z siecią. Istnieje możliwość przekroczenia limitu czasu sesji przed pobraniem odpowiedzi, w tym przypadku sesja zostanie anulowana i plik odpowiedzi zostanie usunięty.
Pamiętaj, że usługa BITS anuluje zadanie, jeśli zostanie osiągnięty JobInactivityTimeout wartość zasad grupy (wartość domyślna to 90 dni), niezależnie od tego ustawienia.
Wartość domyślna to 1209 600 (14 dni).
BITSMaximumUploadSizeTyp danych: ciąg
Maksymalna liczba bajtów, które można przekazać na zadanie. Określ maksymalną liczbę bajtów jako ciąg dziesiętny; wartość ciągu musi być mniejsza lub równa "1844674407370955". Pusty ciąg jest taki sam jak określenie "1844674407370955".
Wartość domyślna to pusty ciąg.
Uwaga: w usługach IIS 7 domyślny limit przekazywania wynosi 30 milionów bajtów. Wartość właściwości BITSMaximumUploadSize nie może przekroczyć limitu usług IIS. Aby uzyskać szczegółowe informacje na temat zmiany domyślnej usługi IIS, zobacz KB942074.
BITSServerNotificationTypeTyp danych: DWORD
Określa sposób wysyłania pliku przekazywania do aplikacji serwera. Możliwe wartości to: 0, 1 i 2.
Wartość 0 oznacza, że plik nie jest wysyłany do aplikacji serwera. Usługa BITS umieszcza plik przekazywania w katalogu określonym w nazwie zdalnej (nazwa zdalna określona podczas dodawania pliku do zadania) bez powiadamiania aplikacji serwera. Jeśli plik obecnie istnieje w katalogu docelowym, zostanie zastąpiony plikiem przekazywania.
Wartość 1 oznacza, że usługa BITS przekazuje lokalizację pliku przekazywania do aplikacji serwera określonej w właściwości BITSServerNotificationURL. Aplikacja serwera przetwarza plik i w razie potrzeby generuje plik odpowiedzi. Domyślnie usługa BITS usuwa pliki przekazywania i odpowiedzi z serwera po odebraniu odpowiedzi z aplikacji serwera. Aby usługa BITS skopiowała plik przekazywania do lokalizacji określonej przez nazwę pliku zdalnego w zadaniu, dołącz w odpowiedzi nagłówek BITS-Copy-File-To- Destination. Jeśli nie dołączysz nagłówka i chcesz zapisać pliki przekazywania i odpowiedzi, musisz skopiować pliki przekazywania i odpowiadania na nową lokalizację przed udzieleniem odpowiedzi.
Wartość 2 oznacza, że usługa BITS przekazuje plik przekazywania w treści żądania do aplikacji serwera określonej w właściwości BITSServerNotificationURL. Aplikacja serwera przetwarza plik i przekazuje odpowiedź w treści odpowiedzi, jeśli jest to konieczne.
Aby uzyskać szczegółowe informacje na temat nagłówków żądań i odpowiedzi, zobacz Notification Protocol for Server Applications.
Aplikacja serwera musi podać odpowiedź w ciągu pięciu minut. Jeśli aplikacja serwera nie odpowiada w ciągu pięciu minut, zadanie przechodzi w stan błędu przejściowego. Gdy opóźnienie ponawiania próby wygaśnie, serwer usługi BITS wyśle kolejne powiadomienie do aplikacji serwera (aplikacja serwera powinna zostać zapisana w celu obsługi zduplikowanych powiadomień).BITS 1.5: Limit czasu powiadomienia wynosi 30 sekund.

Wartość domyślna to 0.
BITSServerNotificationURLTyp danych: ciąg
Fakultatywny. Zawiera adres URL aplikacji serwera, do której usługa BITS publikuje plik przekazywania. Należy określić adres URL, jeśli wartość właściwości BITSServerNotificationType wynosi 1 lub 2. Adres URL jest ograniczony do 2200 znaków, nie w tym terminatora o wartości null. Adres URL musi być adresem URL HTTP; Usługa BITS nie obsługuje adresów URL powiadomień HTTPS.
Jeśli adres URL nie jest dostępny w momencie przekazania, usługa BITS ponowi próbę przekazania, dopóki adres URL powiadomienia nie istnieje lub do momentu wygaśnięcia okresu ponawiania prób.
Należy pamiętać, że jeśli nazwa zdalna określona w zadaniu zawiera ciąg zapytania, ciąg zapytania jest dołączany do określonego adresu URL. Jeśli na przykład nazwa zdalna zawiera https://myserver/myvdir/subdir/file.asp?ACCOUNT=86433 i określisz ustawienie BITSServerNotificationURL jako https://otherserver/myvdir2/bag.asp, adres URL, do którego wpisy usługi BITS są https://otherserver/myvdir2/bag.asp?ACCOUNT=86433.
Jeśli oryginalny adres URL jest https://myserver/myvdir/file.txt, a adres URL powiadomienia jest myasp.asp, usługa BITS używa adresu URL http//myserver/myvdir/myasp.asp jako adresu URL powiadomienia.
Jeśli część ścieżki i nazwy pliku adresu URL zawiera znaki Unicode, które nie są wspólne dla strony kodowej na kliencie i serwerze, tłumaczenie adresu URL zakończy się niepowodzeniem na serwerze, a zadanie USŁUGI BITS zostanie umieszczone w stanie błędu. Jeśli część adresu URL serwera zawiera znaki Unicode, należy zakodować część serwera przy użyciu międzynarodowych nazw domen (IDN).
BITSHostId typ danych: ciąg
Ustaw tę właściwość, jeśli instalacja serwera jest farmą sieci Web, która nie korzysta z magazynu udostępnionego.
Określ nazwę serwera lub adres IP serwera do ponownego nawiązania połączenia po przerwaniu procesu przekazywania. Zazwyczaj określa się nazwę konfigurowanego serwera. Adres URL jest ograniczony do 300 znaków, nie w tym terminatora o wartości null.
Jeśli nie określisz tej właściwości i proces przekazywania zostanie przerwany, możliwe, że usługa BITS wznowi zadanie na innym serwerze w farmie. Jednak poprzedni serwer nadal zawiera częściowy plik przekazywania przed przerwą. Usługa BITS usuwa częściowy plik po wygaśnięciu BITSSessionTimeout.
Uwaga: Nie należy używać właściwości BITSHostId, jeśli protokół SSL jest używany w farmie sieci Web korzystającej z równoważenia obciążenia sieciowego (NLB) lub nazw DNS z wieloma adresami IP, chyba że dołączysz nazwę klastra i poszczególne nazwy serwerów w certyfikacie. (Jeśli nazwa serwera określona w BITSHostId nie jest zgodna z nazwą pospolitą certyfikatu, zadanie zakończy się niepowodzeniem. Zamiast tego w przypadku równoważenia obciążenia sieciowego ustaw parametr koligacji na pojedynczy, aby upewnić się, że klient komunikuje się z tym samym serwerem w przyszłości.
BITSHostIdFallbackTimeoutTyp danych: DWORD
Liczba sekund, przez które klient usługi BITS próbuje ponownie nawiązać połączenie z BITSHostId nazwę serwera przed przywróceniem nazwy hosta określonej w nazwie pliku zdalnego zadania. Czasomierz rozpoczyna się, gdy usługa BITS nie może nawiązać połączenia z serwerem BITSHostId. Czasomierz jest resetowany, gdy klient pomyślnie nawiązuje połączenie z serwerem.
Należy pamiętać, że wartość limitu czasu braku postępu zadania (zobacz IBackgroundCopyJob::SetNoProgressTimeout) powinna być dłuższa niż ta wartość limitu czasu. Jeśli nie, zadanie zakończy się niepowodzeniem przed wygaśnięciem wartości limitu czasu powrotu.
Ustaw tę właściwość tylko wtedy, gdy ustawisz właściwość BITSHostId.
Wartość domyślna to 86 400 (1 dzień).
BITSAllowOverwritesTyp danych: liczba całkowita
Wskazuje, czy plik przekazywania może zastąpić istniejący plik o tej samej nazwie. Plik przekazywania zastępuje istniejący plik, jeśli BITSAllowOverwrites to 1.
Wartość domyślna to 0.
IIS 6.0: Tę właściwość można ustawić tylko za pomocą skryptu, nie można ustawić jej przy użyciu strony właściwości rozszerzenia USŁUGI BITS w interfejsie użytkownika usług IIS.

BITSCleanupUseDefaultTyp danych: wartość logiczna
Wskazuje, czy zadanie oczyszczania używa domyślnych harmonogramów. Domyślnie zadanie oczyszczania jest uruchamiane co 12 godzin.
Ustaw wartość 1, aby użyć harmonogramu domyślnego; w przeciwnym razie 0, aby określić harmonogram.
Aby określić harmonogram, użyj właściwości BITSCleanupCount i BITSCleanupUnits.
Zadanie oczyszczania czyści katalog wirtualny przez usunięcie zadań, które nie zostały zmodyfikowane w okresie przekroczenia limitu czasu sesji (zobacz BITSSessionTimeout).
Wartość domyślna to 1, używając domyślnego harmonogramu.
iis 6.0: Nieobsługiwane.
BITSCleanupCountTyp danych: liczba całkowita
Określa interwał oczekiwania między uruchomieniem zadania oczyszczania. Interwał, który można określić, zależy od jednostek. Aby uzyskać możliwe wartości interwałów, zobacz właściwość BITSCleanupUnits.
Ta właściwość jest ignorowana, jeśli BITSCleanupUseDefault wynosi 0.
iis 6.0: Nieobsługiwane.

BITSCleanupUnitsTyp danych: liczba całkowita
Określa jednostki interwału oczyszczania określonego we właściwości BITSCleanupCount. Ta właściwość jest ignorowana, jeśli BITSCleanupUseDefault wynosi 0.
Możliwe wartości to:
0: Jednostki to minuty. Możliwe wartości to od 1 do 60.
1: Jednostki są godzinami. Jest to wartość domyślna. Możliwe wartości to od 1 do 24.
2: Jednostki to dni. Możliwe wartości to od 1 do 360.

iis 6.0: Nieobsługiwane.

BITSNumberOfSessionsLimitTyp danych: liczba całkowita
Ogranicza liczbę sesji przekazywania, które mogą istnieć współbieżnie dla użytkownika. Jeśli liczba sesji dla użytkownika jest większa niż ten limit, uruchomienie zadania oczyszczania spowoduje usunięcie najnowszych sesji, dopóki liczba sesji dla użytkownika nie przekroczy limitu.
Wartość domyślna to 50 sesji.
iis 6.0: Nieobsługiwane.

BITSSessionLimitEnableTyp danych: wartość logiczna
Wskazuje, czy usługa BITS ogranicza liczbę sesji przekazywania na użytkownika. Jeśli ustawienie nie jest obecne lub ma wartość 0, limit jest wyłączony.
Aby określić limit, ustaw właściwość BITSNumberOfSessionsLimit.
Wartość domyślna to 1.
iis 6.0: Nieobsługiwane.

W poniższym przykładzie pokazano, jak ustawić właściwości rozszerzenia USŁUG IIS usługi BITS przy użyciu hosta skryptów systemu Windows. Jeśli katalog wirtualny wskazuje udział zdalny, ustaw również UNCUserName i UNCPassword właściwości usług IIS.

if (WScript.Arguments.length < 2)
{
    WScript.Echo("Usage: bitsvdir virtual_directory local_directory");
    WScript.Quit(1);
}

VirtualDirectoryName = WScript.Arguments(0);
LocalDirectoryName = WScript.Arguments(1);

ServerObj = GetObject("IIS://LocalHost/W3SVC/1/ROOT");
VirtualDir = ServerObj.Create("IIsWebVirtualDir", VirtualDirectoryName );

VirtualDir.Path = LocalDirectoryName;
VirtualDir.AppIsolated = 0;
VirtualDir.AccessScript = true;
VirtualDir.AccessRead = false;
VirtualDir.AccessWrite = false;
VirtualDir.SetInfo();

// Set BITS specific IIS configuration settings
VirtualDir.EnableBITSUploads();
VirtualDir.BITSMaximumUploadSize = "4294967296";
VirtualDir.SetInfo();

WScript.Echo( "Created virtual directory " + VirtualDirectoryName + 
              " with a local directory of " + LocalDirectoryName );
WScript.Quit( 0 );