我打算提供一个简单的短语查找Web服务。短语数量约为3-5百万个条目,每个条目少于50个字符。该服务非常简单,如果用户给出的短语在列表中返回true,则返回false。所以在服务器端,我应该只是简单地将条目放在mysql数据库中,并在用户短语进入时查询它?还有其他更有效的实现吗?即更快,更少内存,在查询量方面更具可扩展性等。或者应该将其加载到内存中?
任何反馈,想法,意见都将不胜感激!
答案 0 :(得分:0)
答案 1 :(得分:0)
这实际上取决于您将拥有多少并发用户。
如果您有大量请求/秒,请将数据保存到内存中(看起来您需要大量内存),例如memcached。 否则,请使用数据库。
或者同时使用两者:如果数据不是缓存(memcached),则从数据库加载并保留内存以备将来使用。
答案 2 :(得分:0)
MySQL应该毫不费力地处理500万个条目。
如果我是你,我会构建数据库,并在本地测试500万行和5000万行伪随机数据。
如果您能够模拟大量并发连接,那么就这样做。如果没有,只需将它推出给100个感兴趣的用户。
保留记录。使用分析。