teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2016/07/18 18:24

投稿

退会済みユーザー
answer CHANGED
@@ -13,4 +13,18 @@
13
13
  0. 更新処理部分で配列をループ
14
14
  0. ユーザーIDでキャッシュの中に存在するかを調べ、存在していれば、アップデート。存在しなければ、インサート。
15
15
 
16
- 方法2 のほうが、DBアクセス数は少なくて済みますね。
16
+ 方法2 のほうが、DBアクセス数は少なくて済みますね。
17
+
18
+ ---
19
+
20
+ と思ったら、不十分でした。
21
+
22
+ インサートもされず、アップデートもされないものが残ってしまいますね。
23
+
24
+ 0. HTMLに表示されているユーザー情報を一人1レコードとして扱い、配列にする。
25
+ 0. グループIDでSELECT検索し、結果を一時的に配列にしてメモリ上に保存(キャッシュ)しておく。
26
+ 0. 更新処理部分で配列をループ
27
+ 0. ユーザーIDでキャッシュの中に存在するかを調べ、存在していれば、アップデート。存在しなければ、インサート。インサートまたはアップデートされたものをキャッシュから消す。
28
+ 0. キャッシュに残ったものをデリート。
29
+
30
+ という感じでしょうか。