目次
回复内容:
ホームページ バックエンド開発 PHPチュートリアル 这个问题我已经纠结很久了:我的服务器和数据库都很不错,为什么网站运行这么慢?

这个问题我已经纠结很久了:我的服务器和数据库都很不错,为什么网站运行这么慢?

Jun 06, 2016 pm 08:35 PM
nginx php php-fpm ウェブサーバー サーバ

各位前辈,请你们帮忙:

服务器是阿里云ECS 1核1G 2M
数据库是阿里云RDS云数据库,速度非常快
系统是CentOS 6.5 64位
服务器是NGINX 1.6.2
PHP是5.4.38 已经安装了OPCache
网站程序是开源CMS,别人的网站基本都是秒开,所以程序没什么问题
我使用阿里云OSS储存静态文件,css、js等,速度也很快
ping一下域名基本都是在50ms
直接访问静态文件只需要100ms,所以Nginx是正常的

可是网站访问时候响应实在太慢太慢了,每点击一下都需要等待4s-5s才能返回结果,所以我坚信是PHP的处理速度太慢了,请问大神:

这种情况该如何配置、加速PHP呢?不要求像别人那样秒开了,至少不要这么差劲吧!

感谢!

回复内容:

各位前辈,请你们帮忙:

服务器是阿里云ECS 1核1G 2M
数据库是阿里云RDS云数据库,速度非常快
系统是CentOS 6.5 64位
服务器是NGINX 1.6.2
PHP是5.4.38 已经安装了OPCache
网站程序是开源CMS,别人的网站基本都是秒开,所以程序没什么问题
我使用阿里云OSS储存静态文件,css、js等,速度也很快
ping一下域名基本都是在50ms
直接访问静态文件只需要100ms,所以Nginx是正常的

可是网站访问时候响应实在太慢太慢了,每点击一下都需要等待4s-5s才能返回结果,所以我坚信是PHP的处理速度太慢了,请问大神:

这种情况该如何配置、加速PHP呢?不要求像别人那样秒开了,至少不要这么差劲吧!

感谢!

速度慢有很多种情况,比如

  1. DNS解析
  2. CDN(可能用了国外的cdn,也会导致很慢的)
  3. 服务器IO(阿里云的io做的不是很好,频繁的操作io,可能很慢)
  4. 数据库
  5. 当然跟访问用户的网络也有关系

可以仔细排查下。

使用 xdebug + webgrind 调试下你的 PHP 代码性能。看看代码阻塞在哪里了。比如 curl 访问其他站点阻塞了
xdebug: 获取函数的调用栈和调用时间
webgrind: 通过 web 界面展示 xdebug 的结果

你可以用Apache Bechmark 去测试下你的网站响应速度,看看是静态文件还是你的PHP处理速度慢,再决定下一步。

1.静态问题是否使用了CDN加速?
2.是否有静态化?
3.数据库是否合理建立了索引?
4.不妨发下你的网站地址,我们帮你把把脉?

参考这个

http://segmentfault.com/q/1010000002680980/a-1020000002681487

检查网页代码里是不是调用了google的东西,只要有就会很慢

升级服务器吧,1核 1G有点慢了。

我感觉,当所有外部环境都不是问题的时候,那就是事应该想想是不是自己的问题,我感觉,就是程序的问题。程序效率太低。

能否提供一下服务器ssh信息,我去围观围观。。。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHP:データベースとサーバー側のロジックの処理 PHP:データベースとサーバー側のロジックの処理 Apr 15, 2025 am 12:15 AM

PHPはMySQLIおよびPDO拡張機能を使用して、データベース操作とサーバー側のロジック処理で対話し、セッション管理などの関数を介してサーバー側のロジックを処理します。 1)MySQLIまたはPDOを使用してデータベースに接続し、SQLクエリを実行します。 2)セッション管理およびその他の機能を通じて、HTTPリクエストとユーザーステータスを処理します。 3)トランザクションを使用して、データベース操作の原子性を確保します。 4)SQLインジェクションを防ぎ、例外処理とデバッグの閉鎖接続を使用します。 5)インデックスとキャッシュを通じてパフォーマンスを最適化し、読みやすいコードを書き、エラー処理を実行します。

