
Einleitung
Was ist Swoft?
Swoft ist ein PHP-Hochleistungs-Microservice-Coroutine-Framework. Es wurde seit vielen Jahren verΓΆffentlicht und ist die beste Wahl fΓΌr PHP geworden. Es kann wie Go, ein eingebauter Coroutine-Webserver und ein allgemeiner Coroutine-Client sein und befindet sich unabhΓ€ngig von traditionellem PHP-FPM im Arbeitsspeicher. Es gibt Γ€hnliche Sprachoperationen fΓΌr Go wie die flexiblen Anmerkungen des Spring Cloud Framework.
Durch drei Jahre Erfahrung in der Ansammlung und in der Erforschung der Richtung hat Swoft Swoft zur FrΓΌhlingswolke in der PHP-Welt gemacht. Dies ist die beste Wahl fΓΌr das leistungsstarke Framework- und Microservices-Management von PHP.
Γber Tutorial
Ich schreibe Artikel von Swoft lernen, es kann jemandem helfen, Swoft einfach zu lernen
Github
Wenn Sie einige Probleme haben, kΓΆnnen Sie Ausgabe durch github einreichen.
https://github.com/swoft-cloud/swoft
Diskutiere
Sie kΓΆnnen das Problem hier besprechen.
Community diskutieren
Tutorial
Anforderungen
- Centos7 +
- PHP Composer
- Docker-ce
- Docker-komponieren
Installieren Sie die Anforderungen
Docker-ce auf Centos
udo yum install -y yum-utils \device-mapper-persistent-data \lvm2 sudo yum-config-manager \--add-repo \https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo sudo yum makecache fast sudo yum install docker-ce sudo systemctl enable docker sudo systemctl start docker sudo usermod -aG docker $USER newgrp - docker sudo systemctl restart docker
Docker-komponieren
su root curl -L https://get.daocloud.io/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose
Php
su root rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm yum -y install php71w-fpm
Komponist
su root curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composer
Verwendung
Projekt erstellen:
composer create-project swoft/swoft Swoft
Projektstruktur:
βββ app/ ----- root directory β βββ Annotation/ ----- annotation β βββ Aspect/ ----- aop β βββ Common/ ----- common util β βββ Console/ ----- command β βββ Exception/ ----- exception β β βββ Handler/ ----- exception handler β βββ Http/ ----- HTTP Demo β β βββ Controller/ β β βββ Middleware/ β βββ Helper/ ----- helper β βββ Listener/ ----- listener β βββ Model/ β β βββ Dao/ β β βββ Data/ β β βββ Logic/ β β βββ Entity/ β βββ Rpc/ ----- RPC Demo β β βββ Service/ β β βββ Middleware/ β βββ WebSocket/ ----- WebSocket Demo β β βββ Chat/ β β βββ Middleware/ β β βββ ChatModule.php β βββ Tcp/ ----- TCP Demo β β βββ Controller/ β βββ Application.php ----- Application β βββ AutoLoader.php ----- Autoloader β βββ bean.php βββ bin/ β βββ bootstrap.php β βββ swoft ----- entry file βββ config/ ----- config directory β βββ base.php β βββ db.php βββ public/ ----- public directory βββ resource/ ----- resource directory β βββ language/ β βββ view/ βββ runtime/ ----- runtime directory βββ test/ ----- unit directory β βββ bootstrap.php βββ composer.json βββ phar.build.inc βββ phpunit.xml.dist βββ .env ----- env config βββ docker-compose.yml βββ phpunit.xml.dist
Aktualisieren Sie docker-compose.yaml:
version: "3" services: redis: image: redis:alpine container_name: redis ports: - 6379:6379 volumes: - redisdb:/data - /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime swoft: image: swoft/swoft # for local develop command: php -S 127.0.0.1:13300 container_name: swoft-test environment: - APP_ENV=dev - TIMEZONE=Asia/Shanghai ports: - "18306:18306" - "18307:18307" - "18308:18308" volumes: - ./:/var/www/swoft mysql: image: mysql container_name: mysql-srv environment: - MYSQL_ROOT_PASSWORD=123456 ports: - "3306:3306" volumes: - mysqldb:/var/lib/mysql volumes: redisdb: mysqldb:
Starten Sie swoft mit Docker.
docker-compose up -d
Wenn Sie auf http://127.0.0.1:18306 klicken, wird die folgende Seite angezeigt .

Github
Wenn Sie einige Probleme haben, kΓΆnnen Sie Ausgabe durch github einreichen.
https://github.com/swoft-cloud/swoft
Diskutiere
Sie kΓΆnnen das Problem hier besprechen.
Community diskutieren