我们有一个包含部分 url(字符串)的大型数据库,例如:
“example1.com”
“example2.com/test.js”
“/foo.js”
我们的软件侦听 HTTP 请求并尝试在 HTTP 请求的完整 url 中找到我们数据库的部分 url 之一。
所以我们得到了完整的 url(即:http ://www.example.com/blah.js?foo=bar ")并试图匹配我们数据库的部分模式之一。
如果我们只关心搜索速度,那么存储部分 url 数据库的最佳数据结构是什么?
现在,这就是我们所做的:
- 遍历部分 url(字符串)的整个数据库并使用indexOf(在 javascript 中)查看完整 url 是否包含每个部分字符串。
更新:
该软件是在 Firefox 的Addon SDK上用 Javascript 编写的 Firefox 扩展。