XAMPP

A Unix/Linux szerverek üzemeltetése wikiből
(Változatok közti eltérés)
(A szerver vizsgálat eredményei)
(A szerver vizsgálat eredményei)
159. sor: 159. sor:
   
 
Az Apache szervert elindítjuk:
 
Az Apache szervert elindítjuk:
  +
/opt/lampp/lampp startapache
   
+
A httperf legegyszerűbb szimulációja: egyetlen TCP kapcsolat felépítése a szerverrel, majd egyetlen HTTP GET kérés küldése és a válaszra várunk:
A httper legegyszerűbb szimulációja: egyetlen TCP kapcsolat felépítése a szerverrel, majd egyetlen HTTP GET kérés küldése és a választ vizsgáljuk:
 
 
httperf −−hog −−server localhost
 
httperf −−hog −−server localhost
A mérés statisztikája:
+
A mérés statisztikája és az egyes részek megnevezése:
  +
A mérés során használt beállítások, a többi a default beállítás:
 
httperf --client=0/1 --server=localhost --port=80 --uri=/ --send-buffer=4096 --recv-buffer=16384 --num-conns=1 --num-calls=1
 
httperf --client=0/1 --server=localhost --port=80 --uri=/ --send-buffer=4096 --recv-buffer=16384 --num-conns=1 --num-calls=1
  +
A mérés összegzése: 1 kapcsolat, 1 küldött csomag, 1 válasz rá és a mérés ideje:
 
Maximum connect burst length: 0
 
Maximum connect burst length: 0
 
Total: connections 1 requests 1 replies 1 test-duration 5.017 s
 
Total: connections 1 requests 1 replies 1 test-duration 5.017 s
  +
A kapcsolat és a küldések paraméterei:
 
Connection rate: 0.2 conn/s (5016.6 ms/conn, <=1 concurrent connections)
 
Connection rate: 0.2 conn/s (5016.6 ms/conn, <=1 concurrent connections)
 
Connection time [ms]: min 5016.6 avg 5016.6 max 5016.6 median 5016.5 stddev 0.0
 
Connection time [ms]: min 5016.6 avg 5016.6 max 5016.6 median 5016.5 stddev 0.0
172. sor: 175. sor:
 
Request rate: 0.2 req/s (5016.6 ms/req)
 
Request rate: 0.2 req/s (5016.6 ms/req)
 
Request size [B]: 60.0
 
Request size [B]: 60.0
Reply rate [replies/s]: min 0.0 avg 0.0 max 0.0 stddev 0.0 (1 samples)
+
A válaszokból készült statisztika:
  +
Reply rate [replies/s]: min 0.0 avg 1.0 max 1.0 stddev 0.0 (1 samples)
 
Reply time [ms]: response 5.8 transfer 5010.5
 
Reply time [ms]: response 5.8 transfer 5010.5
 
Reply size [B]: header 293.0 content 0.0 footer 0.0 (total 293.0)
 
Reply size [B]: header 293.0 content 0.0 footer 0.0 (total 293.0)
Reply status: 1xx=0 2xx=0 3xx=1 4xx=0 5xx=0
+
Reply status: 1xx=0 2xx=1 3xx=0 4xx=0 5xx=0
  +
rendszer paraméterek a mérés során:
 
CPU time [s]: user 0.63 system 3.59 (user 12.5% system 71.5% total 84.0%)
 
CPU time [s]: user 0.63 system 3.59 (user 12.5% system 71.5% total 84.0%)
 
Net I/O: 0.1 KB/s (0.0*10^6 bps)
 
Net I/O: 0.1 KB/s (0.0*10^6 bps)
  +
Hibák száma, fajtái:
 
Errors: total 0 client-timo 0 socket-timo 0 connrefused 0 connreset 0
 
Errors: total 0 client-timo 0 socket-timo 0 connrefused 0 connreset 0
 
Errors: fd-unavail 0 addrunavail 0 ftab-full 0 other 0
 
Errors: fd-unavail 0 addrunavail 0 ftab-full 0 other 0
 
----
 
----
  +
Az Apache szerverünk tehát jól vizsgázott ezen a mérésen. Nézzük meg ha növeljük a terhelést:
  +
  +
Itt most 100 kapcsolatot építünk ki a szerverrel és 231 kérést küldünk neki:
  +
httperf --hog --timeout=5 --client=0/1 --server=localhost --port=80 --uri=/ --rate=1 --send-buffer=4096 --recv-buffer=16384 --wsess=100,5,2.000
  +
Maximum connect burst length: 1
  +
Total: connections 100 requests 231 replies 140 test-duration 117.524 s
  +
Connection rate: 0.9 conn/s (1175.2 ms/conn, <=17 concurrent connections)
  +
Connection time [ms]: min 8058.5 avg 15948.5 max 29130.0 median 16050.5 stddev 5295.0
  +
Connection time [ms]: connect 516.2
  +
Connection length [replies/conn]: 2.258
  +
Request rate: 2.0 req/s (508.8 ms/req)
  +
Request size [B]: 59.0
  +
Reply rate [replies/s]: min 0.0 avg 1.2 max 1.8 stddev 0.6 (23 samples)
  +
Reply time [ms]: response 457.3 transfer 2751.9
  +
Reply size [B]: header 301.0 content 145902.0 footer 2.0 (total 146205.0)
  +
Reply status: 1xx=0 2xx=140 3xx=0 4xx=0 5xx=0
  +
CPU time [s]: user 9.73 system 91.43 (user 8.3% system 77.8% total 86.1%)
  +
Net I/O: 170.2 KB/s (1.4*10^6 bps)
  +
Errors: total 91 client-timo 91 socket-timo 0 connrefused 0 connreset 0
  +
Errors: fd-unavail 0 addrunavail 0 ftab-full 0 other 0
  +
Session rate [sess/s]: min 0.00 avg 0.08 max 0.20 stddev 0.07 (9/100)
  +
Session: avg 1.00 connections/session
  +
Session lifetime [s]: 22.4
  +
Session failtime [s]: 11.0
  +
Session length histogram: 38 22 23 5 3 9
  +
  +
Itt már csak 140 kérésre érkezett válasz és 91 alkalommal a timeout-olt a kliens.
   
 
== Felhasznált irodalom, hasznos oldalak ==
 
== Felhasznált irodalom, hasznos oldalak ==

A lap 2010. november 7., 01:07-kori változata

Tartalomjegyzék

1 XAMPP

1.1 Mi is az a XAMPP?

A Xampp egy ingyenes szoftver csomag, amellyel egyszerűen és kényelmesen telepíthetünk Apache webszervert a gépünkre. Több operációs rendszerrel is kompatibilis, létezik Linux, Windows és Solaris változata is. Alapvetően egy Apache disztribúció, amely több (hasznos) alkalmazást is magába foglal, mint például a MySQL, PHP, Pearl, PHPmyadmin és a ProFTPd.

Jelen oldal célja, a webszerver tesztelése megadott programok segítségével, ezért szükségünk van egy Apache szerverre.

1.2.XAMPP telepítése, kezelése, eltávolítása

1.2.1. XAMPP telepítése

a) A weboldalról letöltjük az épp aktuális verziót:

http://www.apachefriends.org/download.php?xampp-linux-1.7.3a.tar.gz

b) A terminál ablakban a következő paranccsal bontjuk ki:

tar xzvf xampp-linux-1.4.11.tar.gz -C /opt

c) A /opt könyvtárban egy új mappa jött létre lampp néven és ezzel kész is a telepítés.


1.2.2. XAMPP kezelési parancsok


a) Új web szerver indítás

Ha egy új szervert akarunk indítani a következőket írjuk be a terminál ablakba:

/opt/lampp/lampp start

, ekkor elindulnak a szolgáltatások:

Starting XAMPP 1.7.3a...
LAMPP: Starting Apache2...
LAMPP: Starting MySQL...
LAMPP started.

Ezzel az a paranccsal az összes komponenst elindítottuk, nem feltétlenül kell minden programot egyszerre futtatnunk, elindíthatóak egyesével is: (például lehet olyan eset, hogy webszerverünknek nincs szüksége MySQL-re)

/opt/lampp/lampp startapache
/opt/lampp/lampp startmysql
/opt/lampp/lampp startftp
/opt/lampp/lampp startssl

b) Szerver újraindítás

 /opt/lampp/lampp restart

c) Szerver megállítás

/opt/lampp/lampp stop

Vagy ha csak egy adott alkalmazást kívánunk leállítani:

/opt/lampp/lampp stopapache
/opt/lampp/lampp stopmysql
/opt/lampp/lampp stopftp

1.2.3. Váltás PHP4 és PHP5 között

