ホームページ >PHPフレームワーク >Laravel >Laravel-S は実際にこのような高いパフォーマンスを向上させることができます。

Laravel-S は実際にこのような高いパフォーマンスを向上させることができます。

藏色散人
藏色散人転載
2020-07-01 13:26:256370ブラウズ

以下は、#Laravel のチュートリアルコラムで、Laravel-S の高性能性を紹介します。

Laravel-S は実際にこのような高いパフォーマンスを向上させることができます。

最近、同社は、laravel に基づいた二次開発プロジェクトを引き受けました。顧客は、高い同時実行性に対する比較的高い要件を持っています。従来の laravel プロジェクトのテストの展開では、その後、

Laravel-SSwooleLaravel または Lumen に迅速に統合できることが判明しました。それならもっと良いパフォーマンスをあげようと思い、試してみましたがダメでした。結果は予想以上で、パフォーマンスが大幅に向上し、お客様にも大変満足していただきました。

次は具体的なプロセスです:

1.依存関係の導入

composer require hhxsv5/laravel-s

2.

.env ファイルの構成

APP_NAME=test
APP_ENV=local
APP_KEY=base64:QXu20Ct+XlvGEnSmVzrUPXjwGARbb9R6kNo4bj5Ibps=
APP_DEBUG=false
APP_URL=https://xxx.com/

LOG_CHANNEL=stack

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=database
DB_USERNAME=root
DB_PASSWORD=root

BROADCAST_DRIVER=log
CACHE_DRIVER=file
QUEUE_CONNECTION=sync
SESSION_DRIVER=file
SESSION_LIFETIME=120

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null

AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=

PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_APP_CLUSTER=mt1

MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"

JWT_SECRET=Muw2TYybFUCKxxQLcfwJB6qFMrGbUmP1uYqTCa9g9ziceE3bYz9ePM7eJOw1Reyu

3. 構成とバイナリをリリースします。ここで注意すべき点がいくつかあります。ルーティングまたはその他の構成ファイルを変更し、キャッシュをクリアして構成キャッシュを再生成する必要がある場合は、

php artisan cache:clear
php artisan config:cache

構成ファイルとバイナリ ファイルをリリースします。

php artisan laravels publish

4。

php bin/laravels start

5 を実行します。nginx

gzip on;
gzip_min_length ;
gzip_comp_level ;
gzip_types text/plain text/css text/javascript application/json application/javascript application/x-javascript application/xml application/x-httpd-php image/jpeg image/gif image/png font/ttf font/otf image/svg+xml;
gzip_vary on;
gzip_disable "msie6";
upstream swoole {
    # 通过 IP:Port 连接
    server  weight= max_fails= fail_timeout=30s;
    # 通过 UnixSocket Stream 连接,小诀窍:将socket文件放在/dev/shm目录下,可获得更好的性能
    #server unix:/xxxpath/laravel-s-test/storage/laravels.sock weight= max_fails= fail_timeout=30s;
    #server  weight= max_fails= fail_timeout=30s;
    #server  backup;
    keepalive ;
}
server {
    listen ;
    # 别忘了绑Host哟
    server_name laravels.com;
    root /xxxpath/laravel-s-test/public;
    access_log /yyypath/log/nginx/$server_name.access.log  main;
    autoindex off;
    index index.html index.htm;
    # Nginx处理静态资源(建议开启gzip),LaravelS处理动态资源。
    location / {
        try_files $uri @laravels;
    }
    # 当请求PHP文件时直接响应404,防止暴露public/*.php
    #location ~* \.php$ {
    #    return 404;
    #}
    location @laravels {
        # proxy_connect_timeout 60s;
        # proxy_send_timeout 60s;
        # proxy_read_timeout 120s;
        proxy_http_version 1.1;
        proxy_set_header Connection "";
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Real-PORT $remote_port;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_set_header Scheme $scheme;
        proxy_set_header Server-Protocol $server_protocol;
        proxy_set_header Server-Name $server_name;
        proxy_set_header Server-Addr $server_addr;
        proxy_set_header Server-Port $server_port;
        proxy_pass http://swoole;
    }
}

で使用します。

以上がLaravel-S は実際にこのような高いパフォーマンスを向上させることができます。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。