問題タブ [apc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - パスによるapc.filters?
特定のパスをキャッシュしないようにするには、APCオペコードキャッシングでapc.filtersパラメーターをどのように使用しますか?たとえば、次のパスの下にあるすべてのものに対してキャッシュをアクティブにします。
"/ var / www / vhosts"
次のようなパスを除外します
"/ usr / share / psa-horde /"
使ってみました
と
しかし、どちらも私が期待したようには機能しませんでした。
http://www.php.net/manual/en/apc.configuration.php#ini.apc.filters
フィルタは「+/var / www / vhosts / *」(ワイルドカードに注意)のようなものにする必要がありますか?フィルタの動作方法が原因で、これは不可能だと思います。
照合に使用されるファイル名は、絶対パスではなく、include/requireに渡されるファイル名であることに注意してください。
アイデアやサンプル構成はありますか?
apache - Zend Framework の最適化、tcpsndbuf & kmemsize
Zend Framework を使用してメディア テンプルの中間層 DV Rage サーバーを使用していますが、Virtuzzo でかなり一貫して QoS 警告を受け取っています。先週は、APC のインストール (完全に微調整)、mysql と apache の微調整 (多くは Media Temple が推奨)、フロントエンド gzip、Zend_View
キャッシング、および Zend マニュアルで推奨されているすべての最適化手法のインストールに費やしました。この時点で、kmemsize の問題はほぼ解決したと思いますが、まだ tcpsndbuf の警告が表示されており、どうすればよいかわかりません。私たちのトラフィックは 1 日あたり約 1000 のユニークであり、それをサポートできないとは信じられません。MTはメモリに「けち」のようで、このすべての作業の最適化の後、答えは「メモリを追加/アップグレード」のようです
- 「サーバーごっこ」をやめて、クライアントに実際の専用サーバーの推奨を開始する必要がありますか?
- Zend Framework ベースのサイトを実行するために必要なメモリの量について、何か推奨事項はありますか?現在の「1 GB の専用 RAM」(マーケティングに記載されている内容) を想定していますか?
質問が多いことは承知していますが、私たちは頭がいっぱいで、「サーバー」よりも「コード」の方が多いのです (これがばかげているように聞こえた場合は、事前に謝罪してください)。:)
編集。さて、512MB のうち、(mt) は 13MB を kmemsize に割り当てました。これは案外低いですか?って感じです。
php - apc_store() が false を返すのはなぜですか?
php.net のドキュメントは、APC 書き込みの失敗の原因について非常にむらがあります。apc_store() の呼び出しが失敗するのはどのようなシナリオですか?
利用可能なディスク容量は十分にあり、障害はむらがあります。保存操作が成功する場合もあれば、失敗する場合もあります。
php - Alternative PHP Cache(APC)のロックメカニズムを変更するにはどうすればよいですか?
最近、Scribdのプレゼンテーションで、Facebookがファイルロック(デフォルト)、IPCセマフォロック、Linux Futexロック、pthreadミューテックスロック、スピンロックなどのAPCのさまざまなロックメカニズムのベンチマークを行ったことを読みました。次のリンクをクリックすると、このプレゼンテーションを表示できます:APC @ Facebook
このソースコードのいずれかが、おそらくgitまたはSVNリポジトリのどこかにリリースされているかどうか、誰かがすぐに知っているかどうか疑問に思いました。デフォルトのファイルロックから他の選択肢の1つに切り替えることによる速度の利点は重要であるように思われます。
php - PHP、MYSQLコミュニティのWebサイトのパフォーマンスを最適化する
私は約12.000ユーザー(書き込みが多い)のコミュニティWebサイトを所有しており、1GbRAMを備えた単一のVPSで最大100人の同時ユーザーがいます。負荷が3を超えることはめったになく、応答は非常に良好です。
現在、DBクエリ結果を保存するために単純なファイルキャッシュが使用され、DBの負荷が軽減されていますが、Webサイトでは220を超える同時ユーザーの速度が低下する可能性があります(負荷テスト)。
ボトルネックが何であるかをどのように知ることができますか?
キャッシュは正常に機能しているのでDBは正常だと思いますが、ディスクIOが問題を引き起こす可能性があります。各ページロードには、DBまたはファイルキャッシュからの約10個のインクルードと10〜20個のクエリに加えて、多くのphp処理が含まれています。
ファイルキャッシュの代わりにmemcacheを使用してみましたが、驚いたことに、負荷テストではファイルキャッシュの方が好きだったようです。
代替PHPキャッシュを使用する予定ですが、そのキャッシュがどのように無効化されるのかまだよくわかりません。私はすべてのリクエストを処理する単一のindex.phpを持っています。キャッシュは個々のリクエストの結果を保存しますか?インクルード(またはキャッシュからのクエリ結果)の1つが変更された場合、キャッシュは自動的にクリアされますか?
ボトルネックを見つけるための他の提案(xdebugを試しました)?
ありがとう、ハムレット
php - 入力ボタンからフォームを送信したときに xhrPost を取得できません。気が狂いそうです
それはかなり長い、テキストの壁の下の TLDR バージョンです。
セットアップ: 当社はしばらくプロトタイプを使用していましたが、最近道場に切り替えました。私はたくさんの JS を変換し、すべてを通常の状態に戻していましたが、この問題が発生しました...
問題: アップロード ファイル フィールドを設定した典型的なフォームがあります。(私は dijit を使用しておらず、それらの複数のバリエーションを試しました - おそらく 1.4 でうまくいかないので、もう一度試してみます。) 送信ボタンを押すと、私の意図はファイルのアップロードの進行状況を監視することでした。単純な ajax.PeriodicalUpdater 呼び出しでした (これは基本的に、何度も何度も実行される xhrGet/Post です)。apc.rfc1867 (例: http://www.phpriot.com/articles/php-ajax-file-uploads/3 ) と組み合わせると、これは非常に簡単になります。基本的には投稿し、ajax を使用してファイルの現在の進行状況を取得します。 .
ここで実際の問題が発生します...フォームが「送信モード」と呼ばれるもの(ページがスプールおよびアップロードされる場所)に入った後、xhrPost()は実行したくないようです。APC は、現在の進行状況をポーリングし、ajax 経由で % を返すために、実際にはファイルを「送信モード」にする必要があります。
私が試したこと:部分的に機能したのは1つだけです。onclick="" を使用して xhrPost() を呼び出すと、すぐに return false; が続きます。これに関する問題は、実際に機能させる唯一の方法は、送信ボタンをクリックしてから、falseを返す別の送信ボタンをクリックすることだったということです...これが機能した理由は、通常の送信を開始したことです。アップロード プロセスは、xhrPost() と return false; を送信しました。アップロードが再開された可能性がありますが、APC データがプログレス バーに入力されていたことは確かです。残念ながら、これには 2 回のクリックは必要ありません。また、ページの送信も完了していません。
ボタンまたはフォームに dojo.connect() を使用してもほとんど成功しませんでした。
false を返さない限り、onclick="" を使用してもほとんど成功しませんでした。存在します。
dojo.io.iframe を使用して別のリクエストを送信することにほとんど成功していません。
私は dojox.file.FileUpload を使用してほとんど成功しておらず、それ自体の問題も多数あります。
コード スニペット:
古いコード:
新しいコード:
APC の取り扱い:
}
TLDR バージョン: アップロードするファイルを含むフォームを送信し、同時に xhrPost() を送信する方法が必要ですが、何も試してもうまくいきません。他の唯一の変数は、アップロードしようとしているファイルについて APC が認識している必要があり、イベントを停止すると、これが完全に妨げられるように見えることです。
php - PHP APC の複数アップロードが機能しない
PHP APCを使用して、wamp、windows2003にファイルをアップロードしようとしました。ただし、2 つ以上のアップロードが同時に機能している場合、1 つのアップロードのみが機能しています。
このエラーが発生しているのは私だけではないようです: http://pecl.php.net/bugs/bug.php?id=13719
この問題を解決するにはどうすればよいですか?
前もって感謝します!
php - APC キャッシュは、fastcgi/fcgid として実行されている複数の PHP プロセス間で共有できますか?
PHP が fcgid として実行されている LAMP ボックスを実行しています。APC がインストールされ、正常に動作しています。ただし、各 PHP プロセスは独自のキャッシュを取得します。それぞれ冗長な 30MB の非共有 APC キャッシュを持つ 10 個の PHP プロセスよりも、300MB の共有 APC キャッシュを持つ 10 個の PHP プロセスを持つ方がはるかに理にかなっているからです。
8 か月前にこのトピックに関する前のスレッド ( FastCGI で実行しているときに複数の PHP プロセス間で APC キャッシュを共有する方法は? ) があり、それ以来、この分野で何か進展があったかどうか疑問に思っています。
php - PHP バージョン 5.2.11 (Windows 上) の APC dll はどこにありますか?
Windows マシンに適した APC DLL を見つけようとしています。これまでに試したことはすべて、Apache をクラッシュさせます。ソースからのコンパイル (私は本当にやりたくない) を除いて、私は行き止まりになったようです。
詳細は次のとおりです。
OS: XP
PHP: php-5.2.11-win32-vc6
php - クラスsfconfigを再宣言できません
Windows XPでPHPバージョン5.2.11でSymfony(1.2.9)を実行しています。
APCをインストールしました(バージョン3.0.19)
PHPスクリプトを実行して、apcが正しく機能している(機能している)ことを証明できます。ただし、symfonyアクションでAPC呼び出しを使用しようとすると、次のエラーが発生します(apache error.logファイル内)。
[apc-error]クラスsfconfigを再宣言できません
これはすぐにApacheをクラッシュさせます。
Symfony sfAPCCacheラッパーを使用して、apc_*関数を直接呼び出してみました。結果は同じです。なぜこれが起こっているのか誰かが知っていますか?