我正在构建的网站的一个组件要求用户以一种形式输入唯一代码,然后通过将其与数百万个生成代码的预定列表进行比较,将其验证为有效代码。我该怎么做才能为用户提供即时反馈?
最初我计划在一夜之间检查批处理作业中的所有提交,但客户希望用户立即获知他们是否有有效代码。
构建trie结构,将生成的代码存储在数据库表中还是使用其他方法更有效?
答案 0 :(得分:5)
为此目的使用MySQL表绝对是正确的做法。如果正确索引,MySQL在几百万行的表中查找条目没有问题。实际上,MySQL表索引非常接近预编程的trie结构,为您完成了所有的工作,并发,边缘情况和调试。
如果您构建其他类型的查找系统,则必须解决诸如持久性,数据维护等问题。