Skip to content

Commit 6296d37

Browse files
committed
改行や typo を修正
1 parent ff95ca3 commit 6296d37

File tree

1 file changed

+40
-39
lines changed

1 file changed

+40
-39
lines changed

features/persistent-connections.xml

Lines changed: 40 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,12 @@
88
<title>持続的データベース接続って何?</title>
99
<simpara>
1010
持続的接続は、スクリプトの実行終了時にも閉じられないリンクです。
11-
持続的接続が要求された時、PHPは(前もってオープンされたままになって
12-
いる)同じ持続的接続が既にオープンされていないかどうかを確認します。
13-
そして、存在する場合には、それを使用します。存在しない場合には、そ
14-
のリンクを作成します。'同じ'接続とは、同じホスト、同じユーザー名
15-
同じパスワード(利用可能な場合)でオープンされた接続のことを意味しま
16-
11+
持続的接続が要求された時、
12+
PHP は(前もってオープンされたままになっている)
13+
同じ持続的接続が既にオープンされていないかどうかを確認します。
14+
そして、存在する場合には、それを使用します。存在しない場合には
15+
そのリンクを作成します。'同じ'接続とは、同じホスト、同じユーザー名、
16+
同じパスワード(利用可能な場合)でオープンされた接続のことを意味します
1717
</simpara>
1818
<simpara>
1919
特性の接続を要求する方法はありませんし、
@@ -44,27 +44,27 @@
4444
Webサーバーを PHP と統合し、Webページを生成させる方法はふたつあります:
4545
</simpara>
4646
<simpara>
47-
最初は、CGI "ラッパー"としてPHPを使用する方法です。このように実行し
48-
た場合、PHPインタプリタのインスタンスは、Webサーバーに(PHPページに
49-
関する)ページがリクエストされる度に生成され、破棄されます。リクエス
50-
ト毎に破棄されるために、(SQLデータベースサーバーへのリンクのような)
51-
必要な全てのリソースは破棄される際にクローズされます。この場合、
52-
続的接続を使用することから得るものは何もありません。持続的接続は持
53-
続しないのです
47+
最初は、CGI "ラッパー"としてPHPを使用する方法です。このように実行した場合、
48+
PHP インタプリタのインスタンスは、Webサーバーに(PHPページに関する)
49+
ページがリクエストされる度に生成され、破棄されます。
50+
リクエスト毎に破棄されるために、(SQLデータベースサーバーへのリンクのような)
51+
必要な全てのリソースは破棄される際にクローズされます。この場合、
52+
持続的接続を使用することから得るものは何もありません。
53+
持続的接続は持続しないのです
5454
</simpara>
5555
<simpara>
5656
2番目は、最も一般的ですが、PHP を PHP-FPM か、
57-
マルチプロセスWebサーバー(現在はApacheのみが含まれます)
58-
のモジュールとして実行する方法です。
59-
マルチプロセスサーバーは、通常、実際にWebページを送信する複数のプロセス(子)
60-
を管理するプロセス(親)を有しています。リクエストがクライアントから
61-
来ると、親プロセスは、他のクライアントにすでに送信を行っていないク
62-
ライアントの一つに渡します。このため、同じクライアントが2番目のリク
63-
エストをサーバーに送信した際に最初のではなく他の子プロセスにより送
64-
信が行われる可能性があります
65-
持続的接続がオープンされているとき、SQL サービスにリクエストを行う
66-
それぞれのページは SQL サーバーへの確立された接続を再利用することが
67-
できます
57+
マルチプロセスWebサーバー(現在はApacheのみが含まれます)のモジュールとして実行する方法です。
58+
マルチプロセスサーバーは、通常、
59+
実際にWebページを送信する複数のプロセス(子)を管理するプロセス(親)を有しています。
60+
リクエストがクライアントから来ると、
61+
親プロセスは、
62+
他のクライアントにすでに送信を行っていないクライアントの一つに渡します。
63+
このため、
64+
同じクライアントが2番目のリクエストをサーバーに送信した際に最初のではなく他の子プロセスにより送信が行われる可能性があります
65+
持続的接続がオープンされているとき、
66+
SQL サービスにリクエストを行うそれぞれのページは、
67+
SQL サーバーへの確立された接続を再利用することができます
6868
</simpara>
6969
<note>
7070
<para>
@@ -103,31 +103,33 @@
103103
持続的接続は、SQLサーバーへ接続するオーバーヘッドが大きい場合には有効です。
104104
このオーバーヘッドが実際に大きいがどうかは様々な要因に依存します。
105105
例えば、データベースの種類、
106-
Webサーバーが動作するのと同じコンピューターで動作しているか、S
107-
QLサーバーを動作させているマシンの負荷、等となります。
106+
Webサーバーが動作するのと同じコンピューターで動作しているか、
107+
SQLサーバーを動作させているマシンの負荷、等となります。
108108
肝心なのは、接続のオーバーヘッドが高い場合、
109109
持続的接続は著しく効果があるということです。
110-
持続的接続は、SQLサーバーへの接続を要求するページをリクエスト毎に処理する
111-
代わりに子プロセスが動作中の間一回しかサーバーへの接続を行わないよ
112-
うにします。このことは、持続的接続をオープンしたプロセス毎にサーバー
113-
への持続的接続をオープンするということになります。例えば、20の異なっ
114-
た子プロセスがSQLサーバーへの持続的接続を行うスクリプトを実行した場
115-
合、各子プロセス毎にSQLサーバーへの20の異なった接続が行われます。
110+
持続的接続は、
111+
SQLサーバーへの接続を要求するページをリクエスト毎に処理する代わりに、
112+
子プロセスが動作中の間一回しかサーバーへの接続を行わないようにします。
113+
このことは、
114+
持続的接続をオープンしたプロセス毎に、
115+
サーバーへの持続的接続をオープンするということになります。
116+
例えば、
117+
20の異なった子プロセスがSQLサーバーへの持続的接続を行うスクリプトを実行した場合、
118+
各子プロセス毎にSQLサーバーへの20の異なった接続が行われます。
116119
</simpara>
117120
</simplesect>
118121

