Jak zainstalować ławkę Apache na RHEL 8

Jak zainstalować ławkę Apache na RHEL 8

Apache Bench jest przydatnym małym narzędziem do testowania czasu reakcji obsług. Możemy określić liczbę żądań wysyłania, docelowego adresu URL, skonfigurowania współbieżności, aby wymienić kilka ustawień tego narzędzia.

Chociaż takie symulowane obciążenia nie przyniosą dokładnie takich samych danych, co ruch w świecie rzeczywistym, zawsze warto przetestować przed produkcją. Być może przed wdrożeniem nowej wersji aplikacji moglibyśmy uruchomić testy w nowej wersji i porównać wyniki z poprzednimi danymi testowymi, aby sprawdzić, czy nasza aplikacja będzie służyć wolniej lub szybciej niż ostatnia wersja. Dzięki dobrze zaplanowanym testom to narzędzie może pokazać możliwe wąskie gardła aplikacji i może zapewnić interesujące punkty, w których powinniśmy przyjrzeć się naszemu kodowi możliwej optymalizacji.

W tym samouczku zainstalujemy ławkę Apache w Red Hat Enterprise Linux 8, a także serwer Web.

W tym samouczku nauczysz się:

  • Jak zainstalować ławkę Apache
  • Jak zainstalować Webserver HTTPD i dodać podstawowe treści
  • Jak uruchomić proste testy na serwer Web
Uruchamianie testów wydajności na lokalnych serwisach internetowych z ławką Apache.

Zastosowane wymagania i konwencje oprogramowania

Wymagania oprogramowania i konwencje linii poleceń Linux
Kategoria Wymagania, konwencje lub wersja oprogramowania
System Red Hat Enterprise Linux 8
Oprogramowanie Apache Bench 2.3
Inny Uprzywilejowany dostęp do systemu Linux jako root lub za pośrednictwem sudo Komenda.
Konwencje # - Wymaga, aby podane polecenia Linux są wykonywane z uprawnieniami root bezpośrednio jako użytkownik root lub za pomocą sudo Komenda
$ - Wymaga, aby podane polecenia Linux zostały wykonane jako zwykły użytkownik niepewny

Jak zainstalować ławkę Apache na Redhat 8 krok po kroku instrukcje



