首页 文章 精选 留言 我的

精选列表

搜索[分区技术],共10000篇文章
优秀的个人博客,低调大师

FastCFS性能碾压Ceph之技术揭秘

FastCFS刚发布了版本2.2.0,IOPS全面超越Ceph:顺序写是Ceph的6.x倍,顺序读是Ceph的2.x倍,随机写大约是Ceph的2倍。具体的性能测试数据参见:https://gitee.com/fastdfs100/FastCFS/blob/master/docs/benchmark.md。相信有很多朋友会好奇FastCFS是如何做到的,接下来将为你揭晓FastCFSIOPS完胜Ceph的秘诀。 我不打算探讨架构和实现细节上的差异,直接为大家揭晓有效提升IOPS的关键做法。 FastCFS基于trunk文件(默认大小为256MB)存储数据,在一个trunk文件内采用顺序写方式。顺序写可以做到数据批量落盘,能够有效解决写放大问题,决定了FastCFS的写入性能相比传统的落盘方式有着明显优势,这就解释了FastCFS的随机写大约是Ceph的2倍。 为啥FastCFS顺序写可以秒杀Ceph呢,除了FastCFS服务端特有的顺序写机制外,还有一个关键因素是FastCFS客户端默认开启合并写特性。分布式存储系统核心性能指标是IOPS,受制于另外两个IO能力:磁盘IO和网络IO。合并写可以大大提升网络IO效率,有效消除网络IO瓶颈。 接下来说一下读性能。在v2.2.0之前,FastCFS采用传统的同步模型,随机读性能比Ceph略差。v2.2.0采用基于Linux libaio的异步模型,随机读性能有所提升,性能比Ceph略强。使用libaio异步模型的两大优势:1. CPU占用较低,一个异步读线程处理能力约等于8~16个同步读线程;2. 随机读IOPS更好。其代价是实现门框较高,需要使用Direct IO,read buffer、文件偏移量和读取字节数都需要按设备块大小对齐(注:块设备大小通常为512字节,而不是4KB)。 read使用异步IO(Direct IO)后,Linux内核不再缓存读出来的文件内容,需要自己实现预读机制。为了提升顺序读效率,FastCFS借鉴了Linux内核的预读策略,在客户端实现了简洁高效的预读机制。 对于非多节点共享数据(即单节点专享数据)的场景,FastCFS精心设计和实现的合并写和预读机制不存在数据一致性(比如读到脏数据)问题,故此这两个特性默认是开启的。 更详细的对比测试报告,参见文档:https://gitee.com/fastdfs100/FastCFS/blob/master/docs/benchmark-20210621.pdf,希望有条件的朋友也做一下性能测试。 在测试和使用过程中,有任何问题,请及时反馈,我们随时准备着与你交流。友情提示,gitee官网可以找到我们的联系方式:https://gitee.com/fastdfs100/FastCFS。 本文分享自微信公众号 - FastDFS分享与交流(fastdfs100)。如有侵权,请联系 support@oschina.cn 删除。本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

优秀的个人博客,低调大师

安全技术学习——NAT444实验

