6

私はかなり前からこのアイデアをいじっていますが、それを実行している人々に関する情報は見ていません。1つのオブジェクトをロードして変更する必要がある小さなWebサイトプロジェクトがあります。このオブジェクトは非常に単純であり、数kbを超えてはなりません。この少量のデータに対してDBを実行する代わりに、このデータを使用pickleおよび/またはshelve保存してロードしてみませんか?プロジェクトにBottleやFlaskなどのマイクロWebフレームワークを使用することを計画しています。

このメソッドを使用してデータをロードしない理由はありますか?Apacheの起動時にのみpickleファイルがロードされるため、速度が影響を受けることはないと思います(データベースにクエリを実行するよりも高速です)。

ご入力いただきありがとうございます。

4

3 に答える 3

3

漬け物の文字列をファイルに直接書き込むことはしません。低レベルの詳細が多すぎて心配する必要はありません。MySQLへのPythonオブジェクトの保存については、 DurusZODB、またはFriendFeedからのこの投稿を確認してください。

ただし、リレーショナルデータベースを破棄しないでください。リレーショナルデータベースを使用すると、(単純なプロジェクトであっても)すぐに使用できるようになります。

于 2010-09-10T02:44:59.167 に答える
2

標準のPythonピクルスまたはシェルフモジュールを介してオブジェクトの永続性を実装できない理由はありません。オブジェクトがきれいにそして安全にピッキング可能であることを確認してください。サイトが現在の範囲を超えて成長する場合、スケーラビリティが問題になる可能性がありますが、それまでは、アイデアは問題なく機能するはずです。その日が来たら、次の明らかなステップは、言語の最新バージョンがあらかじめパッケージ化されているPythonの優れたSQLite モジュールの使用を検討することです。

于 2010-09-10T04:07:44.603 に答える
1

すでに認識している同時実行性の問題に加えて、ファイルが常に一貫性のある状態にあることも確認する必要があります。たとえば、ファイルの書き込み中にサーバーがクラッシュした場合、どうなりますか?これは、このルートに進む場合の解決策を検討して実装する必要がある場合です。

于 2010-09-10T19:42:24.663 に答える