Aracılığıyla paylaş


BITS IIS Uzantısı Özellikleri

Arka Plan Akıllı Aktarım Hizmeti (BITS),karşıya yükleme işlerini desteklemekIIS'yi genişletmek için bir ISAPI kullanır. Aşağıdaki tabloda BITS'nin sanal dizin bileşeni için IIS metatabanı'na eklediği özellikler listelenmiştir. BITS, dosyaların nasıl karşıya yükleneceğini belirlemek için bu özellikleri kullanır. BITSUploadEnableddışında BITS IIS uzantısı özellikleri devralınabilir.

Mülk Açıklama
BITSUploadEnabledVeri türü: Boole
BITS karşıya yüklemelerinin sanal dizinde etkinleştirilip etkinleştirilmediğini gösterir. Ayar yoksa veya 0 ise, BITS karşıya yüklemeleri devre dışı bırakılır.
Bu salt okunur bir özelliktir. Bu özelliği ayarlamak için, IBITSExtensionSetup arabiriminin EnableBITSUploadsveya DisableBITSUploads yönteminiçağırın.
BITSSessionTimeoutVeri türü: DWORD
Dosyanın karşıya yüklenmesinde ilerleme sağlanmazsa bağlantının sürdürüldüğü saniye sayısı; ilerleme kaydedildiğinde zamanlayıcı sıfırlanır. Zaman aşımına ulaşılırsa BITS bağlantıyı kapatır ve oturumla ilişkili verileri temizler.
Yanıt yalnızca kullanıcı oturum açtığında ve ağa bağlandığında indirildiğinden, kısa oturum zaman aşımı ayarlamak karşıya yükleme-yanıt işleri için sorun olabilir. Yanıt indirilmeden önce oturumun zaman aşımına uğraması mümkündür; bu durumda oturum iptal edilir ve yanıt dosyası silinir.
Bu ayardan bağımsız olarak JobInactivityTimeout Grup İlkesi değerine (varsayılan değer 90 gündür) ulaşılırsa BITS'nin işi iptal ettiğini unutmayın.
Varsayılan değer 1.209.600 'dir (14 gün).
BITSMaximumUploadSizeVeri türü: Dize
İş başına karşıya yüklenebilecek en fazla bayt sayısı. Ondalık dize olarak en fazla bayt sayısını belirtin; dize değeri "1844674407370955" değerinden küçük veya buna eşit olmalıdır. Boş bir dize, "1844674407370955" belirtilmesiyle aynıdır.
Varsayılan değer boş bir dizedir.
Not: IIS 7'de varsayılan karşıya yükleme sınırı 30 milyon bayttır. BITSMaximumUploadSize özelliğinin değeri IIS sınırını aşamaz. IIS varsayılanını değiştirme hakkında ayrıntılar ve bilgi için bkz. KB942074.
BITSServerNotificationTypeVeri türü: DWORD
Karşıya yükleme dosyasının sunucu uygulamasına nasıl gönder yapılacağını belirtir. Olası değerler şunlardır: 0, 1 ve 2.
0 değeri, dosyanın sunucu uygulamasına gönderilmediği anlamına gelir. BITS, sunucu uygulamasına bildirmeden karşıya yükleme dosyasını uzak ad (dosya eklediğinizde belirtilen uzak ad) dizinine yerleştirir. Dosya şu anda hedef dizinde varsa, karşıya yükleme dosyasıyla değiştirilir.
1 değeri, BITS'nin karşıya yükleme dosyasının konumunu BITSServerNotificationURL özelliğinde belirtilen sunucu uygulamasına geçirdiği anlamına gelir. Sunucu uygulaması dosyayı işler ve gerekirse bir yanıt dosyası oluşturur. Varsayılan olarak BITS, sunucu uygulamasından yanıt aldıktan sonra karşıya yükleme ve yanıt dosyalarını sunucudan kaldırır. BITS'nin karşıya yükleme dosyasını işteki uzak dosya adı tarafından belirtilen konuma kopyalamasını sağlamak için, yanıtınıza BITS-Copy-File-To-Destination üst bilgisini ekleyin. Üst bilgiyi eklemezseniz ve karşıya yükleme ve yanıt dosyalarını kaydetmek istiyorsanız, yanıtlamadan önce karşıya yükleme ve yanıtlama dosyalarını yeni bir konuma kopyalamanız gerekir.
2 değeri, BITS'nin isteğin gövdesindeki karşıya yükleme dosyasını BITSServerNotificationURL özelliğinde belirtilen sunucu uygulamasına geçirdiği anlamına gelir. Sunucu uygulaması dosyayı işler ve gerekirse yanıtın gövdesine geri geçirir.
İstek ve yanıt üst bilgileriyle ilgili ayrıntılar için bkz. Sunucu Uygulamaları için Bildirim Protokolü.
Sunucu uygulaması beş dakika içinde bir yanıt sağlamalıdır. Sunucu uygulaması beş dakika içinde yanıt vermezse, iş geçici hata durumuna girer. yeniden deneme gecikmesi sona erdiğinde, BITS sunucusu sunucu uygulamasına başka bir bildirim gönderir (yinelenen bildirimleri işlemek için sunucu uygulaması yazılmalıdır).BITS 1.5: Bildirim zaman aşımı 30 saniyedir.

