# exam_frog_cloud **Repository Path**: wang-junshen/exam_frog_cloud ## Basic Information - **Project Name**: exam_frog_cloud - **Description**: 基于SpringCloud的分布式项目 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-12-07 - **Last Updated**: 2023-03-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: 分布式 ## README # 项目简介 ​ 该项目是一个分布式的学习分享平台,用户登录后可以发布学习帖子,其他用户可以查看别人的学习帖子,并且点赞收藏学习帖子,用户也可以创建学习规划文件夹,在其中填写自己的学习规划,同样的,其他用户可以查看、收藏、复用别人的学习规划。 ​ # 项目架构 ## 服务模块: ​ 该项目是基于SpringCloud实现的分布式项目,将主要的服务代码拆分为两个模块:用户模块(**ef_server_user**)和其他模块(**ef_server_other**)。在用户模块中,主要是进行用户相关的操作,比如:用户登录、用户注册、查看用户信息、查看个人的帖子等操作;而其他模块中,则主要负责搜索帖子、创建分类、后台管理等操作。 ## 公共模块: ​ 即**ef_common**,此模块存放各个服务模块中通用的对象,以导包的形式导入到每个模块中,编写创建重复的类。 ## 网关: ​ 即**ef_gateway**,此模块主要负责接收请求,然后将请求分发到对应的服务上;同时也起到权限校验的作用,当每个请求发送来的时候,检查是否登录过,没有登录则拦截请求。 # 主要技术栈 ​ SpringBoot、Nacos、OpenFeign、Seata、Redis - 使用Nacos作为服务注册中心,负责分布式项目中服务注册与发现功能。 - 使用OpenFeign实现不同服务模块之间的调用和负载均衡。 - 使用Seata来确保分布式下多数据库操作的原子性和一致性。 - 使用Redis保存热点数据,降低数据库的压力。