背景
申请服务器需要搞容量预估,算各种指标
Mongo容量估算
先说说Mongo吧,mongo存储结构为bson,自带压缩存储,直接跑群里找大佬问压缩比,大佬 说“压缩比是看内容决定的,不同内容压缩结果差异非常大,没有可比性” ,找了下资料对全文本的压缩比会更高更好一些,自己来找些数据测试下吧,说下我的测试步骤:
1.数据扔到txt中,一条是1K大小
2.数据仍到mongo中,看大小如下所示
3.分析它的压缩比
看到一条是371Byte,1024/371压缩比差不多是3倍这样,参数说明可以参下面,那个storageSize让我纠结了半天,后来发现它应该是CPU预分配大小,当数据量灌到这个值时,才会继续扩容。如果没装mongo图形界面客户端也可以参考以下命令:db.collectionName.stats(1024);(1024转成KB)
备注: 部分参数解释如下:
ns: 集合的命名空间,可以理解为集合名称
count: 集合中的文档总数
size: 集合中数据占用空间大小,不包括索引 ,单位为字节。
avgObjSize: 平均对像占用的空间大小
storageSize: 给整个集合分配的存储空间,当删除集合中的文档时,这个值不会降代。
numExtents: 连续分配的数据块
nindexes: 索引个数,每个集合至少有一个 _id 索引。
lastExtentSize: 最近分配的块的大小
paddingFactor: 这个参数不太清楚,以后补充。
totalIndexSize: 所有索引大小总和
indexSizes: 列出集合的所有索引字段,以及索引大小。
参考地址:https://www.cnblogs.com/xibuhaohao/p/11358381.html
系统业务规模和峰值估算
用了经典公式进行估算:举例说明:
系统应用的用户粗略统计系统约有800人左右,预计有80%用户会每天访问该系统,访问系统平均时长为8小时,用户会在24小时内都使用该系统。根据上述初步统计,粗略估算平均并发用户数为:8000.88/24约为210左右;预计并发用户峰值约为:
吞吐量等 其它估算可参考:
https://www.cnblogs.com/cynchanpin/p/7365859.html
带宽估算
以下也是按我们这边自己的业务来估算,供大家参考,举例说明如下:
以协议标准为依据,每家子级单位上传数据以文件类型为主,单文件最大不能超过1M,文件总容量均值差不多有2M,传输过程会开启压缩,本地测试压缩前后比约为1:23左右(一个文本大小:zlib压缩后大小),文件上传频率平均周期为10s,一共对接74家子级单位数据,预估带宽大小为:
写到这了,准备下班~~~~~