前端代码仓库:memory-search-frontend
这个项目是一个基于 Spring Boot + Elastic Stack 技术栈 + Vue.js 的聚合搜索中台
。它不仅是一个强大的搜索引擎,更是一个内容丰富的社区平台。
这个项目的目标是提供一个一站式的搜索、管理和互动体验,满足各种用户需求。
高效多元搜索 :用户可以在搜索框中输入关键词,系统会提供快速、准确的搜索结果。搜索结果会根据内容类型(文本、图片、视频)进行分类展示,并提供关键词高亮和搜索建议,使用户能快速找到所需内容。
互动创作平台 :用户可以在这个模块中发布文章、上传图片,与其他用户互动。系统会自动推荐热门内容,引导用户发现更多优质内容。用户还可以对文章、图片进行点赞、评论和收藏,形成一个活跃的内容创作社区。
流量统计分析 :系统会自动统计每个关键词的搜索流量,并按照时间、关键词类型等维度进行分析。用户可以查看热搜词类别和搜索流量高峰,了解内容趋势和用户行为。
个人中心管理 :用户可以在个人中心查看和编辑个人信息,包括头像、昵称、简介等。用户还可以查看自己的点赞、评论和收藏的内容,以及自己创作的文章和下载的图片、视频等。
资源全面管理 :这个模块仅对管理员可见,管理员可以对全站资源(文章、图片、视频、用户等)进行全面管理。管理员可以对资源进行添加、删除、修改等操作,保证资源的准确性和完整性。
图片预览分享 :通过集成的图片预览功能,用户可以像浏览相册一样查看页面中的图片,并支持缩放和分享到社交媒体平台。
暂未部署上线,点击跳转至:个人博客 MemorySearch 开发文档
原图链接:项目架构图
拉取代码后, 如何快速运行该项目
?
# MySQL配置
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/xxx
username: xxx
password: xxx
# Redis 配置
redis:
database: 0
host: localhost
port: 6379
timeout: 5000
password: Dw990831
# ES 配置
elasticsearch:
uris: http://localhost:9200
username: root
password: 123456
ES 的 bin 目录
下执行以下命令,启动 ES:Elasticsearch.bat
Kibana 的 bin 目录
下执行以下命令,启动 Kibana:Kibana.bat
Logstash 的 config 目录
下新增 .conf 文件,编写配置文件,做好数据映射(以下配置信息可作为参考)# Sample Logstash configuration for receiving
# UDP syslog messages over port 514
input {
jdbc {
jdbc_driver_library => "D:\softWare\logstash\logstash-7.17.9\config\mysql-connector-java-8.0.29.jar"
jdbc_driver_class => "com.mysql.jdbc.Driver"
jdbc_connection_string => "jdbc:mysql://localhost:3306/******"
jdbc_user => "******"
jdbc_password => "******"
statement => "SELECT * from post where updateTime > :sql_last_value and updateTime < now() order by updateTime desc"
use_column_value => true
tracking_column_type => "timestamp"
tracking_column => "updatetime"
schedule => "*/5 * * * * *"
jdbc_default_timezone => "Asia/Shanghai"
}
}
filter {
mutate {
rename => {
"updatetime" => "updateTime"
"userid" => "userId"
"createtime" => "createTime"
"isdelete" => "isDelete"
}
remove_field => ["thumbnum", "favournum"]
}
}
output {
stdout { codec => rubydebug }
elasticsearch {
hosts => "127.0.0.1:9200"
index => "******"
document_id => "%{id}"
}
}
根目录
下执行以下命令,加载配置文件并启动 Logstash:.\bin\logstash.bat -f .\config\myTask.conf
::: warning 注意
确保本地 Node.js 环境配置
完成,版本为 v18.x.x
及以上
:::
后端接口文档
,一键生成前端 HTTP 请求接口:安装:
npm install openapi-typescript-codegen --save-dev
执行命令生成代码:
openapi --input http://localhost:8104/api/v2/api-docs?group=memory-search --output ./generated --client axios
export const OpenAPI: OpenAPIConfig = {
BASE: "http://localhost:8104",
VERSION: "1.0",
WITH_CREDENTIALS: true,
CREDENTIALS: "include",
TOKEN: undefined,
USERNAME: undefined,
PASSWORD: undefined,
HEADERS: undefined,
ENCODE_PATH: undefined,
};
一键启动
前端项目:npm run serve
随着项目的发展和用户需求的增加,我们将持续优化系统性能,提升用户体验。
加强系统的安全性措施,定期进行安全审计和漏洞扫描,确保用户数据的安全。引入微服务架构将项目向容器化部署发展,确保系统的可扩展性和灵活性。
同时将引入持续集成与部署的流程,实现自动化测试和部署上线,降低运维成本。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。