Es gibt eine lange Diskussion über den Leistungsvergleich zwischen PhpRedis und Predis. In diesem Artikel werde ich Ihnen vorstellen, wie Sie die Leistung dieser Bibliotheken basierend auf dem beliebtesten Framework Laravel messen können.
PhpRedis ist eine PHP-Erweiterung für die Kommunikation mit Redis-Speicher. (Verwandte Empfehlungen: Redis Tutorial)
Predis ist eine Alternative zu PhpRedis auf reinem PHP, die standardmäßig keine zusätzlichen C-Erweiterungen erfordert, aber optional mit phpiredis gekoppelt werden kann.
Ich habe diese beiden Bibliotheken mit hochlastigem Projektcode mit etwa 10.000 Online-Benutzern getestet.
Testumgebung:
Betriebssystem: Ubuntu 18.04.2 LTS x86_64
CPU: Intel i7-6820HQ (8) @ 3.600GHz
Speicher: 32 GB
PHP: v7.2.15
Laravel: v5.7.25
MySQL: MySQL v5.7
Redis: v5.0.3
PhpRedis: v4.2.0
Predis: v1.1.1
Das Skript generiert einen Cache aus der Datenbank und speichert das überzeugende Modell in Redis.
Standardmäßig unterstützt Laravel keine benutzerdefinierten Serialisierer für Redis, aber ich habe das Laravel Lodash-Paket verwendet, um dies zu erreichen.
Ergebnis:
Predis (serializer: php) Execution time: 00:05:53.0355 Cache storage used: 936.92MB — — — — — — — — — — — — — — — — — — Predis (serializer: igbinary)Execution time: 00:07:45.2460 Cache storage used: 342.66MB — — — — — — — — — — — — — — — — — Predis (serializer: igbinary, with ext-phpiredis)Execution time: 00:07:51.9046 Cache storage used: 342.66MB — — — — — — — — — — — — — — — — — PhpRedis (serializer: php)Execution time: 00:01:36.9863 Cache storage used: 936.75MB — — — — — — — — — — — — — — — — — PhpRedis (serializer: igbinary)Execution time: 00:01:37.3176 Cache storage used: 342.66MB
Hinweis:
Execution time:执行时间 Cache storage used:缓存存储
Fazit:
Die Geschwindigkeit von PhpRedis beträgt ca x6 mal. Durch die Verwendung des igbinary-Serialisierungsprogramms kann die Größe der gespeicherten Daten um etwa das Dreifache reduziert werden. Wenn Sie Redis auf einem anderen Computer installieren, wird die Reduzierung des Netzwerkverkehrs die Arbeit erheblich beschleunigen.
Das obige ist der detaillierte Inhalt vonLeistungsvergleich zwischen PhpRedis und Predis (Beispiel). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!