Linux

wrk — 小巧轻盈的 http 性能测试工具.

via: http://zjumty.iteye.com/blog/2221040

测试先行是软件系统质量保证的有效手段. 在单元测试方面, 我们有非常成熟的 xUnit 方案. 在集成测试方面, 我们 selenium 等自动化方案. 在性能测试方面也有很多成熟的工具, 比如 LoadRunner, Jmeter 等. 但是很多工具都是给专门的性能测试人员使用的, 功能虽然强大, 但是安装和操作不太方便. 作为开发人员, 我们有些时候想快速验证我们的解决方案是不是存在性能问题, 或者在并发情况下是否有意想不到的问题.  安装 LoadRunner 这样工具, 录制脚本很麻烦, 用起来就像在用大炮打蚊子.

wrk 是一个很简单的 http 性能测试工具. 也可以叫做 http benchmark 工具. 只有一个命令行, 就能做很多基本的 http 性能测试.

wrk 的开源的, 代码在 github 上. https://github.com/wg/wrk

首先要说的一点是: wrk 只能运行在 Unix 类的系统上. 比如 linux, mac, solaris 等. 也只能在这些系统上编译.

这里不得不说一下, 为什么很多人说 mac 是最好的开发环境. 不是因为使用 mac 逼格有多高. 而是你可以同时得到 windows 和 linux 的好处.… 继续...

Ubuntu自动更新相关设置

  1. 设置自动更新
apt-get install unattended-upgrades

安装好unattended-upgrades后,需要配置:

CentOS 7 64bit Minimal安装后的初步10项优化和配置

1. 更新系统并安装必备的组件

安装这些之后会大大方便今后安装其他应用是碰到的依赖包问题。其中net-tools是为了提供dig, nslookup, ipconfig等命令,方便配置CentOS 7初始化网络环境。如果不安装这个,在CentOS 7中,可以使用ip addr命令来代替ipconfig进行当前ip地址查询。

2. 添加源(repository)REMI & EPEL

yum安装时,要想安装比较新的版本软件,可以试试这两个源。都有一些国内镜像,我添加的EPEL是阿里云镜像的。

这是适合CentOS 6的源

 

真正适合CentOS 7的epel和remi源

如果国外没法用,那用国内的镜像

使用方法:

 

3.

继续...

Ubuntu(Linux)中添加Windows和Mac的字体

Debian 和 Ubuntu 下对中文支持比较好的字体有: fonts-droid、ttf-wqy-zenhei 和 ttf-wqy-microhei 等,除了文泉驿系列字体外,比较流行的免费中文字体还有文鼎提供的楷体和上海宋,包名分别是: fonts-arphic-ukai 和 fonts-arphic-uming。

注: 系统字体可以手动安装, /usr/share/fonts/

1、准备好Windows和Mac中的字体包,自己从系统中提取或者网上下载都可以。

需要注意的是并非所有的自己都能在Ubuntu中顺利的安装,比如Windows中.fon 格式的字体和Mac 中的.otf自己都要先移除。

2、将需要安装的字体分别放在放 ubuntu 系统中的 ~/WinFonts 和~/MacFonts中

3、在 /usr/share/fonts/ 中创建新的winfonts文件夹 和macfonts文件夹。

4、将~/WinFonts 的字体复制到 /usr/share/fonts/winfonts 中,将~/MacFonts的字体复制到 /usr/share/fonts/macfonts中

5、修改新植入的字体的访问权限
先进入该文件夹:

然后执行如下命令:

macfonts文件夹下的内容采取相同的处理方式

6、生成核心字体信息

注销系统之后,就可以使用 windows 及Mac系统中的字体了。… 继续...

Find的使用

1. 想查看当前文件夹及子文件夹里有没有文件名为“abc”的文件

. :表示当前目录

-name:表示要根据名称查找

2. 想查看当前文件夹及子文件夹里有没有”xyz”目录

-type:表示设定类型,d表示文件夹类型,可以替换为f(普通文件)、l(链接文件)

