Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/liyupi/mianshiya-next

新项目,基于 Next.js + Spring Boot + Redis + MySQL + Elasticsearch 的面试刷题平台,运用 Druid + HotKey + Sa-Token + Sentinel 提高了系统的性能和安全性。管理员可以创建题库、题目和题解;用户可以注册登录、分词检索题目、在线刷题并查看刷题记录日历图。 此外,系统使用数据库连接池、热 Key 探测、缓存、高级数据结构等来提升性能。通过流量控制、熔断、动态 IP 黑白名单过滤、同端登录冲突检测、分级反爬虫策略来提升系统和内容的安全性。从 0 到 1 的真实企业级项目设计开发,绝对让你收获满满!
https://github.com/liyupi/mianshiya-next

backend elasticsearch frontend java mysql nextjs programmer react redis springboot

Last synced: about 3 hours ago
JSON representation

新项目,基于 Next.js + Spring Boot + Redis + MySQL + Elasticsearch 的面试刷题平台,运用 Druid + HotKey + Sa-Token + Sentinel 提高了系统的性能和安全性。管理员可以创建题库、题目和题解;用户可以注册登录、分词检索题目、在线刷题并查看刷题记录日历图。 此外,系统使用数据库连接池、热 Key 探测、缓存、高级数据结构等来提升性能。通过流量控制、熔断、动态 IP 黑白名单过滤、同端登录冲突检测、分级反爬虫策略来提升系统和内容的安全性。从 0 到 1 的真实企业级项目设计开发,绝对让你收获满满!

Awesome Lists containing this project

README

        

# 24 年最新项目 - 面试刷题平台

