Archiwa tagu: gzip

Wielowątkowe pakowanie w Centos 7

Red Hat / CentOS niestety nie rozpieszczają pod względem dostępności fajnych zabawek w standardowym repozytorium
Jedyne co znalazłem to ‚pigz’ czyli rozwiązanie dające tę samą funkcjonalność co gzip, ale na wielu core’ach.

Trzeba oczywiście doinstalować:

yum install pigz

Niestety nie da się prosto odinstalować gzip’a i zastąpić go pigz’em. Ale zawsze można pokombinować 🙂

  1. Sprawdź jak wygląda twoja zmienna środowiskowa $PATH. Z root’a powinno to być coś w ten deseń:

    echo $PATH
    /usr/local/sbin:/sbin:/bin/:/usr/sbin:/usr/bin:/root/bin
  2. Zlokalizuj gdzie masz gzip’a. Standardowo jest w lokalizacji: /usr/bin/gzip
  3. Jak widać mamy niewielkie możliwości do podmienienia sobie gzipa z wykorzystaniem dowiązania symbolicznego, także zróbmy sobie linka w /sbin

    sudo ln -s /usr/bin/pigz /sbin/gzip
  4. Teraz jeżeli uruchomienie komendy ‚gzip’ bez ścieżki, odpali pigz’a.

Dla leniwców (albo kogoś kto nie ma roota) – można podmienić sobie komendę np. w menu Midnight Commandera.

W pliku: /etc/mc/mc.menu zamieniamy komendę ‚gzip’ na ‚pigz’:
Linia:

tar cf - "$Pwd" | gzip -f9 > "$tar.tar.gz" && \

po zmianie:

tar cf - "$Pwd" | pigz -f9 > "$tar.tar.gz" && \

voila

NGINX kompresja

Google udostępnia całkiem sympatyczne narzędzie do analizowania jakości strony – PageSpeed. Ciągle dostawałem tam informację, że moje serwery nie kompresują zawartości. Kombinowałem i kombinowałem…
Okazało się, że w ‚gzip_types’ brakowało typu ‚application/javascript’. W dokumentacji nginx’a tego nie ma…

Cały wpis odpowiadający za włączenie kompresji w nginx’ie:

gzip on;
gzip_comp_level 2;
gzip_http_version 1.0;
gzip_proxied any;
gzip_min_length 1100;
gzip_buffers 16 8k;
gzip_types text/plain text/html text/css application/javascript application/x-javascript text/xml application/xml application/xml+rss text/javascript;
gzip_disable "MSIE [1-6].(?!.*SV1)";
gzip_vary on;