A XAMPP képes váltani a PHP4 és PHP5 között. Ennek akkor van értelme, ha egy fejlesztő alkalmazása nem működik PHP5 alatt csak PHP4-en.

A váltáshoz szükséges parancsok:

php5→php4:

/opt/lampp/lampp php4

php4→php5:

/opt/lampp/lampp php5

1.2.4. A XAMPP eltávolítása

rm -rf /opt/lampp

2 vmstat, netstat, IPtraf, ntop, httperf

[link: https://unixlinux.tmit.bme.hu/vmstat,netstat,IPtraf,ntop,httperf]

3 A szerver vizsgálat eredményei

Netstattal vizsgálva a szervert:

netstat -nr kiírja a szerverünk routing táblája:

Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
10.64.64.64     0.0.0.0         255.255.255.255 UH        0 0          0 ppp0
127.0.0.0       0.0.0.0         255.0.0.0       U         0 0          0 lo
0.0.0.0         0.0.0.0         0.0.0.0         U         0 0          0 ppp0

netstat -i kiírja a szerverünk interfészeit, az MTU-t, a küldött és vett csomagok számát (az elveszetteket is):

Kernel Interface table
Iface   MTU Met    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0   1500   0        0      0      0      0        0      0      0      0 BMU
lo    16436   0      108      0      0      0      108      0      0      0 LRU
ppp0   1500   0     2966      0      0      0     3006      0      0      0 MOPRU

netstat -g kiírja a szerverünk IPv4, IPv6 csoporttagságait:

IPv6/IPv4 Group Memberships
Interface       RefCnt Group
--------------- ------ ---------------------
lo              1      ALL-SYSTEMS.MCAST.NET
eth0            1      ALL-SYSTEMS.MCAST.NET
ppp0            1      ALL-SYSTEMS.MCAST.NET
lo              1      ipv6-allnodes
eth0            1      ipv6-allnodes
ppp0            1      ipv6-allnodes

netstat -l a „hallgatózó” szerver socketek listázza ki:

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 *:sunrpc                *:*                     LISTEN      
tcp        0      0 localhost:ipp           *:*                     LISTEN      
tcp        0      0 *:smtp                  *:*                     LISTEN      
tcp        0      0 *:sunrpc                *:*                     LISTEN      
tcp        0      0 localhost:ipp           *:*                     LISTEN      
tcp        0      0 *:smtp                  *:*                     LISTEN      
udp        0      0 *:820                   *:*                                 
udp        0      0 *:53437                 *:*                                 
udp        0      0 *:bootpc                *:*                                 
udp        0      0 *:mdns                  *:*                                 
udp        0      0 *:sunrpc                *:*                                 
udp        0      0 *:ipp                   *:*                                 
udp        0      0 *:820                   *:*                                 
udp        0      0 *:sunrpc                *:*                                 
Active UNIX domain sockets (only servers)
Proto RefCnt Flags       Type       State         I-Node Path
unix  2      [ ACC ]     STREAM     LISTENING     6474   @/var/run/hald/dbus-5xGa2LPKv8
unix  2      [ ACC ]     STREAM     LISTENING     11508  private/bounce
unix  2      [ ACC ]     STREAM     LISTENING     11512  private/defer
unix  2      [ ACC ]     STREAM     LISTENING     11516  private/trace
unix  2      [ ACC ]     STREAM     LISTENING     7598   @/tmp/dbus-tp88b9tqUu

netstat -ta aktív TCP socketek kilistázása:

Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 *:sunrpc                *:*                     LISTEN      
tcp        0      0 localhost:ipp           *:*                     LISTEN      
tcp        0      0 *:smtp                  *:*                     LISTEN      
tcp        0      0 91.83.125.55.pool:39195 OCSP.IAD3.VERI:www-http TIME_WAIT   
tcp        0      0 91.83.125.55.pool:55886 hb-in-f83.1e100.n:https ESTABLISHED 
tcp        0      0 91.83.125.55.pool:46471 hb-in-f104.1e100.:https ESTABLISHED 
tcp        1      0 91.83.125.55.pool:40777 184-106-213-18:www-http CLOSE_WAIT  
tcp       38      0 91.83.125.55.pool:51176 elan.rulez.org:https    CLOSE_WAIT  
tcp        0      0 *:sunrpc                *:*                     LISTEN      
tcp        0      0 localhost:ipp           *:*                     LISTEN      
tcp        0      0 *:smtp                  *:*                     LISTEN      


A httperf során kapott eredmények:

Az Apache szervert elindítjuk:

/opt/lampp/lampp startapache

A httperf legegyszerűbb szimulációja: egyetlen TCP kapcsolat felépítése a szerverrel, majd egyetlen HTTP GET kérés küldése és a válaszra várunk:

httperf −−hog −−server localhost

A mérés statisztikája és az egyes részek megnevezése: A mérés során használt beállítások, a többi a default beállítás:

httperf --client=0/1 --server=localhost --port=80 --uri=/ --send-buffer=4096 --recv-buffer=16384 --num-conns=1 --num-calls=1

A mérés összegzése: 1 kapcsolat, 1 küldött csomag, 1 válasz rá és a mérés ideje:

Maximum connect burst length: 0
Total: connections 1 requests 1 replies 1 test-duration 5.017 s

A kapcsolat és a küldések paraméterei:

Connection rate: 0.2 conn/s (5016.6 ms/conn, <=1 concurrent connections)
Connection time [ms]: min 5016.6 avg 5016.6 max 5016.6 median 5016.5 stddev 0.0
Connection time [ms]: connect 0.3
Connection length [replies/conn]: 1.000
Request rate: 0.2 req/s (5016.6 ms/req)
Request size [B]: 60.0

A válaszokból készült statisztika:

Reply rate [replies/s]: min 0.0 avg 1.0 max 1.0 stddev 0.0 (1 samples)
Reply time [ms]: response 5.8 transfer 5010.5
Reply size [B]: header 293.0 content 0.0 footer 0.0 (total 293.0)
Reply status: 1xx=0 2xx=1 3xx=0 4xx=0 5xx=0

rendszer paraméterek a mérés során:

CPU time [s]: user 0.63 system 3.59 (user 12.5% system 71.5% total 84.0%)
Net I/O: 0.1 KB/s (0.0*10^6 bps)

Hibák száma, fajtái:

Errors: total 0 client-timo 0 socket-timo 0 connrefused 0 connreset 0
Errors: fd-unavail 0 addrunavail 0 ftab-full 0 other 0
----

Az Apache szerverünk tehát jól vizsgázott ezen a mérésen. Nézzük meg ha növeljük a terhelést:

Itt most 100 kapcsolatot építünk ki a szerverrel és 231 kérést küldünk neki:

httperf --hog --timeout=5 --client=0/1 --server=localhost --port=80 --uri=/ --rate=1 --send-buffer=4096 --recv-buffer=16384 --wsess=100,5,2.000
Maximum connect burst length: 1
Total: connections 100 requests 231 replies 140 test-duration 117.524 s
Connection rate: 0.9 conn/s (1175.2 ms/conn, <=17 concurrent connections)
Connection time [ms]: min 8058.5 avg 15948.5 max 29130.0 median 16050.5 stddev 5295.0
Connection time [ms]: connect 516.2
Connection length [replies/conn]: 2.258
Request rate: 2.0 req/s (508.8 ms/req)
Request size [B]: 59.0
Reply rate [replies/s]: min 0.0 avg 1.2 max 1.8 stddev 0.6 (23 samples)
Reply time [ms]: response 457.3 transfer 2751.9
Reply size [B]: header 301.0 content 145902.0 footer 2.0 (total 146205.0)
Reply status: 1xx=0 2xx=140 3xx=0 4xx=0 5xx=0
CPU time [s]: user 9.73 system 91.43 (user 8.3% system 77.8% total 86.1%)
Net I/O: 170.2 KB/s (1.4*10^6 bps)
Errors: total 91 client-timo 91 socket-timo 0 connrefused 0 connreset 0
Errors: fd-unavail 0 addrunavail 0 ftab-full 0 other 0
Session rate [sess/s]: min 0.00 avg 0.08 max 0.20 stddev 0.07 (9/100)
Session: avg 1.00 connections/session
Session lifetime [s]: 22.4
Session failtime [s]: 11.0
Session length histogram: 38 22 23 5 3 9

Itt már csak 140 kérésre érkezett válasz és 91 alkalommal a timeout-olt a kliens.

4 Felhasznált irodalom, hasznos oldalak

http://www.linuxvilag.hu/content/files/cikk/63/cikk_63_51_53.pdf

http://wiki.hup.hu/index.php/Netstat

http://iptraf.seul.org/

http://www.ntop.org/news.php

http://www.hpl.hp.com/research/linux/httperf/docs.php

Személyes eszközök