PHPの目的:動的なWebサイトの構築 PHPの目的:動的なWebサイトの構築 Apr 15, 2025 am 12:18 AM

PHPは動的なWebサイトを構築するために使用され、そのコア関数には次のものが含まれます。1。データベースに接続することにより、動的コンテンツを生成し、リアルタイムでWebページを生成します。 2。ユーザーのインタラクションを処理し、提出をフォームし、入力を確認し、操作に応答します。 3.セッションとユーザー認証を管理して、パーソナライズされたエクスペリエンスを提供します。 4.パフォーマンスを最適化し、ベストプラクティスに従って、ウェブサイトの効率とセキュリティを改善します。

nginxでクラウドサーバードメイン名を構成する方法 nginxでクラウドサーバードメイン名を構成する方法 Apr 14, 2025 pm 12:18 PM

クラウドサーバーでnginxドメイン名を構成する方法:クラウドサーバーのパブリックIPアドレスを指すレコードを作成します。 NGINX構成ファイルに仮想ホストブロックを追加し、リスニングポート、ドメイン名、およびWebサイトルートディレクトリを指定します。 nginxを再起動して変更を適用します。ドメイン名のテスト構成にアクセスします。その他のメモ:SSL証明書をインストールしてHTTPSを有効にし、ファイアウォールがポート80トラフィックを許可し、DNS解像度が有効になることを確認します。

Nginxが開始されるかどうかを確認する方法 Nginxが開始されるかどうかを確認する方法 Apr 14, 2025 pm 01:03 PM

nginxが開始されるかどうかを確認する方法:1。コマンドラインを使用します:SystemCTLステータスnginx(Linux/unix)、netstat -ano | FindStr 80(Windows); 2。ポート80が開いているかどうかを確認します。 3.システムログのnginx起動メッセージを確認します。 4. Nagios、Zabbix、Icingaなどのサードパーティツールを使用します。

PHPおよびPython:コードの例と比較 PHPおよびPython:コードの例と比較 Apr 15, 2025 am 12:07 AM

PHPとPythonには独自の利点と短所があり、選択はプロジェクトのニーズと個人的な好みに依存します。 1.PHPは、大規模なWebアプリケーションの迅速な開発とメンテナンスに適しています。 2。Pythonは、データサイエンスと機械学習の分野を支配しています。

Dockerでミラーを作成する方法 Dockerでミラーを作成する方法 Apr 15, 2025 am 11:27 AM

Docker画像を作成する手順:ビルド命令を含むDockerFileを書きます。 Docker Buildコマンドを使用して、ターミナルで画像を作成します。画像にタグを付け、Dockerタグコマンドを使用して名前とタグを割り当てます。

Nginxバージョンを確認する方法 Nginxバージョンを確認する方法 Apr 14, 2025 am 11:57 AM

nginxバージョンを照会できるメソッドは次のとおりです。nginx-vコマンドを使用します。 nginx.confファイルでバージョンディレクティブを表示します。 nginxエラーページを開き、ページタイトルを表示します。

nginxサーバーを開始する方法 nginxサーバーを開始する方法 Apr 14, 2025 pm 12:27 PM

NGINXサーバーを起動するには、異なるオペレーティングシステムに従って異なる手順が必要です。Linux/UNIXシステム:NGINXパッケージをインストールします(たとえば、APT-GetまたはYumを使用)。 SystemCtlを使用して、NGINXサービスを開始します(たとえば、Sudo SystemCtl Start NGinx)。 Windowsシステム:Windowsバイナリファイルをダウンロードしてインストールします。 nginx.exe実行可能ファイルを使用してnginxを開始します(たとえば、nginx.exe -c conf \ nginx.conf)。どのオペレーティングシステムを使用しても、サーバーIPにアクセスできます

See all articles