当前位置: 首页 > article >正文

个人系统架构技术分享

架构技术
技术版本说明
CentOS7.9操作系统
Amoeba负责MySQL读写分离
NFS分布式存储
ISCSI块存储
keepalived日志收集
MySQL5.7数据库存储
MinIO8.4.5对象存储
Kubernetes1.23.15应用容器管理平台
Redis7.0分布式缓存
Elasticsearch7.17.3搜索引擎
nacos3.3.4服务注册
后端技术
技术版本说明
Spring Cloud2023.0.1微服务框架
Spring Boot3.2.2容器+MVC框架
JWT1.37.0认证和授权框架
MyBatis3.5.14数据库持久层
EFK日志收集系统
RabbitMQ3.10.5消息队列
前端技术
技术说明
Vue前端框架
Vue-router路由框架
JavaScript用于创建动态网页
Element前端UI框架
html标记语言,用于定义网页结构
css样式表语言,用于控制网页样式
vue-element-admin项目脚手架参考

移动端技术

技术说明
Vue核心前端框架
Vuex全局状态管理框架
uni-app移动端前端框架
luch-requestHTTP请求框架
功能并发量
pod功能单用户pv每分钟并发量高峰pod数量
1用户登录注册4800320018 5%
2选择题库3600250014 4%
3每日打卡2400160010 2.9%
4刷题练习30580023500110 32%
5题目搜索3600240014 4%
6视频资源230010006 1.7%
7错题诊断3600250014 4%
8用户排名4800340018 5%
9会员中心4800340018 5%
10在线直播23509005 1.5%
11热点快讯4800300017 5%
日活跃用户140000611186147444244
一个节点 20个pod69000
总计资源:60核CPU,140GB内存 ,3主16node节点 k8s集群外10台 =29台 用的机房是第三方云机房是北京来广营IDC数据中心 我们的项目就2个运维

1. 核心学习功能(高频使用)

  • 刷题练习:85%-90%
    (用户主要需求,高频刚需)
  • 选择题库:80%-85%
    (用户选择不同题库进行针对性练习)
  • 题目搜索:70%-75%
    (快速定位特定题目或知识点)

2. 用户粘性功能(中频使用)

  • 每日打卡:50%-60%
    (初期参与度高,长期坚持比例下降)
  • 视频资源:45%-55%
    (依赖内容质量,部分用户偏好视频学习)
  • 在线直擂(实时竞赛):30%-40%
    (活跃用户参与,但非核心需求)

3. 辅助功能(低频使用)

  • 用户排名:25%-35%
    (激励型功能,部分用户关注排名竞争)
  • 热点快讯:20%-30%
    (资讯类内容,需与学习强相关才能提升使用率)
  • 会员中心:15%-25%
    (涉及付费转化,活跃付费用户才会高频访问)

4. 基础功能(一次性或低频)

  • 用户登录注册:10%-15%(日常使用率)
    (注册后仅需偶尔重新登录)

市场依据说明

  1. 核心功能主导
    类似App(如猿题库、考虫)数据显示,刷题、选题库等学习行为占比超80%,是用户留存的关键。
  2. 打卡与社交功能
    教育类App中,打卡功能的平均坚持率约50%-60%(数据来源:易观分析),排名功能活跃度依赖社区运营强度。
  3. 视频资源差异大
    若视频与题库强绑定(如解析视频),使用率可达50%以上;若为独立课程,则可能低于40%。
  4. 付费与会员功能
    行业平均付费率约5%-15%,会员中心日常访问率通常低于30%(数据参考:艾瑞咨询)。

总结建议

  • 优先优化核心功能(刷题、题库、搜索),提升流畅度和题库质量。
  • 强化打卡激励机制(如积分兑换),将使用率从50%提升至60%+。
  • 视频资源结合题目解析,避免与外部平台(如B站)直接竞争。
  • 简化会员中心入口,通过精准推送提升付费转化。
非功能并发量
pod功能单用户pv每分钟并发量高峰pod数量
1Haproxy300017
2harbor8
3nacos8
4Nexus4
5sonar3
6jenkins4
7rabbitMQ10
8redis10
9gitlab4
10calico15
11prometheus12
总记1846895
一个节点 20个pod