3. 想找出当前文件夹及子文件夹里所有后缀是”.txt”的文件

4. 想查找当前目录及其子文件夹中“roc”用户自己的文件有哪些

-user:用于设定所属用户的名称,此处可替换为-group,即所属用户组的名称

5. 想查找当前文件夹及子文件夹里权限设定为755的所有文件

DIG挖出DNS的秘密

【初次见面】

我相信使用nslookup的同学一定比使用dig的同学多,所以还是有必要花些时间给大家介绍一下dig的。dig,和nslookup作用有些类似,都是DNS查询工具。dig,其实是一个缩写,即Domain Information Groper。

一些专业的DNS管理员在追查DNS问题时,都乐于使用dig命令,是看中了dig设置灵活、输出清晰、功能强大的特点。

【最简单的dig用法】

最简单的dig用法,当然就是直接输入dig按回车。

CentOS 7 更换内核的一些记录

查看内核

禁止版本升级,编辑/etc/yum.conf文件,在最后添加:

或者

注意:一种是用空格分开,一种是用逗号分开,如果是redhat,则把centos-release*改为redhat-release*

1、导入key


 

如果你修改了repo的gpgcheck=0也可以不导入key

2、安装elrepo的yum源

 

3、安装内核

在yum的ELRepo源中,有mainline(3.18.3)这个内核版本


 

选择了使用新安装的repo来安装3.18的内核,如果使用其他的repo,看不到3.18版本内核

更新后查看内核版本


 

重要:目前内核还是默认的版本,如果在这一步完成后你就直接reboot了,重启后使用的内核版本还是默认的3.10,不会使用新的3.18,想修改启动的顺序,需要进行下一步

查看默认启动顺序

锐速TCP加速的安装教程和最优化设置教程

首先
连接SSH
1.下载安装包,并解压缩

2.执行安装程序 (注:该程序需要ROOT权限)

3.输入账号密码(linux下输入密码的时候看不到东西的,也没有***这种出现的,不要认为是打不上密码)
4.照提示回车回车回车。有y/n的就输入y,然后回车。
5.最后提示的是否启动软件,和加入开机启动。
6.输入lsmod查看是否正在运行。列表上有appex0等就代表正在运行中
7.如果成功运行后,服务器如出现下载慢问题,请用vi命令修改文件,误用SFTP进行修改(下行没问题请无视这条)。
vi /serverspeeder/etc/config
把rsc="0"改成rsc="1",切换新网卡驱动
推荐修改的内容为:
advinacc="1" (高级入向加速开关;设为 1 表示开启,设为 0 表示关闭;开启此功能可以得到更
好的流入方向流量加速效果)
maxmode="1" (最大传输模式;设为 1 表示开启;设为 0 表示关闭;开启后会进一步提高加速效
果,但是可能会降低有效数据率)"如果测试无效果请不要开启此功能"
其它设置,如果不能直接操作到总服务器的话,不推荐修改,保留默认即可。
按下esc退出编辑
输入:wq保存退出
最后输入/serverspeeder/bin/serverSpeeder.sh restart,重启软件即可。
注:如果提示内存不足无法启动的话,请释放点内存后在执行启动。
或者设置engineNum="1"(只启用1个加速引擎“单核心才能更稳定”,默认CPU多少线程就启用多少个)
卸载方法:./serverSpeederInstaller.sh uninstall
以上注意区分大小写,否则提示找不到文件
停止命令
/serverspeeder/bin/serverSpeeder.sh stop
启动命令
/serverspeeder/bin/serverSpeeder.sh start
方便对比测试效果