文章目录 组网需求 基础配置 接口加入相应的安全区域 配置NAT策略 防火墙配置安全策略 配置默认路由 实验拓扑【GitHub下载】 组网需求 A运营商公网IPv4地址比较匮乏,为尽量节约公网地址,其内部城域网使用的是私网IPv4地址。为满足城域网下的私网用户访问Internet的需求,需要在CPE和CGN设备上两次使用NAT,使IPv4私网用户能够访问IPv4公网。 如下实验拓扑: 实验需求: 完成相关配置,实现客户端可以访问Server端 配置步骤: 如图所示,完成基础的IP地址配置 将CPE、CGN的接口加入相应的区域 在CPE、CGN上配置NAT策略 在CPE、CGN配置安全策略 配置默认路由 基础配置 ---------------------------------------- # CPE基础配置 sys CPE int g1/0/0 ip ad 192.168.0.1 24 int g1/0/1 ip ad 10.1.1.1 24 ---------------------------------------- # CGN基础配置 sys CGN int g1/0/0 ip ad 10.1.2.1 24 int g1/0/1 ip ad 1.1.1.1 24 ---------------------------------------- # AR1基础配置 sysname AR1 # interface GigabitEthernet0/0/0 ip address 10.1.1.2 255.255.255.0 # interface GigabitEthernet0/0/1 ip address 10.1.2.2 255.255.255.0 ---------------------------------------- # AR2基础配置 sysname AR2 # interface GigabitEthernet0/0/0 ip address 1.1.1.2 255.255.255.0 # interface LoopBack0 ip address 2.2.2.2 255.255.255.255 接口加入相应的安全区域 CPE配置 [CPE]firewall zone trust //进入trust区域 [CPE-zone-trust]add interface g1/0/0 //将接口加入区域 [CPE-zone-trust]q [CPE]firewall zone untrust [CPE-zone-untrust]add interface g1/0/1 CGN配置 [CGN]firewall zone trust [CGN-zone-trust]add interface g1/0/0 [CGN-zone-trust]q [CGN]firewall zone untrust [CGN-zone-untrust]add interface g1/0/1 对于CGN而言,PC、CPE、IPv4Network都为信任区域 IPv4Network对于CPE来说为非信任区域,对于CGN来说为信任区域 配置NAT策略 CPE配置NAT策略 使用Easy-IP的配置方式 [CPE]nat-policy [CPE-policy-nat]rule name CPE //rule名字CPE [CPE-policy-nat-rule-CPE]source-zone trust //源区域 [CPE-policy-nat-rule-CPE]destination-zone untrust //目标区域 [CPE-policy-nat-rule-CPE]source-address 192.168.0.0 24 //源IP [CPE-policy-nat-rule-CPE]action source-nat easy-ip //配置Easy-IP CGN配置NAT策略 使用动态地址池的配置方式 配置地址池 [CGN]nat address-group 1 [CGN-address-group-1]mode pat //NAT模式为一对一转换 [CGN-address-group-1]route enable //地址池自动生成 [CGN-address-group-1]section 0 1.1.1.11 1.1.1.20 //创建地址池 配置NAT策略 [CGN]nat-policy [CGN-policy-nat]rule name CGN [CGN-policy-nat-rule-CGN]source-zone trust [CGN-policy-nat-rule-CGN]destination-zone untrust [CGN-policy-nat-rule-CGN]source-address 10.1.1.0 24 [CGN-policy-nat-rule-CGN]action source-nat address-group 1 //配置动态地址池 防火墙配置安全策略 CPE安全策略配置 配置安全策略 # 进入安全策略视图 [CPE]security-policy # 创建安全规则 [CPE-policy-security]rule name tr_to_un # 设置安全规则的源安全地址为trust [CPE-policy-security-rule-tr_to_un]source-zone trust # 设置安全规则的目的安全地址为untrust [CPE-policy-security-rule-tr_to_un]destination-zone untrust # 设置安全规则源网段 [CPE-policy-security-rule-tr_to_un]source-address 192.168.0.0 24 # 设置安全规则的动作为允许 [CPE-policy-security-rule-tr_to_un]action permit 接口放行所有服务,允许ping [CPE-GigabitEthernet1/0/0]service-manage all permit CGN安全策略配置 配置安全策略 [CGN]security-policy [CGN-policy-security]rule name tr_to_un [CGN-policy-security-rule-tr_to_un]source-zone trust [CGN-policy-security-rule-tr_to_un]destination-zone untrust [CGN-policy-security-rule-tr_to_un]source-address 10.1.1.0 24 [CGN-policy-security-rule-tr_to_un]action permit 接口放行所有服务,允许ping [CGN-GigabitEthernet1/0/0]service-manage all permit 配置默认路由 CPE指定默认路由 [CPE]ip route-static 0.0.0.0 0 10.1.1.2 AR1配置默认路由 [AR1]ip route-static 0.0.0.0 0.0.0.0 10.1.2.1 CGN配置默认路由 [CGN]ip route-static 0.0.0.0 0 1.1.1.2 //去往Server的路由 [CGN]ip route-static 10.1.1.1 24 10.1.2.2 //回客户端的路由 AR2配置默认路由 [AR2]ip route-static 0.0.0.0 0 1.1.1.1 注意事项: 因为是模拟的运营商网络,所以必须配置默认路由,否则无法ping通 在防火墙的接口下,必须允许ping,不然无法ping通 AR1(IPv4 Network)需要配置任意路由,否则无法ping通CGN右侧的(untrust)区域 对于CGN而言,所有的数据流量都是从10.1.1.0网段发来的,所以安全策略的源IP直接是10.1.1.0 以上内容均属原创,如有不详或错误,敬请指出。

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册