MENU
カタログクリップ
本ページはプロモーションを含みます。

mysqlで同時接続可能数に余裕があっても同時接続できないのはクッキーが原因かも!

2020 6/28
広告
コンピューター
2017年5月23日2020年6月28日

ブラウザ+apache + php + mysql 環境において、mysqlの同時接続可能数には余裕があるのに、ブラウザで同時接続できない!ということが起こり、原因を調べてみましたので紹介します。

これは実はブラウザのクッキーが原因であって、ブラウザを介せずmysqlやapacheを叩いてみると同時接続できるのでした。

目次

同時接続できるかのテストコード

次のようなmysqliで mysqlへ接続するfoo.phpプログラムを設置し、ブラウザで5秒以内に数回アクセスしてみます。

<?php
$config = parse_ini_file('./shared/config.ini');
$mysqli = mysqli_connect($config['host'], $config['username'], $config['password'],
 $config['dbname'], $config['port']);
sleep(5);

$mysqli->close();
echo date(DATE_RSS);

すると、5秒間隔で応答が返ってきてしまい、同時接続できていないことがわかります。

また、同様にこのプログラムが走っている間は、mysqladminにアクセスしても読み込みが止まってしまいアクセスできません。

 

apacheやmysqlの同時接続数は1よりもずっと多くしてあってもこれが起こります。(IntelliJ IDEAのbuilt-in serverを使っている場合は、その同時接続数が1であるせいかもしれませんが。)

なぜでしょうか。

php+mysqlのみでテスト

原因を切り分けるために、まずターミナルから、php foo.php & をやはり5秒以内に数回実行してみます。これにより、apacheを通さずにmysqlへ接続することができます。

すると、5秒以内に応答が返ってきました。

このことから、mysqlへは同時接続可能であり、それが原因で読み込みがブロックされているわけではないということが分かります。

curl+apache+php+mysqlでテスト

では、apacheのせいなのでしょうか。ブラウザのせいかもしれません。では、ターミナルから、curlを使って curl http://localhost/foo.php へ5秒以内に数回アクセスしてみます。これにより、ブラウザの影響を排除してアクセスすることが出来ます。

すると、5秒以内に応答が返ってきました。

このことから、apacheも同時接続可能であることがわかります。

まとめ

つまり、ブラウザが原因だとわかりました。

 

stackoverflowでも議論がなされていました。

http://stackoverflow.com/questions/16370343/a-php-file-using-sleep-function-cannot-run-simultaneously

ブラウザのクッキーが原因であるということです。

 

自分のプログラムを走らせているときにphpmyadminを見ることができない、というときには、別のブラウザでアクセスしてみると良いかもしれません。

以上、apache + php + mysql で同時接続数には余裕があるはずなのに同時接続できない?でした。

 

コンピューター
highlightjs

関連記事

  • Archer BE550とArcher BE450の7つの違い [TP-Link Wi-Fi 7ルーター]
    2025年8月30日
  • Archer BE7200とArcher BE450の3つの違い [TP-Link Wi-Fiルーター]
    2025年8月30日
  • Archer BE3600とArcher BE220の2つの違い [TP-Link Wi-Fiルーター]
    2025年8月30日
  • G-PKB-002LNdとG-PKB-002LNの2つの違い [Logicool G キーボード]
    2025年8月30日
  • KX700GRdとKX700GRの4つの違い [ロジクール ワイヤレスキーボード]
    2025年8月30日
  • G-PPD-004WL-BKd と G-PPD-004WL-BKの2つの違い [Logicool ゲーミングマウス]
    2025年8月30日
  • SSD-CK1.0N4PLG3NとSSD-CK1.0N4PLG3Jの1つの違い [KIOXIA 内蔵SSD]
    2025年8月30日
  • KX700GRdとKX700GRの2つの違い [ロジクール キーボード]
    2025年8月30日
カテゴリー
  • コンピューター
    • gnuplot & eps
    • mac
    • matplotlib
    • wordpress
  • ホーム・家電
    • アイロン
    • オーディオ
    • オーラルケア
      • ジェットウォッシャー
      • 音波振動歯ブラシ
    • カメラ
    • カー用品
    • キッチン
      • 冷蔵庫
      • 浄水器
      • 炊飯器
      • 調理器具
      • 電子レンジ
    • クリーナー
    • テレビ、レコーダー
    • ドアホン
    • ルンバ
    • 一覧比較
    • 工具
    • 温水洗浄便座
    • 空気清浄機・加除湿機
    • 空調・季節家電
    • 美容家電
      • フェイスケア
      • ヘアケア
      • ボディーケア
      • メンズ美容家電
        • ラムダッシュ
    • 血圧計
  • 健康
  • 家事
    • パン
    • 料理
    • 育児
    • 食品
      • おせち
      • コーヒー
  • 書籍
  • 知識
  • 趣味
    • ペン字
    • ロードバイク・クロスバイク
    • 車
    • 鉄道模型
    • 電子工作
サイト内検索
最近の投稿
  • MC-PJ24GとMC-PJ23Gの4つの違い [パナソニック 紙パック式掃除機]
  • MC-PJ240GとMC-PJ230Gの2つの違い [パナソニック キャニスター掃除機]
  • MC-JP880KとMC-JP870Kの1つの違い [パナソニック 紙パック式キャニスター掃除機]
  • LC551JBKとLC501JGYの1つの違い [Shark コードレススティッククリーナー]
  • LC400JWH とLC200JIV の2つの違い [Shark コードレススティッククリーナー]
  • LC250JBRとLC200JIVの2つの違い [Shark コードレススティッククリーナー]
  1. ホーム
  2. コンピューター
  3. mysqlで同時接続可能数に余裕があっても同時接続できないのはクッキーが原因かも!
  • ホーム
  • プライバシーポリシー

© カタログクリップ
contact@beiznotes.org

目次