我正在寻找设计一个可伸缩的web应用程序的最佳实践(使用rails),在该应用程序中,产品在页面上列出,这些功能包括在标题和描述中搜索、选择类别和排序。
我认为有两种选择:
有两个子选项:
时,需要显示产品并检索所有相关数据。
你认为如何?提前谢谢..。
发布于 2011-04-08 20:59:55
(请注意,我在这里的反应将根据我在Solr…方面的经验而定)
对于你的第一组问题:我建议通过你的搜索引擎进行尽可能多的搜索。Solr可以很好地处理所有的类别过滤和面见。任何您可能希望与基于关键字的搜索、faceting等相结合的页面都可以完全遍历Solr。
在Solr中,在字段值上排序的通配符查询不一定是最有效的查询类型(它在查询时对所有匹配的记录进行排序,然后丢弃第一页以外的所有记录),但它不应该太糟糕。关注初始结果页面,如果有必要,只需直接从SQL或缓存中提供更有趣的内容,以便将真正的搜索留给Solr。
请记住,如果没有进行搜索,这个特定的情况并不是真正的“搜索结果”页面,而是一个“空白版”页面。相应的设计。
对于后一组问题,这两种模式都是常见和有效的模式,至少在Solr中是这样,并且可以归结为客户机实现。例如,Solr的太阳黑子ruby客户端将在调用其搜索对象的ActiveRecord方法时延迟加载与其相关的results对象。当使用成熟的ActiveRecord对象呈现视图时,这是非常方便的。
但是,太阳黑子还提供了对Solr返回的原始存储值的访问,因此,如果短于毫秒,则可以保存到数据库的旅程。
玩得开心!
https://stackoverflow.com/questions/5596893
复制相似问题