我有一个使用extjs
和php
后端编写的网络应用。后端可以访问数据库A
和B
。该应用程序包含显示大量用户信息的各种网格;对于这个问题很重要的是userID
,它在大多数网格中显示为单独的列。
问题
由于某些原因,数据库userID
中的B
必须由用户accountID
替换。但前端仍然需要显示用户userID
。这意味着我必须在userID
- accountID
之间建立某种形式的映射,以维持预期的功能。
请注意,userID - > accountID映射在数据库A
中可用潜在解决方案
服务器端缓存 -
大约有10000个用户。我考虑过的一个选项是服务器端缓存,例如redis
来维护这种映射。但是仍然需要在后端解析查询结果,并将每个userID
替换为相应的accountID
并发送到前端。例如,来自查询的500个结果行意味着500 redis
次调用以获取相应的userID
(?)性能可能是一个问题。
客户端缓存 -
使用LocalStorage
,LocalForage
或甚至简单hashmap
等客户端存储选项,并将映射详细信息从redis
加载到前端。然后,在渲染网格数据时,使用此映射获取相应的userID
。
当从应用程序向数据库发送数据时,映射必须以相反的方式工作。
还存在诸如保持redis
更新数据库的问题,因为可能存在用户信息可能发生变化的情况。然后还需要更新客户端缓存。所有这些都需要被视为解决方案的一部分。
我希望得到一些反馈以及我可以解决此问题的任何其他潜在解决方案。