一、 LotServer 简介
LotServer 是一款内嵌 Zeta-TCP 加速引擎的加速软件,可以安装运行在所有主
流 Linux 和 Windows 操作系统服务器上,加速服务器上传服务的质量。LotServer
尤其适合具有较分散互联网用户访问的服务,能够显著提高距离服务器远,跨运营
商访问服务器,和通过无线网络访问服务器的用户的体验,甚至将服务从原先的不
可用变为可用。LotServer 内嵌的 Zeta-TCP 还可以增强连接的稳定性,显著降低访
问失败率。
LotServer 通过加速用户访问连接,提高连接稳定性,全面提高应用服务质量,
提升最终用户体验。
二、 LotServer 加速原理
LotServer 安装到服务器上,对于从服务器到访问服务器的用户的流量,会起到
最好的加速效果;而对于从用户到服务器的流量,加速效果会不稳定或者没有加速
效果(但不会比没安装 LotServer 之前慢)。
LotServer 本质是一个实现了 Zeta-TCP TCP 优化技术的软件,相对于传统的
TCP,Zeta-TCP 主要对以下三个方面进行改进:
第一, Zeta-TCP 引入了更精确的丢包判断及预测算法。传统 TCP 经常错误判
断丢包。将未丢的数据包判断为丢失将导致错误的重传,从而造成带宽的浪费。反
之,如果不能及时判断确实已丢失的数据包,将导致不必要的等待,从而导致带宽
空置。两种误判都会降低连接的吞吐率和带宽的利用率。Zeta-TCP 加速引擎能够精
确及时地判断丢包,从而保证了最佳的带宽利用率。
第二, Zeta-TCP 随时精确侦测连接路径带宽,并相应调整发送数据量。TCP 协
议通过滑动窗口机制对带宽进行自适应。传统 TCP 的滑动窗口实现经常误判路径带
宽容量。高估带宽容量将导致过量传输从而引发拥塞并导致大量丢包。低估带宽容
量则导致闲置带宽容量。两个极端的出现都将导致带宽利用率的下降。传统 TCP 往
往在两个极端之间震荡,很难有效利用带宽。Zeta-TCP 在主动精确侦测路径带宽的
基础上,随时调整发送数据量,从而在防止引入拥塞的同时最大限度地利用路径带- 2 -
宽。
第三, Zeta-TCP 监控学习连接对端的传输行为,并根据其发送模式智能反馈引
导对端正确判断丢包及准确估算路径带宽,从而大幅提升下载方向带宽利用率。对
比于传统 TCP 被动确认及接受数据,Zeta-TCP 反向智能遥控对端的传输行为,实
现了业界独一无二的单边下载加速。
除了以上三点主要突破性技术手段,Zeta-TCP 在很多其它方面也对传统 TCP 进
行了细致的改进和完善。经过多年在各种真实网络环境中的不断调整改进,单边 TCP
加速具备了广泛的适用性和有效性。
三、 软件命名格式
LotServer 模块文件名:acce-模块版本号-[Linux 系统版本_内核版本]
LotServer 授权文件名:apx-过期时间.lic
四、 安装步骤
通过 LotServer 发布系统,我们为您提供两种安装方式,自动安装和手动安装;
两种安装均需由具有 root 权限的用户进行操作;
4.1 自动安装
自动安装时,安装程序需要通过互联网访问 LotServer 发布系统以便对您的安装
帐号进行验证,并在验证通过后,在服务器上下载与您的安装账号绑定的 LotServer
已授权程序;所以采用自动安装方式进行安装时,需要您的服务器能够访问互联网。
自动安装可采用交互式安装和非交互式安装两种方式进行操作,具体步骤如下;
交互式安装:
(1) 下载自动安装文件,
(2) 复制安装文件到您的服务器;或者在服务器上运行
wget http://download.appexnetworks.co ...

继续...

ubuntu:更新内核与清理无用文件

