打算用的是ElasticSearch, 分词用IK.
比如博客园的搜索文章, 搜索的Field: 博客标题、博客内容、博客标签
我现在的想法是:
1. 我只会第一次接入elastic同步一次数据库数据到 elastic-server。
2. 以后新增or更新 博客, 通过新增代码逻辑, 每次发送请求给 elastic-server,
大致"_source":{"articleId":"...", "articleTitle":"...","articleConent":"...","articleTag":"..."};
在elastic-server返回success才保存博客到database, 否则回滚事物. (不知道这有没有更好的实现)
3. 搜索时: 搜索出符合的结果, 然后用articleId去走正常的 查看博客逻辑.
包括搜索列表展示, 比如每页10条, 我都会用这10个articleId去组装列表数据(因为是app的搜索)
4. 删除: 我会根据articleId去删除 elastic-server中的数据(document)
我不知道以上的思路是不是可以,或有哪些地方可优化? 求做过的指点一下.
qq_笑_17