> 作者:[程序员鱼皮](https://yuyuanweb.feishu.cn/wiki/Abldw5WkjidySxkKxU2cQdAtnah)
>
> 本项目为教学项目,提供完整视频教程 + 文字教程 + 简历写法 + 面试题解 + 答疑服务,帮你提升项目能力,给简历增加亮点!
>
> ⭐️ 加入项目系列学习:[加入编程导航(限时优惠中 🧧)](https://yuyuanweb.feishu.cn/wiki/SDtMwjR1DituVpkz5MLc3fZLnzb)

面试鸭是一款基于 Next.js + Spring Boot + Redis + MySQL + Elasticsearch 的 **面试刷题平台**,运用 Druid + HotKey + Sa-Token + Sentinel 提高了系统的性能和安全性。

成品项目参考:[https://mianshiya.com](https://mianshiya.com/)

![](https://pic.yupi.icu/1/1724066719752-9632dde8-38ad-4c58-b8a3-b3c5f5b5a927-20240822213130565.png)

管理员可以创建题库、题目和题解;用户可以注册登录、分词检索题目、在线刷题并查看刷题记录日历图。

此外,系统使用数据库连接池、热 Key 探测、缓存、高级数据结构等来提升性能。通过流量控制、熔断、动态 IP 黑白名单过滤、同端登录冲突检测、分级反爬虫策略来提升系统和内容的安全性。从 0 到 1 的真实企业级项目设计开发,绝对让你收获满满!

### 项目三大阶段

为了帮大家循序渐进地学习,鱼皮将项目设计为三个阶段,可以根据自己的时间和水平按需学习。

1)第一阶段,开发基础的刷题平台,带大家熟悉项目开发流程,实战 Next.js 服务端渲染 + Spring Boot 应用的快速开发。

2)第二阶段,对项目功能进行扩展,精选 4 个真实业务场景,实战企业主流后端技术如 Redis 缓存和高级数据结构、Elasticsearch 搜索引擎、Druid 连接池、并发编程、热 key 探测的应用。

3)第三阶段,对项目安全性进行优化,比如基于 Sentinel 进行网站流量控制和熔断、基于 Nacos 实现动态的 IP 黑白名单、基于 Sa-Token 实现同端登录冲突检测、基于 Redis 实现分级反爬虫策略等。最终将项目上线并保证可用性。

## 项目优势

### 项目收获

本项目是线上刷题网站[《面试鸭》](https://mianshiya.com/)的教学版本,业务真实典型,基于主流的前端 Next.js 服务端渲染和后端经典技术栈实现。区别于增删改查的 “烂大街” 项目,本项目中鱼皮会带你实战大量新技术和企业级场景、掌握系统设计和优化方案,给你的简历大幅增加竞争力。

鱼皮给大家讲的都是 **通用的项目开发方法和架构设计套路**,从这个项目中你可以学到:

- 如何拆解复杂业务,从 0 开始设计实现系统?
- 如何快速构建 Next.js 服务端渲染网站和后端项目?
- 如何结合 Redis + Caffeine + Hotkey 构建高性能实时缓存?
- 如何利用 Elasticsearch 实现灵活高效的内容搜索?
- 如何巧用 Redisson 高级数据结构,实现高性能的接口?
- 如何实现流量控制和动态 IP 黑白名单,增强网站安全性?
- 如何实现登录冲突检测和分级反爬虫策略,保护网站内容?
- 如何快速上线项目并增强可用性?

此外,还能学会很多作图、思考问题、对比方案的方法,提升排查问题、自主解决 Bug 的能力。

### 鱼皮系列项目优势

鱼皮原创项目系列以 **实战** 为主,用 **全程直播** 的方式,**从 0 到 1** 带大家学习技术知识,并立即实践运用到项目中,做到学以致用。

此外,还提供如下服务:

- 详细的直播笔记
- 完整的项目源码
- 答疑解惑
- 专属项目交流群
- ⭐️ 现成的简历写法(直接写满简历)
- ⭐️ 项目的扩展思路(拉开和其他人的差距)
- ⭐️ 项目相关面试题、题解和真实面经(提前准备,面试不懵逼)
- ⭐️ 前端 + Java 后端万用项目模板(快速创建项目)

比起看网上的教程学习,鱼皮项目系列的优势:从学知识 => 实践项目 => 复习笔记 => 项目答疑 => 简历写法 => 面试题解的一条龙服务

从需求分析、技术选型、项目设计、项目初始化、Demo 编写、前后端开发实现、项目优化、部署上线等,每个环节我都 **从理论到实践** 给大家讲的明明白白、每个细节都不放过!

| 对比维度 | 跟学鱼皮项目 | 自学网上免费项目 | ⭐️ 鱼皮项目优势 |
| -------- | ------------------------------------------------------------ | ------------------------------------------------------------ | ---------------------------- |
| 项目选题 | ✅ 选题新颖,刻意避开网上热门项目 | 传统项目场景(博客、商城、管理系统) | 增加区分度,提高简历通过率 |
| 学习人数 | ✅ 少,不容易撞车 | 百万以上,烂大街 | 增加区分度,提高简历通过率 |
| 教学方式 | ✅ 全程直播,带你敲每一行代码、带你踩坑和解决 Bug,不漏过每一个细节 | 录制课程,视频虽然看起来简短、一帆风顺,但你遇到错误无从下手 | 降低学习门槛,减少学习时长 |
| 直播笔记 | ✅ 详细的官方笔记 + 精选学员优质笔记 | 有笔记,但未经筛选 | 学到更多知识细节 |
| 视频内容 | ✅ 项目教程 + 经验分享 | 项目教程 | 学到更多编程经验 |
| 项目源码 | ✅ 完整源码仓库 + 每章的提交记录 + 定期更新 | 只有代码包、不更新 | 节省时间,避免踩坑 |
| 项目答疑 | ✅ 各项目交流群 + 答疑解惑 + 常见问题整理 | 无免费的答疑服务,遇到问题自行解决 | 节省时间 |
| 简历写法 | ✅ 现成的简历写法 | 无 | 节省时间、提高简历通过率 |
| 项目扩展 | ✅ 给出扩展思路 + 学员作品共享 | 无 | 开拓思路、拉开和其他人的差距 |
| 项目面试 | ✅ 项目相关面试题、题解和真实面经 | 无 | 提前准备,面试不懵逼 |

编程导航已有 **10 多套项目教程!** 每个项目的学习重点不同,几乎全都是前端 + 后端的 **全栈项目** 。

详细请见:https://yuyuanweb.feishu.cn/wiki/SePYwTc9tipQiCktw7Uc7kujnCd

## 核心业务流程

如下图:

![](https://pic.yupi.icu/1/1724327574506-19da68aa-4298-4bdf-9abc-c490e63a6280.jpeg)

## 项目功能梳理

### 基础功能

- 用户模块
- 用户注册
- 用户登录(账号密码)
- 【管理员】管理用户 - 增删改查

- 题库模块
- 查看题库列表
- 查看题库详情(展示题库下的题目)
- 【管理员】管理题库 - 增删改查

- 题目模块
- 题目搜索
- 查看题目详情(进入刷题页面)
- 【管理员】管理题目 - 增删改查(比如按照题库查询题目、修改题目所属题库等)

### 高级功能

- 题目批量管理
- 【管理员】批量向题库添加题目
- 【管理员】批量从题库移除题目
- 【管理员】批量删除题目

- 分词题目搜索
- 用户刷题记录日历图
- 自动缓存热门题目
- 网站流量控制和熔断
- 动态 IP 黑白名单过滤
- 同端登录冲突检测
- 分级题目反爬虫策略

## 技术选型

### 前端

- React 18 框架
- ⭐️ Next.js 服务端渲染
- ⭐️ Redux 状态管理
- Ant Design 组件库
- 富文本编辑器组件
- ⭐️ 前端工程化:ESLint + Prettier + TypeScript
- ⭐️ OpenAPI 前端代码生成

### 后端

- Java Spring Boot 框架 + Maven 多模块构建
- MySQL 数据库 + MyBatis-Plus 框架 + MyBatis X
- Redis 分布式缓存 + Caffeine 本地缓存
- Redission 分布式锁 + BitMap + BloomFilter
- ⭐️ Elasticsearch 搜索引擎
- ⭐️ Druid 数据库连接池 + 并发编程
- ⭐️ Sa-Token 权限控制
- ⭐️ HotKey 热点探测
- ⭐️ Sentinel 流量控制
- ⭐️ Nacos 配置中心
- ⭐️ 多角度项目优化:性能、安全性、可用性

## 架构设计

![](https://pic.yupi.icu/1/1724297395044-4e47807a-c53d-47aa-a7a4-61a6dd6603e6.png)

## 环境准备

后端 JDK 版本需要使用 8、11 或 17,**不能超过 17!**

推荐使用 11 版本,因为 Caffeine 缓存要求使用 11 版本。

前端 Node.js 版本 >= 18.18。

## 新建代码仓库

> 搭建仓库,点 star 的都是精神股东

代码仓库:https://github.com/liyupi/mianshiya-next

## 教程计划

### 第一阶段 - 基础功能

第 1 期:项目介绍。包括介绍项目背景、项目优势、核心业务流程、项目功能、技术选型、架构设计、教程计划等。

第 2 期:平台后端开发

- 需求分析
- 库表设计
- 后端项目初始化(万用模板讲解)
- 后端基础功能开发(增删改查)
- 后端核心业务流程开发

第 3 期:平台前端模板开发

- 需求分析
- Web 前端技术选型(服务端渲染讲解)
- 前端项目初始化(Next.js 前端万用模板开发)
- 前端基础页面开发
- 用户模块
- 管理页面

第 4 期:平台前端核心开发

- 核心页面开发
- 主页
- 题库列表页
- 题库详情页
- 题目详情页
- 题目搜索页

- 前后端联调,跑通核心业务流程

### 第二阶段 - 功能扩展

第 5 期:面向用户的扩展功能

- 用户刷题记录日历:需求分析 + 方案设计 + 前后端开发 + 性能优化
- 分词题目搜索:需求分析 + 方案设计 + 前后端开发

第 6 期:面向管理的扩展功能

- 题目批量管理:需求分析 + 方案设计 + 前后端开发 + 性能优化
- 自动缓存热门题目:需求分析 + 方案设计 + 前后端开发

### 第三阶段 - 优化上线

第 7 期:流量安全性优化

- 网站流量控制和熔断
- 动态 IP 黑白名单过滤

第 8 期:内容安全性优化

- 同端登录冲突检测
- 分级题目反爬虫策略

第 9 期:部署上线

- 前后端部署
- 可用性优化

## 🧧 加入编程导航学习本项目

本项目为教学项目,提供完整视频教程 + 文字教程 + 简历写法 + 面试题解 + 答疑服务,帮你提升项目能力,给简历增加亮点!

**加入编程导航后,鱼皮带做的所有 10+ 项目教程都可以无限回看!**

了解详情:[https://yupi.icu](https://yupi.icu/)

👨🏻‍💻 超过 3 万人的编程学习交流圈,帮你更快学好编程 => 做出项目 => 搞定毕设 => 拿到 offer

1. 获取原创编程学习路线、几十位大厂嘉宾的独家经验分享和答疑
2. 获取原创编程 **学习指南和求职指南**,帮你解决学习问题、告别迷茫
3. 数十套保姆级 **原创项目实战教程**,简历写法、面试题解、项目答疑一条龙,掌握独立做项目的方法
4. 获取独家写简历技巧,查看几百份 **真实简历参考**,提高简历通过率
5. 获取保姆级求职指南、每日投递信息表、精选面试题、面经汇总
6. 加入专属编程交流群,获取每日优质文章推送,提高学习动力
7. 鱼皮往期所有直播无限回看