编辑软件源
sudo gedit /etc/apt/sources.list
查看系统存在的内核。
dpkg -l|grep linux
或dpkg –get-selections|grep linux
显示当前的内核
uname -a
升级内核
apt-get dist-upgrade
删除内核
sudo apt-get remove 内核名
带有image的文件是需要删除的,一定要写全版本等字符。其他相关的文件会自动删除。
例如:
sudo apt-get remove –purge linux-image-2.6.24-19-generic
–purge参数表示彻底删除。
另外,我删除2.6.24-19的内核时,忘了自己当前正使用此内核。不过,幸好有惊无险。删除不了当前使用的内核。
更新menu.list
sudo update-grub
先将menu.list备份,然后改名或删除。这样会自动重建文件。然后将原来的menu.list 中需要的东西拷贝到新的menu.list中。
重建时,grub不会将其他系统的引导信息也添加进去。需要的从原来的文件中复制一下就行了。
系统垃圾清理
sudo apt-get autoclean 清理旧版本的软件缓存
sudo apt-get clean 清理所有软件缓存
sudo apt-get autoremove 删除系统不再使用的孤立软件
Ubuntu Linux与Windows系统不同,Ubuntu Linux不会产生无用垃圾文件,但是在升级缓存中,Ubuntu Linux不会自动删除这些文件,今天就来说说这些垃圾文件清理方法。
  1,非常有用的清理命令:
sudo apt-get autoclean
sudo apt-get clean
sudo apt-get autoremove
这三个命令主要清理升级缓存以及无用包的。
  2,清理opera firefox的缓存文件:
ls ~/.opera/cache4
ls ~/.mozilla/firefox/*.default/Cache
  3,清理Linux下孤立的包:
图形界面下我们可以用:gtkorphan
sudo apt-get install gtkorphan -y
终端命令下我们可以用:deborphan
sudo apt-get install deborphan -y
  4,卸载:tracker
这个东西一般我只要安装Ubuntu就会第一删掉tracker 他不仅会产生大量的cache文件而且还会影响开机速度。所以在新得利里面删掉就行。
  5,删除多余的内核:一定不要删错哦,切记!!
打开终端敲命令:dpkg –get-selections|grep linux
有image的就是内核文件
删除老的内核文件:
sudo apt-get remove 内核文件名 (例如:linux-image-2.6.27-2-generic)
内核删除,释放空间了,应该能释放130-140M空间。
最后不要忘了看看当前内核:uname -a
附录:
包管理的临时文件目录:
包在
/var/cache/apt/archives
没有下载完的在
/var/cache/apt/archives/partial
使用Ubuntu一段时间后,就会发觉由于自动升级,系统里安装了很多内核。像我,竟然安装了下面那么多,这个造成了漫长的启动列表。必须删掉一些不用的。
首先就是使用如下命令,列出所有安装的内核,下表中,带有image的就是内核文件。从中选择要卸载的包,用apt-get来卸载
[tc@ibm:~]$ dpkg –get-selections|grep linux
libselinux1 install
linux-386 install
linux-image-2.6.15-23-386 install
linux-image-2.6.15-27-386 install
linux-image-2.6.15-27-686 install
linux-image-2.6.15-28-386 install
linux-image-2.6.15-28-686 deinstall
linux-image-386 install
linux-kernel-headers install
linux-restricted-modules-2.6.15-23-386 install
linux-restricted-modules-2.6.15-27-386 install
linux-restricted-modules-2.6.15-27-686 install
linux-restricted-modules-2.6.15-28-386 install
linux-restricted-modules-2.6.15-28-686 deinstall
linux-restricted-modules-386 install
linux-restricted-modules-common install
linux-sound-base install
util-linux install
具体的卸载方法为
sudo apt-get remove linux-image-2.6.15-23-386
这样就可以实现自动删除内核文件了,还可以释放磁盘空间。
另外还要记录一个命令。
uname -a
使用这个命令可以查看当前系统使用的内核。… 继续...

Apache access.log error.log日志文件太大优化方法

没有发现Apache生成的日志文件一天比一天大,不是一般大,若你apache安装在C盘,那可惨了,不几天硬盘就满了,太恐怖了,有没有办法优化一下日志,让它不那么大?答案是有的。

一、停止Apache服务,删除Apache下/logs/目录中的error.log和access.log文件。

二、打开Apache的conf/httpd.conf配置文件,找到以下配置信息:

请在上述两行配置代码前加“#”号注释掉,按照下面的修改:

错误日志文件error.log限制错误日志文件为 1M:

或者每天生成一个错误日志文件:

日志文件access.log限制访问日志文件为 1M:

Sidebar