Olet tällä hetkellä offline-tilassa. Internet-yhteyden muodostamista uudelleen odotetaan

HTTP-tiedostonlataaminen kestää kauan

TÄRKEÄÄ: Tässä artikkelissa käsitellään rekisterin muokkaamista. Muista varmuuskopioida rekisteri ennen sen muokkaamista. Varmista myös, että osaat palauttaa rekisterin ongelmatilanteessa. Lisätietoja rekisterin varmuuskopioimisesta, palauttamisesta ja muokkaamisesta saat napsauttamalla seuraavaa artikkelin numeroa, jolloin pääset lukemaan artikkelin Microsoft Knowledge Base -tietokannassa:
256986 Microsoft Windowsin rekisterin kuvaus
Oire
Kun HTTP-tiedostonlataaminen yrittää ladata usean megatavun tiedostoja palvelimeen, toimen tekeminen kestää erittäin kauan.

Huomautus Tämä ongelma on dokumentoitu RFC (Request For Comment) -asiakirjassa 1867, "Form-based File Upload in HTML".
Syy
Tämä ongelma ilmenee, koska oletusarvon mukainen Winsock Send -lähetyspuskuri on 8 kilotavua, joten Internet Explorer lähettää tiedot 8 kilotavun paloina. Tavallisessa verkossa lähetetään noin 80 kilotavua sekunnissa riippumatta verkon kaistanleveydestä.

Saat lisätietoja napsauttamalla seuraavaa artikkelin numeroa, jolloin pääset lukemaan artikkelin Microsoft Knowledge Base -tietokannassa:
214397 Suunnitteluun liittyvät ongelmat - pienten tietosegmenttien lähettäminen TCP-yhteyden välityksellä käyttäen Winsockia (tämä artikkeli saattaa olla englanninkielinen)
Ratkaisu
Voit korjata tämän ongelman määrittämällä Internet Explorerin lisäämään Send-lähetyspuskurin kokoa käyttäessään Winsock-yhteyttä. Tämä parantaa verkon suorituskykyä käytettäessä HTTP-tiedostonlataamismenetelmää. Voit tehdä tämän seuraavasti:

VAROITUS: Rekisterieditorin virheellinen käyttö saattaa aiheuttaa vakavia ongelmia, joiden vuoksi käyttöjärjestelmä on ehkä asennettava uudelleen. Microsoft ei takaa, että virheellisestä Rekisterieditorin käyttämisestä johtuvat ongelmat voidaan ratkaista. Käytät Rekisterieditoria omalla vastuullasi.
  1. Käynnistä Rekisterieditori (Regedt32.exe).
  2. Etsi seuraava rekisteriavain ja napsauta sitä:
    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
  3. Valitse Muokkaa-valikosta Lisää arvo ja lisää seuraava rekisteriarvo:
    Arvon nimi: SocketSendBufferLength
    Tietolaji: REG_DWORD
    Lukujärjestelmä: Kymmenjärjestelmä
    Arvon data: Haluamasi puskurin koko (tavuina)
    Puskurin koon vaihtoehdot:
    16 kilotavun puskuri = 16384
    24 kilotavun puskuri = 24576
    32 kilotavun puskuri = 32768
    40 kilotavun puskuri = 40960
    48 kilotavun puskuri = 49152
    56 kilotavun puskuri = 57344
    64 kilotavun puskuri = 65536
  4. Sulje Rekisterieditori.
Varmista, että testaat kutakin arvoa. Aloita 16 kilotavun puskurista. Kun palvelimeen lataamisen suorituskyky on hyväksyttävällä tasolla, valitse sitä vastaava puskuriarvo.
Tila
Tämä toiminta ei ole virhe.
Enemmän tietoa
Kun käytät tämän artikkelin ongelmanratkaisusta kertovan osan toimia, mikä tahansa WININETAPI HTTPSendRequest -funktiota (dokumentoitu seuraavassa Microsoft Developer Network (MSDN) -Web-sivustossa) käyttävä ohjelma varaa ja pyytää Winsock Send -lähetyspuskuria rekisteriavaimen määrittämällä tavalla.

Lisätietoja HTTPSendRequest-funktiosta on seuraavassa MSDS:n Web-sivustossa:Saat lisätietoja Winsock Send -lähetyspuskurin toiminnasta napsauttamalla seuraavaa artikkelin numeroa, jolloin pääset lukemaan artikkelin Microsoft Knowledge Base -tietokannassa:
214397 Suunnitteluongelmat - tietosegmenttien lähettäminen TCP-yhteyden välityksellä käyttäen Winsockia (tämä artikkeli saattaa olla englanninkielinen)
Ominaisuudet

Artikkelin tunnus: 329781 – Viimeisin tarkistus: 03/05/2007 03:46:00 – Versio: 3.3

  • Microsoft Internet Explorer 5.5
  • Microsoft Internet Explorer 5.5
  • Microsoft Internet Explorer 5.5
  • Microsoft Internet Explorer 5.5
  • Microsoft Internet Explorer 5.01
  • Microsoft Internet Explorer 6.0
  • kbprb KB329781
Palaute