Varsayılan değer 0'dır.
BITSServerNotificationURLVeri türü: Dize
Opsiyonel. BITS'nin karşıya yükleme dosyasını gönderdiği sunucu uygulamasının URL'sini içerir. BITSServerNotificationType özelliğinin değeri 1 veya 2 ise bir URL belirtmeniz gerekir. URL, null sonlandırıcı dahil olmak üzere 2.200 karakterle sınırlıdır. URL bir HTTP URL'si olmalıdır; BITS, HTTPS bildirim URL'lerini desteklemez.
URL karşıya yükleme sırasında kullanılamıyorsa BITS, bildirim URL'si var olana veya yeniden deneme süresi dolana kadar karşıya yüklemeyi yeniden dener.
İşte belirtilen uzak ad bir sorgu dizesi içeriyorsa, sorgu dizesinin belirttiğiniz URL'ye eklendiğini unutmayın. Örneğin, uzak ad https://myserver/myvdir/subdir/file.asp?ACCOUNT=86433 içeriyorsa ve BITSServerNotificationURL ayarını https://otherserver/myvdir2/bag.aspolarak belirtirseniz, BITS gönderilerinin https://otherserver/myvdir2/bag.asp?ACCOUNT=86433. URL'si
Özgün URL https://myserver/myvdir/file.txt ve bildirim URL'si myasp.asp ise, BITS bildirim URL'si olarak http//myserver/myvdir/myasp.asp kullanır.
URL'nin yol ve dosya adı bölümü hem istemci hem de sunucudaki kod sayfasında ortak olmayan Unicode karakterler içeriyorsa, URL çevirisi sunucuda başarısız olur ve BITS işi hata durumuna yerleştirilir. URL'nin sunucu bölümü Unicode karakterler içeriyorsa, Uluslararası Etki Alanı Adları (IDN) kullanarak sunucu bölümünü kodlamanız gerekir.
BITSHostIdVeri Türü: Dize
Sunucu yüklemesi paylaşılan depolama kullanmayan bir web grubuysa bu özelliği ayarlayın.
Karşıya yükleme işlemi kesildikten sonra yeniden bağlanılacak sunucunun adını veya IP adresini belirtin. Genellikle, yapılandırdığınız sunucunun adını belirtirsiniz. URL, null sonlandırıcı dahil olmak üzere 300 karakterle sınırlıdır.
Bu özelliği belirtmezseniz ve karşıya yükleme işlemi kesintiye uğrarsa, BITS işi grubundaki başka bir sunucuda sürdürebilir. Ancak, önceki sunucu kesintiden önceki kısmi karşıya yükleme dosyasını içerir. BITSSessionTimeout süresi dolduktan sonra BITS kısmi dosyayı kaldırır.
Not: Sertifikaya küme adını ve tek tek sunucu adlarını eklemediğiniz sürece, SSL Ağ Yükü Dengeleme (NLB) kullanan bir web grubunda veya birden çok IP adresine sahip DNS adlarında kullanılıyorsa BITSHostId özelliğini kullanmayın. (BITSHostId belirtilen sunucu adı sertifikadaki ortak adla eşleşmiyorsa, iş başarısız olur.) Bunun yerine NLB için Benşim parametresini Tek olarak ayarlayarak istemcinin gelecekte aynı sunucuyla iletişim kurmasını sağlayın.
BITSHostIdFallbackTimeoutVeri türü: DWORD
BITS istemcisinin, işin uzak dosya adında belirtilen ana bilgisayar adına dönmeden önce BITSHostId sunucu adına yeniden bağlanmaya çalıştığı saniye sayısı. Zamanlayıcı, BITS BITSHostId sunucusuna bağlanamadığında başlar. İstemci sunucuya başarıyla bağlandığında zamanlayıcı sıfırlanır.
İşin ilerleme zaman aşımı değeri olmadığını unutmayın (bkz. IBackgroundCopyJob::SetNoProgressTimeout) bu zaman aşımı değerinden uzun olmalıdır. Aksi takdirde, geri dönüş zaman aşımı değeri sona ermeden iş başarısız olur.
Bu özelliği yalnızca BITSHostId özelliğini ayarlarsanız ayarlayın.
Varsayılan değer 86.400 'dir (1 gün).
BITSAllowOverwritesVeri türü: Tamsayı
Karşıya yükleme dosyasının aynı ada sahip mevcut bir dosyanın üzerine yazıp yazamayacağını gösterir. BITSAllowOverwrites 1 ise, karşıya yükleme dosyası var olan dosyanın üzerine yazar.
Varsayılan değer 0'dır.
IIS 6.0 : Bu özelliği yalnızca bir betikten ayarlayabilirsiniz; IIS kullanıcı arabirimindeki BITS uzantısı özellikleri sayfasını kullanarak ayarlayamazsınız.

