Hallo,
ich würde gerne mal einen allgemeinen Thread zum Thema Tuning/ Performance eröffnen und hoffe, dass auch Paresy etwas dazu sagt, denn ich denke, dass das Thema von allgemeinem Interesse ist - das zeigt ein Stück weit die Diskussion um SSD’s mit denen man IPS versuchte schneller zu machen (und im Ergebnis nur ein „leiser“ zu erwarten scheint).
Natürlich kann man sagen, dass ein Supersystem mit 10.000er Festplatte, vielleicht riesen SSD, Speicher und möglichst schnellem Prozessor „alle Probleme beseitigt“.
Andererseits habe ich bis heute zu wenig über die IPS Interna heraus bekommen und bei vielen Benchmarks, die ich gemacht habe, teilweise vor der Mühle sitzend, teilweise per Timer alle paar Sekunden automatisch gefahren, konnte ich mangels der regelmässigen Ausreisser noch immer keine wirkich belastbaren Erkenntnisse gewinnen.
Selbst Scripte mit „echo hello“-Qualität haben bewegen sich im Bereich von 1ms bis 20ms.
Auch bei Versuchen, Daten, die immer gebraucht werden und in einem Array stecken sollen, via Include (Script), INI-Read oder JSON zu laden ergaben nie wirklich belastbare Werte (im Sinne von nachvollziehbar gleich in den Werten) her.
Selbst die Versuche, solche Dateien auf einer Ram-Disk abzulegen und zu laden, haben nicht so richtig was gebracht. Wegen der Streuung der Werte konnte kein eindeutiger Gewinner ausgemacht werden.
Frage also an den Hersteller:
Wo sind denn die Tuning Potenziale (mal von einem einigermaßen vernünftigen Code ausgegangen) für den Betrieb (ich klammere mal den Startup-Prozess aus)?
Arrays vs. Variablen?
Standarddaten (nehmen wir mal 1kB an „Systemparameter“) in Includes / INI’s oder Variablen?
Include vs. IPS_RunScript?
Viele kleine Dateien vs. einer großen (sprich 1k vs. 10k)?
Viele Extensions vs. wenige Extensions?
RamDisk / SSD / Speicher / Taktfrequenz?
Kerninstanten?
Wie wirken sich viele Instanzen aus?
Mehrere Sockets plus Modifikation der IP/Ports durch ein Skript vs. mehrere Socket Instanzen mit „fixen“ Werten?
Vielleicht könnten auch ein paar Hinweise gegeben werden, wie der PHP Server in IPS integriert ist, wie da ein Script Aufruf zustande kommt etc.?
Und natürlich wäre ich für Tipps dankbar, wie am sinnvollsten der eigene Code auf Effizienz getestet werden kann. Denn für „native PHP“ gibt es da ja einiges, aber wie solches in IPS nutzen?
Bin sehr gespannt!
jwka