私は自分のギャラリーのリストを作成しています (次/前を使用)。問題は、写真を変更するたびに次/前を選択すると、クエリに最大 0.1 秒かかることです。2 つのことを考えると、これは悪いことです。
しかし、1 つのクエリで写真のすべての ID を選択すると、たとえば 1000 件の結果が得られます (クエリの時間は約 0.15 秒です)。それらからツリーを構築し、その中の次/前を簡単に見つけることができます。しかし、メモリが必要です。私のサーバーでは、パフォーマンス (メモリではなく CPU) に問題があるため、おそらくより良い解決策になるでしょう。私は正しいですか?
もしそうなら、どのように、またはどこにそのツリーを保管できますか? すべての画像が 1 つのテーブルにあり、ブラウジングはユーザーごと (アップロードされた写真など) であり、順序 (時間、タイプ、スコアなど) が異なるため、さまざまなものを使用できます。そのため、事前にすべての木をキャッシュすることはできません。巨大になるだけです (さまざまなユーザーが写真をほぼ瞬時にアップロードしている間に変化する可能性があります)。ユーザーが特定のギャラリーを開いたときに、すべてのユーザーに新しいツリーを作成することを考えました。それを SESSION に保存するのは「ばかげている」ようです。これは、そのようなものに最適化されていないためです。