时间:2017-08-17 19:55:49来源:魔法系统之家下载作者:qipeng
1.4.6 查看已安装的RPM
$ sudo rpm -qa | grep openssh
openssh-clients-6.6p1-1.x86_64
openssh-server-6.6p1-1.x86_64
openssh-6.6p1-1.x86_64
2. 配置ControlMaster
$ cd /home/dong.guo
$ vim .ssh/config
Host *
Compression yes
ServerAliveInterval 60
ServerAliveCountMax 5
ControlMaster auto
ControlPath ~/.ssh/sockets/%r@%h-%p
ControlPersist 4h
3. 下载cmc工具用于管理sockets
$ cd ~
$ sudo yum install http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
$ sudo yum install git
$ cd /home/dong.guo
$ mkdir bin
$ git clone https://github.com/ClockworkNet/cmc.git
$ cp cmc/cmc bin/
4. 使用与测试
4.1 查看当前的sockets
$ cmc -l
No ControlMaster connection sockets found.
4.2 统计第一次的执行时间
$ time ssh rainbow@ ‘hostname -s’
ec2-tokyo
real 0m9.486s
user 0m0.017s
sys 0m0.015s
耗时9.5秒
4.3 查看当前的sockets
$ cmc -l
Master running (pid=32857, cmd=ssh: /home/dong.guo/.ssh/sockets/rainbow@-22 [mux], start=19:19:05)
Socket: /home/dong.guo/.ssh/sockets/rainbow@-22
4.4 统计有socket情况下的执行时间
$ time ssh rainbow@ ‘hostname -s’
ec2-tokyo
real 0m0.240s
user 0m0.004s
sys 0m0.005s
耗时0.24秒
4.5 删除当前所有的sockets
$ cmc -X
- Closing ControlMaster connection
Exit request sent.
4.6 统计没有socket情况下的执行时间
ec2-tokyo
real 0m9.468s
user 0m0.016s
sys 0m0.017s
仍然是9.5秒
5. 结论
在开启了ControlMaster的持久化之后,SSH在建立了sockets之后,节省了每次验证和创建连接的时间。
在网络状况不是特别理想,尤其是跨互联网的情况下,所带来的性能提升是非常可观的,在上面的测试中节约了9秒。
而即使在局域网内部使用,每台服务器节省1秒左右的时间,同时操作上百台服务器时,节省的时间也是非常可观的。
上面就是Linux使用ControlPersist加快SSH连接速度的方法介绍了,别看只是加快了一点点,量多的时候还是有用的。
2017-08-17
如何修复一个Panic的Linux内核?2017-08-17
Linux删除文件(夹)、创建文件(夹)命令是什么?2017-08-17
Linux系统如何配置双显卡?为什么Arch Linux不适合当作服务器操作系统?可能很多用户都发现了,Linux服务器操作系统一般都是Ubuntu Server、Cent OS、Fedora或者Red Hat等,为什么很少看到Arch Linux呢?因为Arch Linux在服务方面确实存在一些劣势,下面...
2017-08-17
有些用户为了使桌面更好看、更具动感性,于是就想要设置系统的3D桌面特效,不过不少人却不知道Ubuntu 3D桌面特效怎么设置?其实方法很简单,如果你不知道的话,那就赶紧来看看小编整理的Ubuntu 3D桌面特效设置方法吧!...
2017-08-17