BITSCleanupUseDefaultVeri türü: Boole
Temizleme görevinin varsayılan zamanlamaları kullanıp kullanmadığını gösterir. Temizleme görevi varsayılan olarak 12 saatte bir çalıştırılır.
Varsayılan zamanlamayı kullanmak için 1 olarak ayarlayın; aksi takdirde, bir zamanlama belirtmek için 0.
Zamanlama belirtmek için BITSCleanupCount kullanın ve BITSCleanupUnits özelliklerini.
Temizleme görevi, oturum zaman aşımı süresi içinde değiştirilmemiş işleri silerek sanal dizini temizler (bkz. BITSSessionTimeout).
Varsayılan değer 1'dir ve varsayılan zamanlamayı kullanır.
IIS 6.0: Desteklenmiyor.
BITSCleanupCountVeri türü: Tamsayı
Temizleme görevini çalıştırmak arasında beklenme aralığını belirtir. Belirtebileceğiniz aralık, birimlere bağlıdır. Olası aralık değerleri için BITSCleanupUnits özelliğine bakın.
BITSCleanupUseDefault 0 ise bu özellik yoksayılır.
IIS 6.0: Desteklenmiyor.

BITSCleanupUnitsVeri türü: Tamsayı
BITSCleanupCount özelliğinde belirtilen temizleme aralığı için birimleri belirtir. BITSCleanupUseDefault 0 ise bu özellik yoksayılır.
Olası değerler şunlardır:
0: Birimler dakikadır. Olası değerler 1 ile 60 aralığındadır.
1: Birimler saatlerdir. Varsayılan değer budur. Olası değerler 1 ile 24 aralığındadır.
2: Birimler günlerdir. Olası değerler 1 ile 360 aralığındadır.

IIS 6.0: Desteklenmiyor.

BITSNumberOfSessionsLimitVeri türü: Tamsayı
Bir kullanıcı için eşzamanlı olarak var olabilecek karşıya yükleme oturumlarının sayısını sınırlar. Bir kullanıcının oturum sayısı bu sınırdan fazlaysa, temizleme görevi çalıştırıldığında kullanıcı için oturum sayısı sınırın altına inene kadar en son oturumları siler.
Varsayılan değer 50 oturumdur.
IIS 6.0: Desteklenmiyor.

BITSSessionLimitEnableVeri türü: Boole
BITS'nin kullanıcı başına karşıya yükleme oturumlarının sayısını sınırlayıp sınırlamadığını gösterir. Ayar yoksa veya 0 ise, sınır devre dışı bırakılır.
Sınırı belirtmek için BITSNumberOfSessionsLimit özelliğini ayarlayın.
Varsayılan değer 1'dir.
IIS 6.0: Desteklenmiyor.

Aşağıdaki örnekte, Windows Betik Konağı kullanılarak BITS IIS uzantısı özelliklerinin nasıl ayarlanacağı gösterilmektedir. Sanal dizin uzak bir paylaşımı işaret ederse, UNCUserName ayarlayın ve IIS özelliklerini UNCPassword.

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 );