【发布时间】:2010-11-02 00:48:05
【问题描述】:
我有一个应用程序,它通过一个 java 应用程序每 1-2 分钟记录多达 8000 台设备的状态,并将设备 ID、时间和状态存储在数据库中的一个表中。
此应用程序的下一个组件是一个 PHP 界面,它显示这些设备的最新状态(分配给登录用户的设备,可能有最多 500 个并发用户,即每个用户查看 16 个设备,但更多可能是 50-100 个用户的平均负载)。该应用程序还将打印设备状态随时间变化的报告。
我正在考虑在 java 应用程序中使用 memcached 来存储每个 deviceid 的最新状态,然后让 php 应用程序访问 memcached 来填充显示。以前状态的报告仍然会从数据库中删除,因为它们不经常运行。
在决定是否将 memcached 写入此应用程序时,我感到困惑,因为 memcached 的性能显然是通过每次缓存更新多次命中来实现的。此应用程序可能有多个更新(但直接从应用程序而不是数据库推送),每次缓存读取。但会将读取保存在合理大小 (2-3gb) 的状态表上。
另外,从不同语言的 API 写入/读取 memcached 是否存在任何互操作性问题?
【问题讨论】: