Friday, 21 September 2018

Php and Nginx server slow when combining IPv4 with IPv6

I'm setting up a new server with Ubuntu 18.04.1 Nginx 1.14.0 and PHP 7.2.7 This is the first server that I try to setup with both IPv4 and IPv6 enabled. Everything works fine until I tested a page with a lot of missing images. It seems to take forever for the server to realise they are missing and respond to the http request. Some missing files give a HTTP status of "502 bad gateway". When I remove the line "listen [::]:443 ssl http2;" in the nginx server conf file the problem is gone. Is it a DNS problem that causes these delays and 502 errors and what should I change in the setup?

The php script should not be the problem, because my old server (that is only IPv4 enabled and has even less memory), with the exact same page, loads very quick. Also, I think it is DNS related, because when I remove that line "listen [::]:443 ssl http2;" in the nginx server conf file, the problem is gone. When I cranck up the settings in /etc/php/7.2/fpm/pool.d/www.conf, errors go away and loading time comes close to the old server (see further below) even though that server has less memory, PHP version 5.5.9-1 Ubuntu 14.04.5 LTS and Nginx 1.4.6.

When accessing the server through its IPv6 2a03:b0c0:0:1010::190:6001, there is a certificate mismatch notification. However the nginx server setup (see contents listed below) leads both IPv4 and IPv6 to the same certificate. Accessing the server through its IPv4 https://37.139.19.66 immediately shows https://test.vuyk.eu

The zone file records:

AAAA    test.vuyk.eu    directs to 2a03:b0c0:0:1010::190:6001 3600
A   test.vuyk.eu    directs to 37.139.19.66           3600

The hosts file might be a problem, however the problem persists if the hosts file is emptied all together. Here is the contents:

127.0.0.1 localhost
::1 localhost
2a03:b0c0:0:1010::190:6001 localhost
#vuykhost2.vuyk.eu is the hostname of the server
127.0.1.1 vuykhost2.vuyk.eu 
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

Below is the nginx server configuration, again, when I remove the line "listen [::]:443 ssl http2;" everything works fine:

server {
        listen 443 ssl http2;
        listen [::]:443 ssl http2;
        ssl_certificate /etc/letsencrypt/live/test.vuyk.eu/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/test.vuyk.eu/privkey.pem;
        include snippets/ssl-params.conf;

        server_name test.vuyk.eu;
        root /var/www/vuyk.eu/webroot;
        index index.php index.html index.htm ;

        location / {
            try_files $uri $uri/ /index.php?$args;
        }

        location ~ \.php$ {
            include fastcgi.conf;
            fastcgi_pass unix:/run/php/php7.2-fpm.sock;
        }
}

nginx.conf

user www-data;
worker_processes auto;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;

events {
    worker_connections 2048;
    multi_accept on;
}

http {

    ##
    # Basic Settings
    ##

    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;
    #   keepalive_timeout 65;
    types_hash_max_size 2048;
    # server_tokens off;

    # server_names_hash_bucket_size 64;
    # server_name_in_redirect off;

    include /etc/nginx/mime.types;
    default_type application/octet-stream;

    ##
    # SSL Settings
    ##

    ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE
    ssl_prefer_server_ciphers on;

    ##
    # Logging Settings
    ##

    access_log /var/log/nginx/access.log;
    error_log /var/log/nginx/error.log;

    ##
    # Gzip Settings
    ##

    gzip             on;
    gzip_comp_level  2;
    gzip_min_length  1000;
    gzip_proxied     expired no-cache no-store private auth;
    gzip_types       text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;

    ##
    # Virtual Host Configs
    ##

    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;
    client_body_buffer_size 10K;
    client_header_buffer_size 1k;
    client_max_body_size 100m;
    large_client_header_buffers 4 8k;
    fastcgi_buffers 16 16k;
    fastcgi_buffer_size 32k;
    fastcgi_read_timeout 500; #gateway probleem
    client_body_timeout 12;
    client_header_timeout 12;
    keepalive_timeout 25;
    send_timeout 10;
}

A part of the nginx error.log:

2018/08/30 16:25:27 [error] 29228#29228: *76 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 2a02:a440:91e3:1:4481:654b:a3e8:9617, server: test.vuyk.eu, request: "GET /images/klanten1/JHoogeveen.gif HTTP/2.0", upstream: "fastcgi://unix:/run/php/php7.2-fpm.sock:", host: "test.vuyk.eu", referrer: "https://test.vuyk.eu/portfolio-2"

Messages from the php7.2-fpm.log (there are a lot similar lines)

[30-Aug-2018 16:16:08] WARNING: [pool www] server reached pm.max_children setting (15), consider raising it
[30-Aug-2018 16:16:27] WARNING: [pool www] child 29026, script '/var/www/vuyk.eu/webroot/index.php' (request: "GET /index.php") execution timed out (22.937711 sec), terminating
[30-Aug-2018 16:16:27] WARNING: [pool www] child 29245 exited on signal 15 (SIGTERM) after 20.490546 seconds from start
[30-Aug-2018 16:16:27] NOTICE: [pool www] child 29263 started

Below is the timeline of HTTP requests and replies.

GET https://test.vuyk.eu/portfolio-2 [HTTP/2.0 200 OK 132ms]
GET https://test.vuyk.eu/templates/purity_iii/css/bootstrap.css [HTTP/2.0 200 OK 40ms]
GET https://test.vuyk.eu/templates/system/css/system.css [HTTP/2.0 200 OK 50ms]
GET https://test.vuyk.eu/templates/purity_iii/css/template.css [HTTP/2.0 200 OK 50ms]
GET https://test.vuyk.eu/templates/purity_iii/fonts/font-awesome/css/font-awesome.min.css [HTTP/2.0 200 OK 50ms]
GET https://test.vuyk.eu/templates/purity_iii/css/layouts/corporate.css [HTTP/2.0 200 OK 50ms]
GET https://test.vuyk.eu/media/jui/js/jquery.min.js?48b6d1b3850bca834b403c58682b4579 [HTTP/2.0 200 OK 60ms]
GET https://test.vuyk.eu/media/jui/js/jquery-noconflict.js?48b6d1b3850bca834b403c58682b4579 [HTTP/2.0 200 OK 60ms]
GET https://test.vuyk.eu/media/jui/js/jquery-migrate.min.js?48b6d1b3850bca834b403c58682b4579 [HTTP/2.0 200 OK 60ms]
GET https://test.vuyk.eu/media/system/js/caption.js?48b6d1b3850bca834b403c58682b4579 [HTTP/2.0 200 OK 70ms]
GET https://test.vuyk.eu/plugins/system/t3/base-bs3/bootstrap/js/bootstrap.js? 8b6d1b3850bca834b403c58682b4579 [HTTP/2.0 200 OK 80ms]
GET https://test.vuyk.eu/plugins/system/t3/base-bs3/js/jquery.tap.min.js [HTTP/2.0 200 OK 80ms]
GET https://test.vuyk.eu/plugins/system/t3/base-bs3/js/script.js [HTTP/2.0 200 OK 70ms]
GET https://test.vuyk.eu/plugins/system/t3/base-bs3/js/menu.js [HTTP/2.0 200 OK 70ms]
GET https://test.vuyk.eu/templates/purity_iii/js/script.js [HTTP/2.0 200 OK 70ms]
GET https://test.vuyk.eu/plugins/system/t3/base-bs3/js/nav-collapse.js [HTTP/2.0 200 OK 70ms]
GET https://test.vuyk.eu/templates/purity_iii/css/custom-vuyk.css [HTTP/2.0 200 OK 70ms]
GET https://test.vuyk.eu/images/klanten1/schipper2.gif [HTTP/2.0 502 Bad Gateway 23988ms]
GET https://test.vuyk.eu/images/klanten1/Kuiper.gif [HTTP/2.0 502 Bad Gateway 24038ms]
GET https://test.vuyk.eu/images/klanten1/WindMatch.gif [HTTP/2.0 502 Bad Gateway 24008ms]
GET https://test.vuyk.eu/images/klanten1/Tuinland.gif [HTTP/2.0 502 Bad Gateway 24018ms]
GET https://test.vuyk.eu/images/klanten1/Wezenberg.gif [HTTP/2.0 502 Bad Gateway 24038ms]
GET https://test.vuyk.eu/images/klanten1/Morgenster.gif [HTTP/2.0 502 Bad Gateway 23998ms]
GET https://test.vuyk.eu/images/klanten1/Harrie-boerhof.gif [HTTP/2.0 502 Bad Gateway 24028ms]
GET https://test.vuyk.eu/images/klanten1/Lococensus.gif [HTTP/2.0 502 Bad Gateway 23998ms]
GET https://test.vuyk.eu/images/klanten1/JHoogeveen.gif [HTTP/2.0 502 Bad Gateway 23978ms]
GET https://test.vuyk.eu/images/klanten1/DeDeur.gif [HTTP/2.0 502 Bad Gateway 23988ms]
GET https://test.vuyk.eu/images/klanten1/Runhaar.gif [HTTP/2.0 502 Bad Gateway 23958ms]
GET https://test.vuyk.eu/images/klanten1/Schunselaar-schildersbedrijf.gif [HTTP/2.0 502 Bad Gateway 23948ms]
GET https://test.vuyk.eu/images/klanten1/Capelle.gif [HTTP/2.0 502 Bad Gateway 23958ms]
GET https://test.vuyk.eu/images/klanten1/Distantlake.gif [HTTP/2.0 502 Bad Gateway 24038ms]
GET https://test.vuyk.eu/images/klanten1/Eikenaar.gif [HTTP/2.0 502 Bad Gateway 24018ms]
GET https://test.vuyk.eu/images/klanten1/FFWD.gif [HTTP/2.0 404 Not Found 26274ms]
GET https://test.vuyk.eu/images/klanten1/Veltec.gif [HTTP/2.0 404 Not Found 26791ms]
GET https://test.vuyk.eu/images/klanten1/Heutink.gif [HTTP/2.0 404 Not Found 26811ms]
GET https://test.vuyk.eu/images/klanten1/Lindeboom.gif [HTTP/2.0 404 Not Found 26777ms]
GET https://test.vuyk.eu/images/klanten1/aataxi.gif [HTTP/2.0 404 Not Found 26828ms]
GET https://test.vuyk.eu/images/klanten1/Aewind.gif [HTTP/2.0 404 Not Found 26811ms]
GET https://test.vuyk.eu/images/klanten1/Praatmaatgroep.gif [HTTP/2.0 404 Not Found 26800ms]
GET https://test.vuyk.eu/media/system/css/system.css [HTTP/2.0 200 OK 20ms]
JQMIGRATE: Migrate is installed, version 1.4.1 jquery-migrate.min.js:2:542
GET https://test.vuyk.eu/images/logo.gif [HTTP/2.0 200 OK 20ms]
GET https://test.vuyk.eu/images/reclame-en-communicatie.gif [HTTP/2.0 200 OK 20ms]
GET https://test.vuyk.eu/fonts/opensans-regular-webfont.woff [HTTP/2.0 200 OK 40ms]
GET https://test.vuyk.eu/templates/purity_iii/fonts/font-awesome/fonts/fontawesome-webfont.woff2?v=4.7.0 [HTTP/2.0 200 OK 70ms]

