Ich weiß nicht viel über PHP. Ich möchte nur mein eigenes kleines Projekt implementieren. Die einfache Entwicklung ist für mich wichtiger.
Antwortinhalt:
In Bezug auf die Leistung ist Swoole in einigen Bereichen wie Speicherverwaltung, Datenstruktur und Kommunikationsprotokollanalyse definitiv besser als Workerman, das von PHP entwickelt wurde.
Funktionell bietet Swoole viele erweiterte Funktionen, die Workerman nicht hat, wie z. B. SSL/TLS-Tunnelverschlüsselung, http2.0, asynchroner MySQL-Treiber, asynchroner Redis-Treiber, asynchroner http/Websocket-Client, Prozess, Sperre, atomar, Tabelle. Darüber hinaus verfügt Swoole 2.0 über integrierte Unterstützung für die nativen Coroutinen von PHP. PHP-Code kann auch Coroutinen ähnlich der Go-Sprache verwenden, um Netzwerkserver mit hoher Parallelität zu implementieren.
Für externe Abhängigkeiten muss sich Workerman auf viele zusätzliche PHP-Erweiterungen von Drittanbietern verlassen, was relativ große Einschränkungen mit sich bringt. Diese Erweiterungen werden nicht offiziell von PHP verwaltet und die Wartbarkeit ist gemischt von PHP7. Es wurde seit Jahren nicht mehr gepflegt. Swoole hat grundsätzlich keine Abhängigkeiten und der gesamte zugrunde liegende Code ist steuerbar.
In Bezug auf Entwicklung und Wartung besteht das Entwicklungsteam von Swoole derzeit aus etwa 18 Mitarbeitern. Die Entwickler stammen im Wesentlichen aus inländischen erstklassigen Internetunternehmen wie Tencent, Baidu, Alibaba, Didi, Weibo usw. Das Team, das Unterstützt die Wartung ist stabiler.
Der Vorteil von Workerman besteht natürlich darin, dass es vollständig mit PHP-Code implementiert ist und Entwickler seinen Quellcode direkt einsehen können. Wenn Sie spezielle Anforderungen haben, können Sie den Quellcode auch direkt ändern, um diese zu implementieren. Es ist nicht so einfach, wenn man auf Swoole umsteigt. Workerman macht mehr Dinge, einschließlich Frameworks, Tools und Komplettlösungen. Für Programmierer, die nicht über große Back-End-Programmierkenntnisse verfügen, wird es tatsächlich viel einfacher sein. Swoole ist eigentlich nur eine Low-Level-Bibliothek und kein vollständiges Produkt, das verwendet werden kann. Es gibt viele PHP-Frameworks und -Programme, die auf Swoole basieren, wie z. B. tsf, zan php Framework, hprose-swoole, zphp, swoole/framework, blink, dorarpc, SwooleDistributed usw. usw. Normale Entwickler können direkt auf der Grundlage dieser Projekte entwickeln.
Swoole ist für Experten. Der Schwellenwert ist relativ hoch und erfordert tiefe Kenntnisse der Benutzer. Es gibt keine Möglichkeit, Ihre Frage zu beantworten, welche Lösung einfacher zu entwickeln ist. Es hängt davon ab, was Sie entwickeln möchten und von der tatsächlichen Situation des Teams oder der Einzelperson. Die geeignete Lösung ist die beste.
Wie jemand oben sagte, wird Swoole definitiv eine wesentliche Fähigkeit für PHPer werden.
In Zukunft werden Anwendungen immer mehr Interaktionen verwenden, und es wird für PHP schwierig sein, mitzuhalten. Der niedrige Schwellenwert und die hohe Entwicklungseffizienz von PHP werden jedoch immer noch eine große Anzahl von Anwendungen beibehalten. Und Swoole kann die Mängel von PHP sehr gut beheben.
Wenn Sie Schwierigkeiten haben, swoole direkt zu verwenden, können Sie hprose-swoole verwenden, sodass Sie sich nur auf die Geschäftsimplementierung konzentrieren müssen und sofort sprach- und plattformübergreifende Funktionen nutzen können.
Benutze Swoole. Als technologische Verbesserung. Wie Boss Han sagte: Swoole ist für Meister. Wollen Sie kein Meister werden? Oder wollten Sie schon immer Quark machen?
Ich hatte auch Schwierigkeiten, mich zwischen diesen beiden zu entscheiden? Es ist sehr cool, sich das Beispiel auf der offiziellen Website von Workerman anzusehen. Ich habe es auch heruntergeladen und ein paar Tage lang gespielt. Danach war es nichts mehr.
Später wechselte ich dazu, Swoole zu lernen. Ehrlich gesagt inspiriert sie mich dazu, weiter zu lernen. . Wenn Sie etwas nicht verstehen, suchen Sie schnell nach dem offiziellen Wiki oder googeln Sie es, wenn es nicht existiert. Bis du es herausgefunden hast. .
Aus der Perspektive meiner eigenen Entwicklung und der Erweiterung und Leistung in den späteren Phasen des Projekts denke ich, dass Swoole eine notwendige Fähigkeit ist. Unser Unternehmen hat Swoole in verschiedenen Unternehmen aller Größen ausgiebig eingesetzt, ohne dass es zu Unannehmlichkeiten kam. Swoole empfehlen.
Die Dokumentation von Workerman ist sehr gut und enthält viele Beispiele. Ich denke, Workerman ist einfacher zu starten und viel stabiler als Swoole.
Persönliche Meinung.
Wenn Sie schnell loslegen möchten, verwenden Sie Workman, wenn Sie tiefer gehen möchten, verwenden Sie Swoole.
Die Swoole-Dokumentation ist ziemlich verwirrend. Es wird empfohlen, Workerman zu verwenden, da das Erlernen sonst lange dauern wird.
Es ist einfacher, „Arbeiter“ zu entwickeln und auszuwählen.
Als ich Anfang des Jahres an einem Projekt zur Interaktion mit der WeChat Html5-Seite und dem großen Bildschirm arbeitete, stieß ich auf Swoole und Workerman. Nachdem ich das Dokument gelesen hatte, wählte ich „Workerman“. wirklich einfach zu entwickeln!
Ich war noch nie mit Workman konfrontiert, aber ich habe das Gefühl, dass es sehr gut ist und die Funktion sehr leistungsfähig ist. Wenn die Funktion, die Sie implementieren möchten, nicht problematisch ist, kann Swool auch implementiert werden einfach, swool wird empfohlen.