
お世話になります。
現在、php等でwebシステムを作成しております。
ローカルネットワーク内にサーバをたて、そこに接続して開発を行っているのですが、javascript処理やAjax処理を多数使用しているページを何回か読み込むと、cssが崩れ、Ajax関連のレスポンスがないといったエラーが頻発していしまいます。
Fiddlerでエラーを確認してみたのですが、502エラーとなっており、画像読み込み時のでエラーが多いようです。
また、直接関係するかどうかはわからないのですが、「通常、各ソケット アドレスに対してプロトコル、ネットワーク アドレス、またはポートのどれか 1 つのみを使用できます。」といったエラーが出力されていました。
開発環境は以下の通りです。
Centos5.5
apche2.2.3
PHP5.3.5
考えられることは調べてみたのですが、手詰まりしていました。
対応策等おわかりの方がいらっしゃいましたら、ご教授の程をお願いしたいと思います。
お手数おかけ致しますが、宜しくお願い致します。
No.3ベストアンサー
- 回答日時:
No.2です。
apacheのログを見てみて、接続数に引っかかっているようであれば要変更です。
この辺のサイトはいかがでしょう。
http://shoulder.jp/archives/006925.php
プログラム的な改善方法としては、Ajaxの処理を減らすというより、
Ajaxの「リクエスト数」を減らす必要があります。
処理ごとにAjaxでデータを引っ張るよりは、出来る限り一度で必要なデータを全部取得して、
Javascript側で成形して必要なデータを取得する方が安定します。
また、クライアント側(ブラウザ側)にも同時接続数制限が存在したと思いますので、
その辺りも注意する必要があるはずです。
基本はAjaxは同時に2つまでしか動かないようにすれば大丈夫だと思います。
また、jQueryとかの機能を使う場合は意識しなくてもうまい具合にやってくれたはずです。
そんな感じで如何でしょうか。
ご回答有難うございます。
現在Linuxのカーネルの設定などを行っていたのですが、やはりソースの見直しを行った方が良さそうですね。
また、apacheの設定などはデフォルトのままのものが多かったので、その方向からも少し調べてみたいと思います。
お忙しい中ご回答いただきまして、本当に有難うございました。
No.2
- 回答日時:
この内容だけで「これだ!」っていう回答は難しいかと思いますが、
以下の点は確認されているでしょうか。
cookieやキャッシュを毎回クリアしても同じ現象が起きますか?
⇒ cookieであれこれやっていると、再読み込み時に前のデータが悪さをしてどうこう、みたいな事があると思いますが、その辺はどうでしょう。
apacheのコネクションが全てタイムアウトして消えるまで待ってからやっても同じ現象が起きますか?
⇒ apacheの設定では同時接続数とか設定できたはずですが、Ajaxを多用すると意図せずコネクション数を大量に占有してしまう事があります。サーバ側で「netstat」とかで確認してみては如何でしょう。
そのシステムはサーバ何台構成ですか?
⇒ 複数台構成のシステムの場合、負荷テストをするとサーバ間連携がうまくいかない、なんてこともあります。PHP、CSS、JS、DB等は全て1台に乗せているという状態であれば気にする必要はありません。
以上、ご参考になれば幸いです。
この回答への補足
ご回答有難うございます。
>cookieやキャッシュを毎回クリアしても同じ現象が起きますか?
現状、IEの設定でクッキーやキャッシュはページを読み込む毎に新しく確認するような設定にしておりますので、問題はないかと思われます。
>そのシステムはサーバ何台構成ですか?
PHP、CSS、Javascriptに関しては同じサーバを使用しておりますが、DBサーバのみ、別サーバを使用しております。
>apacheのコネクションが全てタイムアウトして消えるまで待ってからやっても同じ現象が起きますか?
これかもしれません。
サーバで「netstat」コマンドを実行したところ、TIME_WAITが複数ありました。
対策としては、コネクションの最大数を増やすか、Ajaxで記述している処理をサーバ側の処理に書きかえるかといった対応の仕方になるのでしょうか?
お手数おかけして申し訳ありませんが、宜しくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) EXCELの外部データ取得ができない 1 2023/03/23 09:03
- Excel(エクセル) ネットワーク上のエクセルとリンクしている時にデータ更新をvbaで、refresh Allで行う場合の 2 2023/04/10 05:39
- 電子マネー・電子決済 QUICPayの登録ができない。 4 2023/06/10 10:57
- プリンタ・スキャナー キャノンmp490プリンター【エラー番号5400】で【プリンタートラブルが発生しました。電源を入れ直 2 2023/07/24 17:45
- その他(パソコン・スマホ・電化製品) 現在、Q-SL2を使用しています。Q-H1を接続しようとすると本体ソフトウェア確認中にエラーが発生し 1 2023/03/04 23:14
- FX・外国為替取引 MQL5にて謎のエラーが発生!だれか対処を教えてください! 1 2023/03/25 15:59
- その他(インターネット接続・インフラ) PCに関してのトラブル 2 2023/04/02 18:52
- IT・エンジニアリング 不具合の現状認識をしないプログラマって信用できる人? できない人? 8 2023/07/28 09:09
- その他(住宅・住まい) 日立エコキュートについて、 エラー32が頻発しています。ブレーカーを入れ直すことであ復旧し、お湯はま 3 2023/06/28 07:12
- Excel(エクセル) Excelを開くとエラーが出る 2 2022/10/03 16:13
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
GASでスプレッドシートの一番上...
-
正規表現で、特定の文字列を含...
-
Base64に変換したHTMLの<script...
-
入力フォームの値をQRコードで...
-
C言語のflagの使い方が分かりま...
-
1枚の画像をクリックすると複数...
-
VBA コンボボックスの値をスピ...
-
php コールバック関数
-
ナイトボットのAliasについて
-
これってなんの電話かわかりま...
-
VBAでクイズゲームの作り方
-
以下のURL入れますか?皆さんは↓
-
画像のドットの部分が抜けてい...
-
Chinapost こよパズルどう動か...
-
非同期通信で掲示板を作る際の...
-
非同期通信を使うタイミングが...
-
PYTHONのtkinterについて
-
Pythonのtkinterについて
-
Pythonを勉強する道のり
-
Pythonを無料(安価)で学ぶ方...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ajaxでhtmlを返して画面に描画…...
-
【Ajax】改行を含めたデータを...
-
ローカルネットワーク内での502...
-
innerHTMLで表示完了後に、Ajax...
-
jQueryの$.postの戻り値による...
-
データ受け渡しについて
-
Ajaxで最新の情報が取得できない
-
カーソルの動きに合わせてDBか...
-
HTMLでリアルタイムグラフを作...
-
ASP+IIS5.1+SQLServer
-
カウントダウンを表示
-
大量のデータを表として展開す...
-
JavaScript側でのXML作成の方法
-
Ajaxでpostした内容のresponse...
-
Response.Write(変数)
-
【JavaScript】confirmのボタン...
-
jsonテキストデータの並び替え...
-
ASP.NET(VB)VBソースからJavas...
-
HTMLでDBからデータを表形式で...
-
DirectXとOpenGLはどちらが動作...
おすすめ情報