AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi HTTPServer mit IPv6 langsam
Thema durchsuchen
Ansicht
Themen-Optionen

HTTPServer mit IPv6 langsam

Ein Thema von paresy · begonnen am 23. Feb 2010 · letzter Beitrag vom 24. Feb 2010
 
paresy

Registriert seit: 24. Aug 2004
Ort: Lübeck
105 Beiträge
 
Delphi 2007 Professional
 
#1

HTTPServer mit IPv6 langsam

  Alt 23. Feb 2010, 11:45
Version:
Delphi 2007 mit Indy SVN (rev. 4065), Vista/Windows7 getestet

Problem:
Sofern IPv6 auf dem System aktiviert ist und der User per Hostnamen (z.B. ipsvm) auf dem Server zugreifen will, gibt es eine Verzögerung um 1 Sekunde pro Request. Direkter Zugriff (z.B. 127.0.0.1) funktioniert problemlos. Nachstellen kann man das am einfachsten mit Chrome, der für alle Anfragen eine Zeitleiste angibt (siehe Screenshot).

Workaround für Firefox ist das deaktiveren von IPv6 DNS Lookups oder deaktivieren von IPv6 auf allen Netzwerkadaptern.

Demo Programm:
Form + HTTPServer (Active = True)

Delphi-Quellcode:
procedure TForm4.IdHTTPServer1CommandGet(AContext: TIdContext;
  ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
begin

 if ARequestInfo.Document = '/then
  begin
   AResponseInfo.ResponseNo := 200;
   AResponseInfo.ContentText := '<html><head><link rel="stylesheet" type="text/css" href="/a.css"/>' +
                                 '<link rel="stylesheet" type="text/css" href="/b.css"/>' +
                                 '<link rel="stylesheet" type="text/css" href="/c.css"/>' +
                                 '<link rel="stylesheet" type="text/css" href="/d.css"/>' +
                                 '<link rel="stylesheet" type="text/css" href="/e.css"/>' +
                                 '<link rel="stylesheet" type="text/css" href="/f.css"/>' +
                                 '<link rel="stylesheet" type="text/css" href="/g.css"/>' +
                                 '<link rel="stylesheet" type="text/css" href="/h.css"/>' +
                                 '<link rel="stylesheet" type="text/css" href="/i.css"/>' +
                                 '<link rel="stylesheet" type="text/css" href="/j.css"/></head><body>asd</body></html>';
  end
 else
  AResponseInfo.ResponseText := 'asd';

end;
Es wäre super, falls jemand einen Tipp hat, was ich machen muss, damit das Problem nicht auftritt!?

Grüße,
paresy
Angehängte Grafiken
Dateityp: png latency_128.png (110,8 KB, 11x aufgerufen)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:23 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz