您的位置: 旅游网 > 女人

千金-益母颗粒文邵海楊UPYUN又拍云聯合創始人兼運維

发布时间:2020-02-15 19:26:31

导语:如何根据自身场景去设计一个CDN架构,或者如何选择以一个适合自己CDN服务提供商,这里面也有许多问题需要考量

文|邵海杨,UPYUN(又拍云)联合创始人兼运维总监

国内,随着互联的高速发展,因为各大通信公司的政策,造成了南电信北联通互通有局限性,再加上大小且质量参差不齐的运营商,在这特殊的氛围的互联互通下号称八线合一的机房开始崭露头角互联的广泛性使得民分散在全国各地,由于全国地区的经济发展和互联建设的不平衡,实际民的体验往往受限于最后一公里的速度在技术大喷井的年代,一些无聊或者有目的黑客攻击也开始涌现,无论是渗透还是DDoS攻击都非常频繁,时刻威胁着站的安全

上述种种问题,作为应用服务提供商,我们要如何解决此类问题呢?归根结底就是要充分利用好CDN(Content Delivery Network,即内容分发络)

CDN的作用可以帮助我们解决那些问题?

缓存代理

缓存代理类似内容提供商源数据中心的一个透明镜像,这些内容可以在边缘服务器中缓存和分发,对于普通的络用户来讲,它通过智能DNS的筛选,用户的请求被透明地指向离他最近的省内骨干节点,最大限度的缩短用户信息的传输距离在任何时间、地点或者不同的运营商之间(尤其在中国),快速响应用户请求

它是通过在络各处放置节点服务器,所以无需更改源站的络拓扑,而是根据智能路由和用户就近原则匹配,从而确保了内容快又稳定的传输,大大提高了用户访问站的响应速度

路由加速

CDN服务初衷是确保快速可靠地分发静态内容,相对于动态内容来说,由于动态内容必须长连接来操持连接和通讯,只是用户到服务商之间的链路和质量都无法控制因此为了提供快速的络体验,有必要事先设置一些最佳路由如省内骨干,双线机房,以改善用户的络体验在中国典型的互联互通问题上,络游戏加速就是一些最佳实践

安全防护

利用好了CDN络,无论面对是渗透还是DDoS攻击,攻击的目标大都会被指向到了CDN,进而保护了用户源站因为CDN是分布式的,所以即使遭受DDoS攻击,也具备分散性,大大减少了源站收到毁灭打击的可能性在架构的前期,还可以通过CDN做一些前置的安全保护工作,如拦截SQL注入、XSS跨站、站挂马、篡改等黑客攻击

节省成本

CDN节点机房只需要在当地运营商的单线机房,或者带宽相对便宜的城市,采购成本低由于通过CDN减轻了源站压力,节点越多,源站面对任何时间高峰时的带宽峰值会被平均拉低从而降低了后端服务器硬件规模和带宽的采购成本 由于源站服务器规模的减少,后期运维成本也大大减少,可谓是一举多得

由此可见,为了能够满足全国乃至世界各地和多线路运营商的不同用户都有最好的体验,构建CDN的分布式服务其重要性不言而喻但是,在面对如何根据自身场景去设计一个CDN架构,或者如何选择以一个适合自己CDN服务提供商,这里面也有许多问题需要考量

我们要设计稳定高效的CDN架构需要考虑那些因素?

存储介质 vs IO的关系

这里先简单的介绍一下SSD介质的一些考量SSD作为采用电子存储介质进行数据存储和读取的一种技术,突破了传统机械硬盘的性能瓶颈,固态硬盘的全集成电路化、无任何机械运动部件的革命性设计,拥有极高的读取性能

此环节,基本上不需要与传统的SATA,SAS作性能上的比较,SSD的胜出毫无悬念而在整体方案中,只需要考虑承受的价格、容量大小(如120GB,160GB,300GB等规格)、是否能够满足设计需求这些问题

作者建议:如果允许, 能使用SSD,就一定要考虑采用,用空间换性能,提升非常明显

这里给几个SSD实战的小贴士:

1.选择EXT4文件系统+TRIM模式(mount -o defaults,noatime,nodiratime,barrier=0,discard),Btrfs建议少冒险

2.如果是使用三星的固态硬盘,可以尝试它贡献给开源的针对固态硬盘优化的F2FS文件系统,相当不错的选择

3.I/O Schedulers调度算法,可以使用CFQ或者Deadline算法

4.内核参数调整,SSD所在硬盘,echo 0 /sys/block/sda/queue/rotational

随机读写 vs 顺序读写

机械硬盘的连续读写性很好,但随机读写性能很差这是因为磁头移动至正确的磁道上需要时间,随机读写时,也就需要磁头和探针频繁的转动,而机械结构的磁头和探针的位置调整是十分费时的,这就严重影响到硬盘的寻址速度,进而影响到随机写入速度

在存储小文件(图片)、OLTP数据库应用时,随机读写性能(IOPS)是最重要指标由于固态硬盘没有普通硬盘的机械结构,也不存在机械硬盘的寻道问题,因此系统能够在低于1ms的时间内对任意位置存储单元完成输入/输出操作

作者经验笔记:

OS里务必开启AHCI模式(能支持SATA热插拔和NCQ寻址方式,提速300%,当然内核也要支持AHCI模式)

D的主控芯片相当于大脑中枢,非常重要,建议用Intel,Samsung,Marvell等知名品牌

D更适合应用在随机读写场景,因此需要认真思考什么场合应用

大文件 vs 小文件

大多数的存储系统都是针对大文件而设计的,对小文件而言,大文件的存储系统无法适应小文件的存储需求,它造成元数据管理、数据布局和I/O管理、Cache管理、络开销等方面性能和存储效率降低

而且,文件系统的inode是线性存储的,因此,我们遍历一个目录下的文件,需要读取的磁盘的位置是来回跳跃的不连续的读取意味着磁盘要不断的进行寻道,那么性能自然可想而知

作者经验笔记:

1.无论大小文件,首选EXT4文件系统,Reiserfs/Btrfs不要轻易尝试(虽然B-tree设计先进)

T4针对小文件有所改进,使用了inode预分配,这使得inode具有很好的局部性特征,同一目录文件inode尽量放在一起,加速了目录寻址与操作性能

T4针对大文件使用了extent/delay/multi的数据块分配策略这些策略使得大文件的数据块保持连续存储在磁盘上,数据寻址次数大大减少,显着提高I/O吞吐量

S在大文件方面,表现得不错,可以使用

D尽量应用在随机小文件读写的应用场景,毕竟容量宝贵,在有限的空间保存更多的文件是个明智之选

6.有开发实力的可以选用基于LevelDB或其它的KV存储作底层文件系统,此为后话

注:相关站建设技巧阅读请移步到建站教程频道

吃哪种维生素对牛皮癣有效果
前列腺癌术后ED该怎么办
儿童退烧走珠器有哪些
脑梗塞用药可以吃通心络吗
猜你会喜欢的
猜你会喜欢的