Ławka Apache jest dostępna w podstawowych źródłach oprogramowania po włączeniu repozytoriów zarządzania subskrypcją wraz z Apache httpd serwer internetowy. Aby wypróbować nasze narzędzie, dodamy podstawowe treści do serwera internetowego, zarówno statycznego, jak i napisanego php.

  1. Aby zainstalować ławkę Apache, która jest w HTTPD Tools pakiet, użyjemy DNF:
    # DNF Zainstaluj httpd-tools
  2. Aby utworzyć środowisko testowe, wykorzystamy nasze Ab Narzędzia włączamy, zainstalujemy serwer WWW z obsługą PHP:
    # DNF Zainstaluj HTTPD PHP
  3. Dodamy statyczną stronę HTML /var/www/html/index.html Z następującą zawartością:
      Tytuł strony internetowej   

    To jest prosta strona HTML.

    Kopiuj

    I inna strona, która powoduje tę samą treść, ale jest napisana w PHP w sposób celowo marnotrawny. Plik będzie /var/www/html/index.php, Z poniższą zawartością:

    To jest prosta strona HTML.

    \ n "; echo" \ n "; echo" \ n "; ?>
    Kopiuj

    Zauważ, że gdy serwujemy tekst statyczny, potrzebujemy tylko jednego Echo, lub w ogóle bez php. Tworzymy tylko tę stronę, aby zobaczyć różnicę w czasach odpowiedzi.

  4. Możemy uruchomić nasz WebServer:
    # Systemctl start httpd
  5. Nie potrzebujemy źródło Przywileje do testów porównawczych. W pierwszym teście będziemy uruchomić Ab przeciwko stronie statycznej indeks.html, Zapewnienie 100000 żądań (-n) dla strony w 10 jednoczesnych wątkach (-C), w maksymalnym czasie 60 sekund (-T). Na maszynie laboratoryjnym ta liczba żądań będzie obsługiwana w ciągu jednej minuty, ale w zależności od sprzętu może to nie wystarczyć. Należy również zauważyć, że wyeliminowaliśmy prawdziwy ruch sieciowy poprzez porównanie z Localhost i naciskaliśmy obciążenie zarówno uruchamiania żądań, jak i obsługi ich na tym samym sprzęcie.


    $ ab -t 60 -n 100000 -C 10 http: // localhost/indeks.html To jest ApacheBench, wersja 2.3 <$Revision: 1826891 gt; Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Licensed to The Apache Software Foundation, http://www.apache.org/ Benchmarking localhost (be patient) Completed 10000 requests Completed 20000 requests Completed 30000 requests Completed 40000 requests Completed 50000 requests Completed 60000 requests Completed 70000 requests Completed 80000 requests Completed 90000 requests Completed 100000 requests Finished 100000 requests Server Software: Apache/2.4.35 Server Hostname: localhost Server Port: 80 Document Path: /index.html Document Length: 116 bytes Concurrency Level: 10 Time taken for tests: 19.556 seconds Complete requests: 100000 Failed requests: 0 Total transferred: 39600000 bytes HTML transferred: 11600000 bytes Requests per second: 5113.63 [#/sec] (mean) Time per request: 1.956 [ms] (mean) Time per request: 0.196 [ms] (mean, across all concurrent requests) Transfer rate: 1977.53 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 0 0 0.2 0 3 Processing: 0 2 0.8 2 26 Waiting: 0 1 0.7 1 26 Total: 0 2 0.8 2 26 

    Procent wniosków podanych w określonym czasie (MS) 50% 2 66% 2 75% 2 80% 2 90% 3 95% 3 98% 4 99% 5 100% 26 (najdłuższy żądanie)

    Kopiuj
  6. Drugi test będzie działał z tym samym zestawem parametrów, ale na marnotrawnej stronie PHP indeks.php.


    $ ab -t 60 -n 100000 -C 10 http: // localhost/indeks.php to jest ApacheBench, wersja 2.3 <$Revision: 1826891 gt; Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Licensed to The Apache Software Foundation, http://www.apache.org/ Benchmarking localhost (be patient) Completed 10000 requests Completed 20000 requests Completed 30000 requests Completed 40000 requests Completed 50000 requests Completed 60000 requests Completed 70000 requests Completed 80000 requests Completed 90000 requests Completed 100000 requests Finished 100000 requests Server Software: Apache/2.4.35 Server Hostname: localhost Server Port: 80 Document Path: /index2.php Document Length: 116 bytes Concurrency Level: 10 Time taken for tests: 35.064 seconds Complete requests: 100000 Failed requests: 0 Total transferred: 30700000 bytes HTML transferred: 11600000 bytes Requests per second: 2851.89 [#/sec] (mean) Time per request: 3.506 [ms] (mean) Time per request: 0.351 [ms] (mean, across all concurrent requests) Transfer rate: 855.01 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 0 0 0.2 0 3 Processing: 1 3 1.2 3 27 Waiting: 0 3 1.2 3 27 Total: 1 3 1.3 3 28 

    Odsetek wniosków podanych w określonym czasie (MS) 50% 3 66% 4 75% 4 80% 4 90% 5 95% 6 98% 7 99% 7 100% 28 (najdłuższy żądanie) To nie jest wielka niespodzianka Co pokazują wyniki. Treść statyczna jest podawana znacznie szybciej niż marnotrawna strona, która również musi odbyć tłumacz PHP. A dzięki temu pokazaliśmy w prostym przykładzie, w jaki sposób narzędzie do ławki Apache można użyć do gromadzenia statystyk dotyczących czasu reakcji naszych usług internetowych.

    Kopiuj

Powiązane samouczki Linux:

  • Wprowadzenie do automatyzacji, narzędzi i technik Linuksa
  • Porównanie Linux Apache Prefork vs Pracowni
  • Jak pracować z WooCommerce Rest API z Pythonem
  • Jak porównywać wydajność dysku na Linux
  • GNU/Linux Ogólne Przewodnik po rozwiązywaniu problemów dla początkujących
  • Lista najlepszych narzędzi Kali Linux do testowania penetracji i…
  • Utwórz przekieruj i przepisuj reguły do .Htaccess na Apache…
  • Jak sprawdzić zdrowie dysku twardego z wiersza poleceń…
  • Ubuntu 20.04 WordPress z instalacją Apache
  • Rzeczy do zainstalowania na Ubuntu 20.04