我目前有一个读取繁重的移动应用程序(90% 读取,10% 写入),它通过 php 调用和单个 MySQL db 与单个 Web 服务器进行通信。db 存储用户配置文件信息和用户发送和接收的消息。我们每秒收到几条消息添加到数据库中。
我正在进行水平扩展、负载平衡等。所以我们将在 Web 服务器集群前面有一个负载平衡器,然后我计划在 MySQL 集群顶部放置一层 Couchbase 节点,这样我们就可以快速访问用户个人资料信息和消息信息。我们将在 Couchbase 中存储所有用户信息,但我只想在 Couchbase 中存储最近 24 小时的消息,因为这是大多数读取活动将发生的时间范围。
对于存储在 memcache 中的消息数据,我希望能够根据在消息字段(如国家、城市、时间等)中找到的各种数据过滤消息。我知道 Couchbase 使用 KV 方法,因此我无法使用 where 子句进行查询就像我使用 MySQL 一样。
有没有办法做到这一点?Couchbase Views 是答案吗?还是我完全用 Couchbase 找错了树?