119122
<simplesect xml:id="persistent-connections.drawbacks.conn-limits">
120123
<title>ありうる欠点: 接続数の上限</title>
121124
<simpara>
122125
しかし、データベースへの接続数を制限して使用している場合に、
123-
持続的な子プロセスの接続数がその数を超えるる場合は
126+
持続的な子プロセスの接続数がその数を超える場合は
124127
持続的接続には気をつけたほうが良い欠点がいくつかあります。
125128
もしデータベースの同時接続数の制限が16だとして、
126129
サーバーに多くのアクセスがあったため、
127130
17個の子プロセスが接続しようとするとそのうちの一つは接続に失敗します。
128-
もしスクリプトにコネクションをシャットダウンしないようなバグ
129-
(例えば無限ループ)があると16程度の同時接続しか許容しないデータベース
130-
はすぐにダメになってしまいます。
131+
もしスクリプトにコネクションをシャットダウンしないようなバグ(例えば無限ループ)があると、
132+
16程度の同時接続しか許容しないデータベースはすぐにダメになってしまいます。
131133
</simpara>
132134
<simpara>
133135
持続的接続は通常、特定の時点で開く接続数を増加させます。
@@ -139,9 +141,8 @@
139141
</simpara>
140142
<simpara>
141143
データベースサーバーが許可する最大接続数が、
142-
Webリクエストワーカーの最大数(それに cron
143-
ジョブや管理接続などのその他の使用分を加えた数)
144-
よりも大きいことを確認してください。
144+
Webリクエストワーカーの最大数(それに cronジョブや、
145+
管理接続などのその他の使用分を加えた数)よりも大きいことを確認してください。
145146
</simpara>
146147
<simpara>
147148
放棄された接続や、アイドル状態の接続(タイムアウト)の処理方法について、

0 commit comments

Comments
 (0)