Edit: increased pm.max_children from 15 to 35. This solves the 502 problem and generates a new php warning:

[19-Sep-2018 11:28:05] WARNING: [pool www] seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), spawning 32 children, there are 0 idle, and 32 total children

Note: comparing with the same page on the old server, who has a pm.max_children setting of 5, there is still a long loading time, 8,4 seconds versus 3,16 seconds. Below is the timeline of HTTP requests again:

200 GET portfolio-2 test.vuyk.eu document html 4,16 KB 10,84 KB → 267 ms
200 GET custom-vuyk.css test.vuyk.eu stylesheet css 4,09 KB 16,65 KB → 70 ms
404 GET schipper2.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 5901 ms
404 GET Kuiper.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 7031 ms
404 GET WindMatch.gif test.vuyk.eu img html 3,26 KB 7,96 KB→ 5190 ms
404 GET Tuinland.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 6741 ms
404 GET Wezenberg.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 4910 ms
404 GET Morgenster.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 6571 ms
404 GET Harrie-boerhof.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 4820 ms
404 GET Lococensus.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 4980 ms
200 GET bootstrap.css test.vuyk.eu stylesheet css 26,13 KB 150,67 KB → 40 ms
200 GET system.css test.vuyk.eu stylesheet css 1,16 KB 894 B → 40 ms
200 GET template.css test.vuyk.eu stylesheet css 14,95 KB 70,55 KB → 40 ms
200 GET font-awesome.min.css test.vuyk.eu stylesheet css 7,90 KB 30,27 KB → 50 ms
200 GET corporate.css test.vuyk.eu stylesheet css 1,02 KB 752 B → 50 ms
200 GET jquery.min.js?48b6d1b3850bca834b403c58682b4579 test.vuyk.eu script js 37,40 KB 94,89 KB → 60 ms
200 GET jquery-noconflict.js?48b6d1b3850bca834b403c58682b4579 test.vuyk.eu script js 328 B 21 B → 70 ms
200 GET jquery-migrate.min.js?48b6d1b3850bca834b403c58682b4579 test.vuyk.eu script js 4,42 KB 9,82 KB → 70 ms
200 GET caption.js?48b6d1b3850bca834b403c58682b4579 test.vuyk.eu script js 800 B 491 B → 70 ms
200 GET bootstrap.js?48b6d1b3850bca834b403c58682b4579 test.vuyk.eu script js 17,01 KB 67,34 KB → 70 ms
200 GET jquery.tap.min.js test.vuyk.eu script js 1,17 KB 1,84 KB → 70 ms
200 GET script.js test.vuyk.eu script js 2,66 KB 6,26 KB → 70 ms
200 GET menu.js test.vuyk.eu script js 4,96 KB 16,48 KB → 70 ms
200 GET script.js test.vuyk.eu script js 1,50 KB 2,82 KB → 70 ms
200 GET nav-collapse.js test.vuyk.eu script js 1,81 KB 4,53 KB → 70 ms
404 GET JHoogeveen.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 7141 ms
404 GET DeDeur.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 6401 ms
404 GET Runhaar.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 6861 ms
404 GET Schunselaar-schildersbedrijf.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 7421 ms 
404 GET Capelle.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 7171 ms
404 GET Distantlake.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 7251 ms 
404 GET Eikenaar.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 7191 ms
404 GET FFWD.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 7141 ms 
404 GET Veltec.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 7551 ms
404 GET Heutink.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 7051 ms
404 GET Lindeboom.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 7311 ms
404 GET aataxi.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 7561 ms
404 GET Aewind.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 7631 ms
404 GET Praatmaatgroep.gif test.vuyk.eu img html 3,26 KB 7,96 KB → 7591 ms
200 GET system.css test.vuyk.eu stylesheet css 845 B 1,41 KB → 10 ms
200 GET logo.gif test.vuyk.eu img gif 6,17 KB 5,88 KB → 20 ms
200 GET reclame-en-communicatie.gif test.vuyk.eu img gif 9,54 KB 9,25 KB → 20 ms
200 GET opensans-regular-webfont.woff test.vuyk.eu font font-woff 24,45 KB 24,15 KB → 40 ms
200 GET fontawesome-webfont.woff2?v=4.7.0 test.vuyk.eu font octet-stream 75,66 KB 75,35 KB → 60 ms
200 GET js?id=UA-41464374-1 www.googletagmanager.com script js 28,01 KB 76,92 KB → 50 ms
200 GET analytics.js www.google-analytics.com script js 16,29 KB 38,76 KB → 20 ms
200 GET collect?v=1&_v=j69&a=1138059620&t=pageview&_s=1&dl=https://test.vuyk.eu/portfolio-2&ul=nl&de=UTF-8&dt=Portfolio-2&sd=24-bit&sr=1600x1200&vp=1583x1125&je=0&fl=31.0 r0&_u=AACAAUAB~&jid=442053766&gjid=162768711&cid=1071791154.1525078778&tid=UA-41464374-1&_gid=1927096468.1537349155&_r=1&gtm=u9c&z=1503882568
www.google-analytics.com img gif 444 B 35 B

