ページへ戻る
− Links
印刷
Python/データベースの選択
の編集 ::
NJF Wiki
xpwiki
:
Python
/
データベースの選択
の編集
# w29afb76 の編集
ページ内容:
**データへの同時アクセスの問題 [#w29afb76] 他に、データベースの中でもサーバーを使うタイプの場合は、複数プロセスからのデータの同時利用が簡単になるというのも大きな利点です。 データの同時アクセスというのはプログラムを行う上ではかなりやっかいな問題です。 例えば、Aというプログラムが「a」「b」「c」と書き込みBというプログラムが「d」「e」「f」と書き込んで、最終的に「abcdef」となることを期待しているとしましょう。 しかし、もしAが「a」と書いたときにBが 「d」と書いてしまうと結果が「adbcef」となってしまいます。 1データ程度がおかしくなるならまだそれほど問題がないかも知れませんが、ファイル全体の情報を書き込んでいる部分などでこれが起こると、最悪そのファイル自体が使えなくなります。 CENTER:&ref(pythonDB.jpg,mw:480,mh:360); このため、Aが書き込みを行っている間はBが書き込めないようにファイルをロックしたりするのですが、これがかなりやっかいで、タイミングによってロックがうまく行かなかったり、ロックの処理が遅すぎて全体の処理が遅くなったり、ロックが外れずに誰も書き込めなくなったり、といったことが起きます。 このあたりは、昔、今ほどレンタルサーバーがデータベースを提供していなかったころ、cgiでカウンターや掲示板を作っていた人は頭を悩まされた部分です。「cgi ファイル ロック」などで検索すると、先人の苦労のあとがわかるでしょう。 サーバーを使うタイプのデーターベースの場合、このファイルのロックや書き込み順をサーバープログラムが行ってくれるので、データへの同時アクセスの問題はほぼなくなりました。 また、前述のcgiの問題も現在では多くのレンタルサーバーでデータベースが使えるようになったことから、問題視されることはまれです。 CENTER:&ref(pythonDB2.jpg,mw:480,mh:360);
編集の要約:
Q & A 認証:
ページ更新時は次の質問にお答えください。(プレビュー時は必要ありません)
Q:
「東京」の読みがな?(ひらがなで)
A:
お名前:
タイムスタンプを変更しない
テキスト整形のルールを表示する
[1]
Links list
(This host) = https://njf.jp
(This host)
/cms/modules/xpwiki/?cmd=edit&help=true&page=Python%2F%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9%E3%81%AE%E9%81%B8%E6%8A%9E