项目简介
巨能搜聚合搜索平台是一个一站式聚合搜索平台,借助Vue3、Spring Boot和Elastic Stack构建。它能让用户在同一页面集中搜索不同来源、不同类型的内容,提升检索效率与搜索体验。对企业而言,当内部多个项目有数据搜索需求时,可将各项目数据源接入搜索中台,无需为每个项目单独开发搜索功能,进而提升开发效率、降低系统维护成本。
项目的主要特性和功能
- 多源聚合搜索:支持在同一页面集中搜索文章、图片、用户等多种类型内容。
- 简化企业搜索中台:企业可将各项目数据源接入搜索中台,无需单独开发搜索功能。
- Elastic Stack集成:采用Elasticsearch作为搜索引擎,Logstash进行数据管道处理,Kibana进行数据可视化。
- Spring Boot后端:运用Spring Boot框架,提供高效后端服务。
- Vue3前端:使用Vue3框架,提供现代化前端界面。
- 数据同步:支持定时、双写、Logstash和Canal等多种数据同步方式。
- 权限校验:提供基于注解的权限校验功能,保障用户操作安全。
- 日志记录:通过AOP拦截器记录请求响应日志,便于追踪和理解应用程序性能情况。
安装使用步骤
1. 启动Elastic Stack服务
确保Elastic Stack服务已启动,进入相应服务的bin目录下执行以下命令:
- ElasticSearch服务:执行 elasticsearch.bat
- Logstash:执行 logstash.bat -f ..\config\mytask.conf
- Canal:执行 startup.bat
- Kibana数据可视化:执行 Kibana.bat
2. 启动后端服务
下载项目源码后,进入后端项目目录,执行以下命令启动Spring Boot应用:
bash
mvn spring-boot:run
3. 启动前端
进入前端项目目录,执行以下命令启动Vue3应用:
bash
npm install
npm run serve
4. 配置数据库
- 修改
application.yml
中的数据库配置,将其指向你自己的数据库:yaml spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://localhost:3306/mysearch_db username: root password: 123456
- 执行
sql/create_table.sql
中的数据库语句,自动创建库表。 - 启动项目后,访问
http://localhost:8101/api/doc.html
即可打开接口文档,进行在线调试。
5. 配置Elasticsearch
- 修改
application.yml
中的Elasticsearch配置,将其指向你自己的Elasticsearch服务:yaml spring: elasticsearch: uris: http://localhost:9200 username: root password: 123456
- 复制
sql/post_es_mapping.json
文件中的内容,通过调用Elasticsearch的接口或者Kibana Dev Tools来创建索引:json PUT post_v1 { 参数见 sql/post_es_mapping.json 文件 }
- 开启同步任务,将数据库的帖子同步到Elasticsearch。找到
job
目录下的FullSyncPostToEs
和IncSyncPostToEs
文件,取消掉@Component
注解的注释,再次执行程序即可触发同步。
通过以上步骤,即可成功启动并使用巨能搜聚合搜索平台。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】