The timeline of HTTP request of the old server:

200 GET portfolio-2 vuyk.eu document html 4,22 KB 10,83 KB → 230 ms 
200 GET bootstrap.css vuyk.eu stylesheet css 26,18 KB 150,67 KB → 46 ms 
200 GET system.css vuyk.eu stylesheet css 759 B 894 B → 107 ms 
200 GET template.css vuyk.eu stylesheet css 15,01 KB 70,55 KB → 119 ms 
200 GET font-awesome.min.css vuyk.eu stylesheet css 7,95 KB 30,27 KB → 111 ms 
200 GET corporate.css vuyk.eu stylesheet css 592 B 752 B → 112 ms 
200 GET jquery.min.js?48b6d1b3850bca834b403c58682b4579 vuyk.eu script js 37,46 KB 94,89 KB → 138 ms 
200 GET jquery-noconflict.js?6d1b3850bca834b403c58682b4579 vuyk.eu script js 393 B 21 B → 51 ms 
200 GET jquery-migrate.min.js?48b6d1b3850bca834b403c58682b4579 vuyk.eu script js 4,48 KB 9,82 KB → 72 ms 
200 GET caption.js?48b6d1b3850bca834b403c58682b4579 vuyk.eu script js 688 B 491 B → 72 ms 
200 GET bootstrap.js?48b6d1b3850bca834b403c58682b4579 vuyk.eu script js 17,07 KB 67,34 KB → 93 ms 
200 GET jquery.tap.min.js vuyk.eu script js 1,23    1,84 KB → 86 ms 
200 GET script.js vuyk.eu script js 2,72 KB 6,26 KB → 150 ms
200 GET menu.js vuyk.eu script js 5,02 KB 16,48 KB → 141 ms 
200 GET script.js vuyk.eu script js 1,56 KB 2,82 KB → 142 ms 
200 GET nav-apse.js vuyk.eu script js 1,87 KB 4,53 KB → 144 ms 
200 GET custom-vuyk.css vuyk.eu stylesheet css 4,15 KB 16,65 KB → 146 ms 
404 GET schipper2.gif vuyk.eu img html 327 B 162 B → 157 ms 
404 GET Kuiper.gif  vuyk.eu img html 327 B 162 B → 158 ms 
404 GET WindMatch.gif vuyk.eu img html 327 B 162 B → 149 ms 
404 GET Tuinland.gif vuyk.eu img html 327 B 162 B → 151 ms 
404 GET Wezenberg.gif vuyk.eu img html 327 B 162 B → 152 ms 
404 GET Morgenster.gif vuyk.eu img html 327 B 162 B → 150 ms 
404 GET Harrie-boerhof.gif vuyk.eu img html 327 B 162 B → 152 ms 
404 GET Lococensus.gif vuyk.eu img html 327 B 162 B → 152 ms 
404 GET JHoogeveen.gif vuyk.eu img html 327 B 162 B → 151 ms 
404 GET DeDeur.gif vuyk.eu img html 327 B 162 B → 154 ms 
404 GET Runhaar.gif vuyk.eu img html 327 B 162 B → 154 ms 
404 GET Schunselaar-schildersbedrijf.gif vuyk.eu img html 327 B 162 B → 154 ms 
404 GET Capelle.gif vuyk.eu img html 327 B 162 B → 157 ms 
404  GET Eikenaar.gif vuyk.eu img html 327   162 B → 158 ms 
404 GET FFWD.gif vuyk.eu img html 327 B 162 B → 161 ms 
404 GET Veltec.gif vuyk.eu img html 327 B 162 B → 166 ms 
404 GET Heutink.gif vuyk.eu img html 327 B 162 B → 166 ms 
404 GET Lindeboom.gif vuyk.eu img html 327 B 162 B → 166 ms 
404 GET Distantlake.gif vuyk.eu img html 327 B 162 B → 158 ms 
404 GET ataxi.gif uyk.eu img html 327 B 162 B → 160 ms 
404 GET Aewind.gif vuyk.eu img html 327 B 162   → 161 ms 
404 GET Praatmaatgroep.gif vuyk.eu img html 327 B 162 B → 163 ms 
200 GET system.css vuyk.eu stylesheet css 903 B 1,41 KB → 12 ms 
200 GET logo.gif vuyk.eu img gif 6,20 KB 5,88 KB → 14 ms 
404 GET schipper2.gif vuyk.eu img html 327 B 162 B → 13 ms 
404 GET Kuiper.gif vuyk.eu img html 327 B 162 B → 15 ms 
404 GET WindMatch.gif vuyk.eu img html 327 B 162 B → 16 ms 
404 GET Tuinland.gif vuyk.eu img html 327 B 162 B → 18 ms 
404 GET Wezenberg.gif vuyk.eu img html 327 B 162 B → 20 ms 
404 GET Morgenster.gif vuyk.eu img html 327 B 162 B → 23 ms 
404 GET Harrie-boerhof.gif vuyk.eu img html 327 B 162 B → 25 ms 
404 GET Lococensus.gif vuyk.eu img html 327 B 162 B → 26 ms 
404 GET JHoogeveen.gif vuyk.eu img html 327 B 162 B → 29 ms 
404 GET DeDeur.gif vuyk.eu img html 327 B 162 B → 30 ms 
404 GET Runhaar.gif vuyk.eu img html 327 B 162 B → 33 ms 
404 GET Schunselaar-schildersbedrijf.gif vuyk.eu img html 327 B 162 B → 35 ms 
404 GET Capelle.gif vuyk.eu img html 327 B 162 B → 37 ms 
404 GET Distantlake.gif vuyk.eu img html 327 B 162 B → 38 ms 
404 GET Eikenaar.gif vuyk.eu img html 327 B 162 B → 40 ms 
404 GET FFWD.gif vuyk.eu img html 327 B 162 B → 42 ms 
404 GET Veltec.gif vuyk.eu img html 327 B 162 B → 45 ms 
404 GET Heutink.gif vuyk.eu img html 327 B 162 B → 46 ms 
404 GET Lindeboom.gif vuyk.eu img html 327 B 162 B → 49 ms 
404 GET aataxi.gif vuyk.eu img html 327 B 162 B →   160 ms 
404 GET Aewind.gif vuyk.eu img html 327 B 162 B → 10 ms 
404 GET Praatmaatgroep.gif vuyk.eu img html 327 B 162 B → 13 ms 
200 GET reclame-en-communicatie.gif vuyk.eu img gif 9,57 KB 9,25 KB → 18 ms 
200 GET opensans-regular-webfont.woff vuyk.eu font octet-stream 24,44   24,15 KB → 43 ms 
200 GET fontawesome-webfont.woff2?v=4.7.0 vuyk.eu font octet-stream 75,64 KB 75,35 KB → 53 ms 
200 GET js?id=UA-41464374-1 www.googletagmanager.com script js 28,01 KB 76,92 KB → 179 ms 
200 GET analytics.js www.google-analytics.com script js 16,29 KB 38,76 KB → 15 ms 
200 GET collect?v=1&_v=j69&a=1196607213&t=pageview&_s=1&dl=https://vuyk.eu/portfolio-2&ul=nl&de=UTF-8&dt=Portfolio-2&sd=24-bit&sr=1600x1200&vp=1583x1125&je=0&fl=31.0 r0&_u=AACAAUAB~&jid=593009893&gjid=1416231654&cid=1071791154.1525078778&tid=UA-41464374-1&_gid=1927096468.1537349155&_r=1&gtm=u9c&z=1966144014
www.google-analytics.com img gif 444 B 35 B

Edit: errors go away and loading time comes close to the old server when I cranck up the settings in /etc/php/7.2/fpm/pool.d/www.conf like so:

pm.max_children = 100
pm.start_servers = 20
pm.min_spare_servers = 20
pm.max_spare_servers = 30

The old server settings:

pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3

Any idea what causes these differences?



from Php and Nginx server slow when combining IPv4 with IPv6

No comments:

Post a Comment