1616AI开放平台(搜索门户)

我要开发同款
proginn07181979132023年07月26日
91阅读
所属分类webapp

作品详情

项目地址:1616ai.com概要1616ai是一个整合全网人工智能接口的搜索引擎,通过收集整合大量其他AI平台的开放能力,对其进行归纳分类,便于开发者快速搜索,快速对比不同平台相似的开放能力,以选取最优的进行使用。平台提供了效果对比(如图像类),价格对比等功能,还收录了该开放能力的官网,文档,试用链接等,方便开发者快速查找定位。阅读前请先看图,对该项目有一个大概的了解,后面可能会提到一些名词:图一为主页,搜索框用于搜索,图二为搜索结果,每一个搜索结果都是一个 AI 产品(支持点赞、收藏),图三为产品详情页,展示效果图、价格、可评论该项目后端为本人一人独立完成模块搜索模块(主要)单点登录模块用户模块站内消息模块SEO 优化(nodejs 和 nginx)主要技术栈springboot mybatis mysql redis elasticsearch logstash nginx rabbitmq shironodejs vue主要技术点1. 搜索模块使用 Elasticsearch 实现搜索能力,支持中文分词(ik)、拼音、自动补全提示功能。支持结合标签搜索(过滤特定搜索条件)搜索结果根据相关度评分排序数据基于 mysql 进行存储及更新,通过 logstash 定时任务 sql 读取数据库数据,过滤后输出到 es 中,保证数据实时更新支持查看搜索历史记录,支持搜索结果收藏2. 单点登录模块该网站除了搜索功能外,还做了论坛功能(另一个项目 bbs.1616ai.com),其中就支持了单点登录,使用 shiro + jwt 进行实现支持用户名密码及手机号登录、微信扫码登录,一步自动注册等功能登录成功后,发放 jwt 令牌存储至浏览器中,访问接口时,使用 Authorization 携带令牌头,后端进行验证并获得用户信息3. 用户模块支持用户基本信息修改(密码、昵称、头像等信息)开发了成就系统(任务)功能,如:进行一次收藏等,即可触发成就系统更新。用户进行每一次操作,都有可能被成就系统记录,具体实现使用 rabbitmq 异步发送操作数据,累积成就进度,完成成就后,用户还会收到站内消息提示其他论坛相关功能在另一个项目中描述4. 站内消息模块用户操作可能触发站内消息提示,如成就完成,评论被回复、点赞、收藏等,在消息触发点使用 rabbitmq 发送异步消息到用户消息仓库(mysql),前端网站定期到服务端检查并拉取消息消息进行了分类,如系统消息、成就消息、用户消息等在消息界面,支持点击消息进行跳转、删除消息等操作5. SEO 优化为了被搜索引擎收录,对 SEO 进行优化,java 端依旧保持了 restapi 风格,加入了 nodejs 作为前端服务器中转,用户打开产品页面时,会被 nginx 转发到 nodejs 服务器,nodejs 访问 javaapi 加载文档,最后返回到前端的就是一个完整内容的文档(去除了浏览器到 java 端的直接 xhr 请求)页面静态化,请求地址重写为 {产品 ID}.html 的形式6. 其他技术使用了 redis 做缓存、记录状态信息等使用了 redis 做产品热度排行功能,具体使用 zset 实现,支持实时更新使用了 nginx 做反向代理服务器,包括静态资源的下载,请求重写、转发等前端使用了 vue + elementui 进行开发,支持移动端自适应(前端非本人开发)数据库使用 mysql + snowflake 雪花算法实现分布式唯一主键,使用 mybatis-plus 快速查询对表格(产品价格展示)进行处理,项目的数据来源为 python 爬虫(爬虫不是本人写的),爬下来的是磁盘文件,本人使用 java 读取文件内容,进行解析、过滤、转换格式后进行存储
查看全文
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论