Veröffentlicht am Schreiben Sie einen Kommentar

PHP Byte code cache aktivieren

In der php.ini folgende Konfiguration vornehmen um den php7 / php8 OPCache zu aktivieren welches die Performance deutlich erhöht.

In dieser Beispiel Konfiguration habe ich ebenfalls unter php 8 just in time Kompilierung aktiviert für PHP 7.4 falls ihr das noch verwendet bitte die just in time compilation deaktivieren weil sie erst unter php8 hinzugekommen ist.

#memory_limit=512M;

#zend_extension=opcache.so;

opcache.enable=1;

opcache.revalidate_freq=180;

opcache.fast_shutdown=0;

opcache.enable_cli=1;

opcache.revalidate_path=0;

opcache.validate_timestamps=2;

opcache.max_file_size=0;

opcache.file_cache=/var/www/vhosts/tsecurity.de/opcache_tsec;

opcache.file_cache_only=1;

opcache.memory_consumption=256;

opcache.interned_strings_buffer=8;

opcache.max_accelerated_files=50000;

#opcache.revalidate_freq=2;

opcache.fast_shutdown=1;

opcache.enable_cli=1;

#opcache.jit_buffer_size=256M; #seit PHP 8

#opcache.jit=tracing;

#opcache.blacklist_filename=/var/www/xxx.com/

Entscheidend für den Erfolg des PHP bei caches ist dass der Ordner von euch erstellt werden muss er wird nicht vom PHP selbst erstellt Punkt es macht definitiv Sinn einen neuen Ordner anzulegen und auf diesen in der entsprechenden uniconfiguration zu zeigen.

opcache.file_cache=/path/

Veröffentlicht am Schreiben Sie einen Kommentar

PHP just in time compilation

PHP 7.4 erschien am 28. November 2019 und gilt inzwischen als outdated.

Ab Ende November 2022 wird es für die PHP-Version 7.4 keine Sicherheitsupdates mehr geben.

PHP 7 hat eine um bis zu 30 Prozent geringere Ausführungszeit als PHP 5

PHP 8 wurde am 26. November 2020 veröffentlicht. 

Die Version unterstützt unter anderem Just-in-time-Kompilierung, was in Micro-Benchmarks für eine Steigerung der Performance um mehr als 45 Prozent sorgt.

Im Dezember 2022 wird es den php8.2 Release geben.

Konfiguration für just in time Kompilierung für php8 aktivieren:

opcache.jit_buffer_size=256M;

opcache.jit=tracing;

Oder 

opcache.jit=function;

Viel Spaß mit der verbesserten Performance!

Veröffentlicht am Schreiben Sie einen Kommentar

PHP OPcache Dateien und Verzeichnisse vom OPcache ausschließen

kurz gesagt: Was ist PHP OPCache? OPCache ist eine Erweiterung für PHP, die die Ausführung von PHP-Skripten beschleunigt, indem sie deren Bytecode zwischenspeichert. Wird ein PHP-Skript aufgerufen, wird es zunächst in plattformunabhängigen Bytecode übersetzt und anschließend wird dieser Bytecode von der Zend Engine in Maschinencode übersetzt. Die Übersetzung vom Skript in den Bytecode erfolgt normalerweise bei jedem Aufruf des Skripts. An dieser Stelle kommt OPCache ins Spiel. OPCache speichert den vorkompilierten Bytecode im Hauptspeicher (RAM). Beim erneuten Aufruf eines Skripts wird dieses nicht erneut in Bytecode übersetzt, sondern der bereits übersetzte Bycode wird von OPCache aus dem Arbeitsspeicher geladen.

; Der Speicherort der OPcache-Blacklist-Datei (Platzhalter erlaubt).

; Jede OPcache-Blacklist-Datei ist eine Textdatei, die die Namen von Dateien enthält

; das sollte nicht beschleunigt werden.

opcache.blacklist_filename=/var/www/vhosts/tsecurity.de/opcache-blacklist.txt

; Die Blacklist-Datei ist eine Textdatei, die die Namen von Dateien enthält

; das sollte nicht beschleunigt werden. Das Dateiformat besteht darin, jeden Dateinamen hinzuzufügen.

 /path/to/ignored/script/ignoreThis.php 
/var/www/developer/*
/var/www/vhosts/mydomain.com/httpdocs/cache/*
Veröffentlicht am Schreiben Sie einen Kommentar

PHP 8.2 ohne URL Encoding utf8_encode

ISO-8859-1 zu UTF-8 mit mbstring

Bis PHP 8.2 war folgende Funktion möglich:

utf8_encode($string);

Ab PHP 8.2 bietet mbstring eine Lösung an:

mb_convert_encoding($string, “UTF-8”, “ISO-8859-1”);

Alternative Funktion ohne utf8_encode:

function iso8859_1_to_utf8(string $string): string {

    $s .= $string;

    $len = \strlen($s);

    for ($i = $len >> 1, $j = 0; $i < $len; ++$i, ++$j) {

        switch (true) {

            case $s[$i] < “\x80”: $s[$j] = $s[$i]; break;

            case $s[$i] < “\xC0”: $s[$j] = “\xC2”; $s[++$j] = $s[$i]; break;

            default: $s[$j] = “\xC3”; $s[++$j] = \chr(\ord($s[$i]) – 64); break;

        }

    }

    return substr($s, 0, $j);

}

https://php.watch/versions/8.2/utf8_encode-utf8_decode-deprecated

Veröffentlicht am Schreiben Sie einen Kommentar

Google Analytics: In-Page-Analyse einrichten und einsetzen

Erfolg ist messbar.

Es ist möglich Google Analytics so zu konfigurieren dass die erweiterte in Page Analyse möglich wird. Dazu muss in den Kontoeinstellungen die in Page Analyse aktiviert werden inklusive der erweiterten Ding Zuordnung um doppelte Klicks zu verhindern.

 Wer sich nun fragt die man Zugriff auf die in Page Analyse bekommt dem sei gesagt dass dies über einen Google Chrome Plugin realisiert werden kann.

 Das Google Analytics in Page Chrome plugin hat automatisch Zugriff auf die Google Analytics Konten Mit dem Konto indem sie bei Google angemeldet sind.

 Das Plugin verfügt über ein on off Schalter.  wenn Sie den Schalter aktivieren Planet sich am oberen Bildschirmrand ein kleines Fenster ein indem sie die aktuellen Zugriffszahlen von heute sehen inklusive  einer Echtzeit Besucherstatistik. Also die sogenannten Echtzeit User also Benutzer die gerade auf der Internetseite unterwegs sind.

 Erfolg ist messbar!

 Sie sollten sich unbedingt mit dieser Technik vertraut machen um die Besucherströme besser zu verstehen und gegebenenfalls die Navigation umzustrukturieren oder Sachen die sie mehr verkaufen wollen in den Vordergrund zu rücken. Sie verstehen viel besser wie die Benutzer und Kunden auf ihrer Internetseite agieren. Diese Analyse kann einiges an Zeit in Anspruch nehmen ist aber sehr wertvoll.

tsecurity.de In-Page Analyse von Google Chrome Extension
tsecurity.de In-Page Analyse von Google Chrome Extension

Unverbindliche Projektanfrage stellen