🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: de.comm.software.browser.internet-explorer
Article #1

Re: Website Performance

#1
From: Reini Urban
Date: Thu, 30 Sep 2004 13:04
46 lines
3280 bytes
Hi rich,

Richard Fuchs schrieb:
> Oliver Lindinger wrote:
> 
>> Was ist der Unterschied einer Connection mit "keep-alive" zu einer
>> "close"-connection. Welche Vor- bzw. Nachteile hat man damit?
> 
> urspr�nglich war das http-protokoll so konzipiert, da� ein client 
> (browser) eine connection zum server aufbaut, einen request absetzt, der 
> server dann die antwort zur�ckschickt und die connection dann zugemacht 
> wird. also ein request pro connection, bzw eine connection pro request.
> 
> neuere revisionen des http-protokolls beinhalten das keep-alive 
> protokoll. wenn sich client und server dar�ber einig sind, dies zu 
> verwenden (per "connection: keep-alive") header, wird die connection 
> nach einem request offengehalten und kann f�r einen weiteren request an 
> den selben server verwendet werden.
> 
> voraussetzung daf�r ist aber, da� der server im vorhinein wei�, wie gro� 
> die reply ausfallen wird. diese information mu� n�mlich im header 
> angegeben werden, sonst wei� der client/browser nicht, wann er die 
> gesamten daten gelesen hat und einen weiteren request absetzen kann. 
> cgis geben diese information oft nicht an, deswegen hat der server dann 
> keine andere wahl, als die connection immer zu schliessen.

auch cgi k�nnen header setzen :)
sie k�nnen sich nur schlecht mit dem server unterhalten.
weiter siehe unten.

> soviel mal als prinzipielle erkl�rung dazu. keine ahnung, wie php das 
> als cgi handhabt, aber es w�re zumindest mal ein anhaltspunkt. wenn du 
> es genau wissen willst: installier dir einen sniffer und schau genau 
> mit, wie die browser ihre requests machen.

bei PHP nimmt man entweder den ob_cache handler ("OB" - Output 
buffering), ob_start(), und bevor man die seite zur�ckschickt, berechnet 
man die gr��e in byte, und setzt den length header.
   header("Content-Length: %d", ob_get_length());
   ob_end_flush();

oder man wei� die gr��e in byte schon vorher :)
   header("Content-Length: %d", strlen("$htmlpage"));
-- 
Reini Urban
http://xarch.tu-graz.ac.at/home/rurban/
Technical Details
Message-ID: <415C047B.6020305@x-ray.at>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!news.glorb.com!newsfeed.utanet.at!newscore.univie.ac.at!e-post.inode.at!not-for-mail
References: <4148d8bf$0$25116$3b214f66@aconews.univie.ac.at> <cialv1$ure$2@inti.inka.de> <414996d9$0$11614$3b214f66@aconews.univie.ac.at> <41499e9d$1@e-post.inode.at>

Show Full Headers
Complete Article Headers
X-Google-Thread: 16e5eb,4c6691b3811fabdf
X-Google-Thread: f5443,4c6691b3811fabdf
X-Google-Attributes: gid16e5eb,gidf5443,public
X-Google-Language: GERMAN,ASCII
Message-ID: <415C047B.6020305@x-ray.at>
Date: Thu, 30 Sep 2004 15:04:59 +0200
From: Reini Urban <rurban@x-ray.at>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; de-AT; rv:1.8a3) Gecko/20040817
X-Accept-Language: de, en
MIME-Version: 1.0
Newsgroups: de.comm.software.browser.internet-explorer,at.internet.provider
To: Richard Fuchs <r.fuchs@inode.at>
Subject: Re: Website Performance
References: <4148d8bf$0$25116$3b214f66@aconews.univie.ac.at> <cialv1$ure$2@inti.inka.de> <414996d9$0$11614$3b214f66@aconews.univie.ac.at> <41499e9d$1@e-post.inode.at>
In-Reply-To: <41499e9d$1@e-post.inode.at>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit
NNTP-Posting-Host: 62-99-252-218.c-gmitte.xdsl-line.inode.at
X-Trace: e-post.inode.at 1096549503 62.99.252.218 (30 Sep 2004 15:05:03 +0200)
Lines: 46
Path: arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!news.glorb.com!newsfeed.utanet.at!newscore.univie.ac.at!e-post.inode.at!not-for-mail