prometheus prometheus-operator node-exporter alertmanager

apiserver

服务器 8核16G

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

类别具体内容
前端技术vue3、html、JavaScript、scss、element plus
服务架构Spring Cloud微服务架构
代理服务器Nginx
分布式任务调度中心Xxl-Job
注册与发现中心/配置中心Nacos
服务间调用OpenFeign
网关Spring Cloud Gateway
数据存储MySQL
数据库持久层MyBatis/MyBatis-Plus
缓存Redis
消息队列rabbitMQ
搜索引擎ElasticSearch
加密算法Bcrypt
身份认证JWT
代码沙箱Docker
对象存储OSS
短信服务阿里云短信服务

| ---- | ---- |
| 防火墙 | 位于公网与内部网络之间,起到安全防护作用。 |
| nginx + keepalived | 用于负载均衡和高可用性的服务器组合,接收来自公网的请求并分发到后端服务器。 |
| Tomcat集群 | 一组Tomcat服务器,用于处理Web请求,提供Web服务。 |
| Amoeba + mysql集群 | Amoeba是数据库中间件,用于管理MySQL数据库集群,提供数据库服务和数据存储,以及读写分离。 |
| EFK | 是Elasticsearch、Fluentd、Kibana的组合,用于日志收集、存储和可视化分析。 |
| rabbitMQ | |
| 备份服务器 | 用于数据备份和恢复,保障数据的安全性和可靠性。 |
| jumpserver | 可能是运维管理平台,运维人员通过它来管理和操作整个系统。 |
| Redis集群 | 分布式缓存系统,用于提高数据读取速度,减轻数据库压力。 |
| zabbix | 监控系统,用于实时监控服务器和网络设备的性能、状态等信息。 |
| nfs | 网络文件系统,提供文件共享服务。 |

用户通过域名访问公网IP,通过防火墙的DNAT策略访问到LVS的VIP,根据LVS规则负载到相应节点。通过访问Ingress-nginx svc 的NodePort 进入集群,根据Ingress规则负载到指定svc,再由svc自动生成的endpoint 负载清单调度到指定Pod,Pod由deployment 创建,根据应用的访问量由HPA动态水平扩缩容,Pod存储由阿里云对象存储OSS来实现,在集群中安装OSS-Provisioner插件并声明sc以及pvc实现Pod的存储,集群日志收集由helm部署EFK,集群监控由helm部署kube-prometheus-stack实现。MySQL和Redis数据库部署在k8s集群外。

//拉取镜像
docker pull quay.io/minio/minio

// 创建数据存储目录
mkdir -p ~/minio/data

// 创建minio
docker run
-p 9001:9000
-p 9090:9090
–name minio
-v ~/minio/data:/data
-e “MINIO_ROOT_USER=admin”
-e “MINIO_ROOT_PASSWORD=admin123456”
-d
quay.io/minio/minio server /data --console-address ":9090


http://www.kler.cn/a/551537.html

相关文章:

  • 沃丰科技大模型标杆案例 | 索尼大模型智能营销机器人建设实践
  • 【笔记】LLM|Ubuntu22服务器极简本地部署DeepSeek+API使用方式
  • ubuntu下载和编译Android源码
  • SOME/IP--协议英文原文讲解6
  • UE5控件组件显示UMG文本不正常
  • 【Python项目】文件销毁工具文档
  • Pearson相关分析法
  • Qt的QTabWidget的使用
  • Mistral Saba:为中东和南亚量身打造的AI模型
  • DeepSeek横空出世,真的拯救了算力焦虑吗?
  • JavaScript数组-创建数组
  • V8 引擎的内存优化原理
  • Unity3D实现自动打包AB包
  • 【鸿蒙Next】鸿蒙应用发布前的准备
  • DeepSeek 助力 Vue 开发:打造丝滑的右键菜单(RightClickMenu)
  • C 单片机存储器修饰符xdata
  • Day48(补)【AI思考】-设计模式三大类型统一区分与记忆指南
  • 如何使用 Docker 实现容器化运维:从零开始的实战指南
  • 上传解析 Excel 表(XLSX 文件)转为JSON数据
  • VideoPipe-使用VLC构建RTSP串流显示