开发者学堂课程【大数据实战项目:反爬虫系统(Lua+Spark+Redis+Hadoop 框架搭建)第一阶段:非功能介绍】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/669/detail/11590
非功能介绍
内容介绍
一.功能模块
二.性能要求
三.描述
四.性能要求总结
非功能的性能指标目标:
掌握反爬虫项目面试时可能会问的一些问题,这些问题以及效率是反爬虫识别功能性能之外的知识点。
一.功能模块
1.数据管理
2. 页面响应
3.数据库响应
4.外部接口响应
二.性能要求
1.数据管理
Kafka 缓存队列磁盘要求能处理一天的积压约为50 GB 的数据量
每天数据站集群的容量是100 G 或150 G(3个副本)(考虑副本)。
注:总数据存储量 = 一天增量*副本数*天数
SparkStreaming 每天要处理的数据量约为 50 GB
2. 页面响应
响应时间<5s
系统支撑并发数:50(基于企业内部用户使用)
3. 数据库响应
Sql 查询相应时间 <5s。
连接池连接数量有效百分比大于80%。
4.外部接口响应
外部接口数据返回时间不超过5秒
三.描述
1.数据管理
根据前端采集的数据,一条数据大小约 1-2KB。
按照每日2700万的数据量计算 2KB*27000000/1024/1024≈50GB。所以Kafka队列要缓存一天的数据,需要约50 GB 的磁盘空间。
SparkStreaming 将消费 Kafka 队列中的数据,
故每天要处理约 50GB 的数据量
峰值性能要求是 100G (实际峰值性能要求是97G)。
2.页面响应
对于普通页面内容刷新,因为数据的请求到展现的过程,总体时间不能超过5秒。
此处的系统用户并发数指防爬占座系统的 Web 应用的用户并发数,该系统采集到的南航官网数据以流量形式进行转发,无关用户。同时 Web 服务器需要复用做他用,因此系统用户并发数限制为50个,避免占用过多资源。
3.数据库响应
对于系统的页面展现的 SQL 查询语句查询时间不能大于5秒,以免影响前端页面的展示。
对于已经配置好的连接池,已经被占用的连接数量不能超 过总连接数据的80%,要保证20%的有效连接未被占用。
4. 外部接口响应
对于外部接口的调用,其数据返回的整个时间不能超过5秒。
四.性能要求总结
kafka 的吞吐量:
1、 每一条日志的大小约为1-2k
2、每天大概有2700万条数据
3、经计算,吞吐量大概为50 G
4、假如我们 kafka 设置的日志超时时间30天,50乘以30乘以备份引子>=1500*n.
sparkstreaming 计算量:
1、每天计算50 G 的数据
2、计算峰值每天计算100 G 的数据
页面的响应时间和并发数:
1、不超过5 s
2、并发故为50
数据库的响应和外部接口:
1、sql 不超过5秒