Seit Anfang August können Kunden von goneo neben den Versionen 7.1 und 7.2 auch die aktuelle stabile Ausgabe der Skriptsprache PHP 7.3 benutzen. Die Umschaltung ist ganz einfach im goneo-Kundencenter unter dem Menüpunkt „Webserver“ möglich.
PHP 7.3 setzt den Fahrplan der erfolgreichen Version 7 fort. Im Vergleich zu PHP 5 bietet diese eine allgemein bessere Performance. Kleinere Webprojekte profitieren vor allem durch schnellere Seitenauslieferung. Besonders bei hauptsächlich dynamisch erzeugten Websites macht sich dies bemerkbar. Dies ist heute der Regelfall. Open-Source-Contentmanagementsysteme wie WordPress oder Joomla arbeiten genau so.
Diskussionen über PHP
Immer wenn eine Meldung über eine neue PHP-Version erscheint, häufen sich kritische Stimmen in einschlägigen Foren, die PHP als Konzept insgesamt in Frage stellen. Andererseits finden sich glühende Verfechter, die die Einfachheit und breite Verfügbarkeit der Skriptsprache betonen. Aufgrund dieser Eigenschaften kann man PHP als Wegbereiter des modernen Webs bezeichnen, das Systeme wie TYPO3, Drupal, Joomla und natürlich WordPress erst hervorbrachte. Keine Frage: Im Bereich Web-Publishing ist PHP als Teil des quasi-standardmäßigen LAMP-Stacks (ein Software-„Stapel“ aus Linux Apache MySQL PHP) die Nummer eins. Auch Facebook wurde ursprünglich in PHP gebaut. Heute nutzt man eine Abspaltung namens Hack.
Letztlich ging es den Initiatoren von PHP auch nie darum eine vollumfängliche Allzweckprogrammiersprache zu entwickeln. Man wollte mit PHP ursprünglich tatsächlich nur einige Aufgaben lösen, die sich während der Expansionsphase des WWW Ende der 1990er bis in die Nullerjahre nach 2000 im Bereich Webentwicklung und Web-Publishing stellten. Daher auch der ursprüngliche Name „Personal Home Page“-Tools. Bis Rasmus Lerdorf sein erstes PHP veröffentlichte erstellten viele Programmierer Skripte in Perl, was funktional und kompakt war, aber als fertiger Code recht schwer zu lesen und weiterzuentwickeln ist.
Andere Anforderungen, andere Sprachen
Besonders bei missions- oder sicherheitskritischen Webanwendungen spielen zum Beispiel JAVA und C# eine wichtige Rolle, PHP eher nicht. Wichtig ist bei solchen Anwendungen, den Wertebereich von Variablen einschränken zu können, also statisch typisieren zu können. PHP typisiert Variablen dynamisch. Hinter einen Variablennamen kann sich also beispielsweise ein Text oder eine Zahl verbergen. Dies ist bei PHP nicht von vorne herein durch den Programmierer festzulegen, was durchaus als Sicherheitsthema wichtig ist.
Im Bereich KI, besonders bei Anwendungen rund im Maschinelles Lernen (ML) spielt PHP ebenfalls nur eine untergeordnete Rolle. Es gibt zwar ein paar wenige PHP-Frameworks für ML, doch häufig nutzen Coder hier Python-Skripte oder entwickeln Algorithmen zunächst in R oder MathLab bzw. Octavia, ehe diese in einer zu kompilierenden Sprache werden. Möglicherweise ist Python in dieser Sphäre deswegen so beliebt, weil diese Sprache noch einen Tick einfacher zu erlernen und anzuwenden ist als PHP. Viele Einsteiger lernen das Programmieren mit Python (früher gerne mit PASCAL) und nutzen diese Skriptsprache auch, um ML-Anwendungen anzusprechen. Viele Cloud-Anbieter, die Schnittstellen zu integrierten KI-Diensten anbieten, haben sich darauf eingestellt. Python geht eigentlich immer.
Besitzer mobiler Ökosysteme powern eigene Lösungen
Auch im Mobile Apps Bereich und in Geräten fristet PHP ein Schattendasein. Hier wirken gerne die Besitzer der entsprechenden Ökosysteme mit: Google setzt auf Kotlin, Apple auf das hauseigene Swift.
Neu in der Debatte: „PHP++“ als striktere Version der Programmiersprache
Aktuell debattiert man bei PHP um eine Neuausrichtung oder um eine Beibehaltung der bisherigen Strategie mit der Betonung auf Kontinuität und einem gewissen Fokus auf Rückwärtskompatibilität. Gerade erst erschien auf php.net/blog ein Beitrag von Core-Entwickler Zeev Suraski mit einem Vorschlag für ein Projekt names „P++“. Es gebe zwei Richtungen in der PHP-Community heißt es da, bestehend aus denjenigen, die PHP wegen der Einfachheit und Dynamik lieben und den anderen, die striktere Strukturen fordern, weniger Ballast aus der Vergangenheit und komplexere Funktionen. P++ soll offenbar das oft kritisierte Thema der fehlenden statischen Typisierung adressieren, während das „klassische“ PHP mit dynamischer Typisierung weiterentwickelt werden könnte. Die Codebasis aber solle einheitlich bleiben.
Die Diskussion ist da keineswegs abgeschlossen und der Ausgang ist nicht absehbar. Diese Überlegungen zeigen aber, dass sich PHP den Herausforderungen der Gegenwart stellen will, so dass wir auch morgen mit einer Weiterentwicklung der Skriptsprache rechnen dürfen.
Die Herausgeber von WordPress empfehlen übrigens bereits PHP 7.3.
Schön zu sehen, dass bei PHP der Stand gepflegt wird.
Bleibt die Frage wann dieses bei MySQL passiert, schließlich ist der Standardsupport für die bestehende Version schon vor einem Jahr abgelaufen. Dies schafft Probleme bei Test- und Produktivumgebungen, die aus diesem Grund 5.7+ erwarten.
Es gibt inzwischen einen Termin die das Rollout von MySQL 5.7
In KW 38 (konkret 17.-20.9.2019) soll im Rahmen eines allgemeinen Serverupdates 5.7 auf die Server. Infos folgen auch per E-Mail noch.
Das Thema PHP-Versionen (insbesondere aus Sicht der Performanz) beschäftigt mich seit längerem mit höherer Priorität.
Die bislang verfolgte Praxis mit einem Standardmodul (aktuell in 12/2019 PHP 7.1) mit ergänzenden CGI-Varianten (aktuell 7.2 und 7.3) hat etwas an Dynamik verloren.
Grund: Die als Modul implementierte Version 7.1 wird nach offiziellen Angaben seit dem 01.12.2019 planmäßig nicht mehr mit Sicherheitsupdates gepflegt (seit 3 Jahren im Einsatz).
Wie sieht die nahe Zukunft diesbezüglich bei Goneo aus? („Fahrplan“ der zukünftig eingesetzten Versionen; an anderer Stelle wurde auch die technische Einbindung via FPM im Blog diskutiert)
PS: Ein anderer innovativer Gesichtspunkt wäre die Ausweitung des Einsatzes von schnellen SSDs anstelle der HDDs. Andere Hoster bieten die Möglichkeit an, sich als Kunde zwischen einer schnellen SSD mit aus Kostengründen geringerem Speicherplatz und einer langsameren HDD zu entscheiden.
Ich als Nutzer präferiere eindeutig den schnelleren Massenspeicher. Gibt es hierzu generell schon Überlegungen?
In Kalenderwoche 10 (2020) wird es ein größeres Serverupdate geben, mit dem auch PHP 7.4 bereit gestellt wird.
goneo unterstützt dann PHP 7.2, 7.3 und 7.4. Die Standardversion wird PHP 7.3 sein.
Die Einbindung per FPM wurde intern hier diskutiert. Aber ich gehe davon aus, dass dies nicht mit dem KW10-Update realisiert wird. Es bleibt also zunächst bei einer Unterscheidung der Einbindung als CGI und Apache-Modul. Die „Modulversion“ wird demnach PHP 7.3 sein und per .htaccess kontrollierbar sein. Die CGI-Versionen konfiguriert man mit der .ini-Datei.
Bei goneo kommen, soweit hier bekannt ist, nur noch SSD zum Einsatz.