macbook pro天才吧维修记——亏还是赚?

背景

大概在两周前,我已经使用了三年半的macbook pro late-2016底部突然发出巨响。我把机器翻过来一看,发现底部右下角位置的一颗螺丝不见了。另外底部金属外壳在脱离了螺丝的固定后,已经明显翘起来。我结合之前的经验,判断是电池鼓包把后盖顶开了。这台机器已经过了保修期,也没有购买延保服务。那么维修它到底要花多少钱呢? 我查了一下换电池的价格,去官方维修要1400,自己买第三方电池来换大概是200-400左右。我究竟该如何选择呢?

阅读更多macbook pro天才吧维修记——亏还是赚?

基于USB3.0 USAP的Linux RAID1双盘阵列写入速度探究

问题

最近为了数据安全,把包含有数据的Linux机器的/home目录挂载到了USB3.0的RAID1阵列上,到底写入性能可以到什么程度呢? 下面就来测试一下

测试环境

机器是CPU是1037U,内存4G,系统为Ubuntu 18.04, 硬盘为两块外置ST4000LM024移动硬盘,使用了支持UASP的主控芯片。看网上评测裸盘写入最高速度150MB/s,但是使用USB3.0的情况下应该会有些损失。使用Linux构建软RAID1阵列,然后添加到LVM物理卷,再分配逻辑卷并格式化为ext4格式。分区空闲区域超过60%。

测试方法

这里使用dd进行测试,使用以下命令来得到写入平均速度

替换bs_size和write_count使之乘积为大致的定值来进行每项测试。同时使用iostat来观察磁盘的平均tps

测试数据

经过测试后,得到了下面的数据

数据块尺寸(KB) 传输速率(MB/s) 磁盘平均每秒事务(tps) CPU占用率
4 16.7 ~4300 41%
8 30.6 ~4000 37%
16 46.5 ~3000 35%
32 71.9 ~2400 29%
64 88.7 ~1400 20%
128 95.1 ~720 20%
256 97.8 ~380 12%
512 96.5 ~200 9%
1024 98.8 ~200 6%
2048 97.6 ~200 6%
4096 95.0 ~200 5%
8192 98.5 ~200 5%
16384 96.8 ~200 4%

基本上可以得出一个结论,USB3.0+UASP下,如果数据块较小,IOPS较高,USB的中断处理对于CPU的压力还是很大的。双盘阵列接近9000的每秒中断处理会将CPU吃到了41%。而在数据块变大之后,我们可以观察到由于USB中断导致的CPU消耗显著降低。并且由于数据快变大导致磁盘实际写入性能也提升到接近100MB/s。用来存储照片与视频以及大量的归档文件,综合性能还是不错的。

结论

近年来大容量移动硬盘价格普遍降低,虽然有关于高容量SMR方案导致性能与可靠性的争论,但通过冗余方案提供可靠性完全可以规避掉相关问题。实际看基于USB3.0 UASP的廉价Linux RAID1阵列具有很高的实用性。

解决NTFS拷贝文件远比磁盘物理读取速度慢的问题

问题

周末在Linux下搬运磁盘数据,发现一个很奇怪的现象。从通过ntfs-3g挂载的NTFS分区读取数据,写入到另外一个基于RAID1阵列的分区,理论上能到50MB/s+,实际上却只有20MB/s左右。而且在Windows上拷贝文件也是如此。这究竟是为何?

阅读更多解决NTFS拷贝文件远比磁盘物理读取速度慢的问题

家庭500mbps单口软路由接入方案

背景

最近发现一个比较坑爹的事情,之前家里联通宽带虽然免费提速到300mbps但一直速度最快跑到270mbps左右,其实是因为Netgear WNDR4300OpenWRT下系统load基本接近1.00,CPU只能跑到这个性能了。所以目前的宽带接入速度已经超过了已有硬件的性能基准。

加上最近联通新上了1Gbps的接入,因此我们的500mbps接入计划再次提上日程~

阅读更多家庭500mbps单口软路由接入方案

iPhone手机持续高耗电之谜

背景

我的iPhone 8在官方天才吧维修换机使用了大概快一年,电池写的容量还有88%,基本上在公司或者在家使用三四个小时就不怎么有电了。除了电池损耗因素外,我发现在熄灭屏幕期间,总是会有个神奇的”音乐”应用每个小时总会运行个10分钟左右,然后实际看耗电程度一点都不比屏幕亮着的时候低频操作低。这到底是怎么回事呢

阅读更多iPhone手机持续高耗电之谜