我正在开发一个开放的博客网站,其搜索功能是将django-haystack与Elastic search结合使用,但问题是在每篇博客文章中我都需要运行命令python manage.py update_index
之后,如何自动执行update_index ?能否请您告诉我该网站是否有数百万的帖子,这是个好主意还是因为我每次都需要刷新索引而使我的网站崩溃,我是新手,请告诉我进行大量搜索的正确方法。 instagram和其他社交网站使用什么搜索技术。
答案 0 :(得分:2)
您可以通过将其添加到settings.py来启用实时更新:
HAYSTACK_SIGNAL_PROCESSOR = 'haystack.signals.RealtimeSignalProcessor'
更多详细信息在这里:
在重新索引可能会花费一些时间的情况下,您应该使用队列来防止请求/响应周期受阻,此处建议使用诸如芹菜之类的可能解决方案:
http://django-haystack.readthedocs.io/en/v2.4.1/other_apps.html#ref-other-apps