Closed suibari closed 2 months ago
レコードがある場合はサーバが主体となってデータ送信を行うのでWebsocketが必要 サーバはWebsocketを常に空けておく クライアントはサーバから更新中のレスポンスが来たら以下をする ・受け取ったElementsをまず表示 ・Websocketコネクト サーバはデータUPDATEが完了したらElementsをsendする クライアントはWebsocketのonmessageでデータを受け取り、「〜のデータが更新できました」のsnackbarを表示する snackbarが押されたら相関図を更新する
DBサイズが懸念だが、500Byte×100万人分でも500MBなのでいけると信じる flyioのPostgresは1GB
Vercel KVでv0.5で実装完了
相関図生成(正確には情報を集めてくる時間)時間を軽減したい インメモリDBはflyioではRAM容量上厳しいためPostgresを使用する
ユーザのGenerate時、以下を行う ・DBにレコードがなければ(初回アクセス時)、普通にAPIアクセスした後、クライアントに返しつつDBにインサート。その後別プロセスを立てて周辺ユーザ全員をDBにインサートorアップデート ・DBにレコードがあれば、クライアントにはそれを通知しておき、そのユーザをアップデート。アップデート完了したらそれをクライアントに通知する