标签归档:CentOS

设置Nginx进程分配至多核CPU提升性能

Nginx 配置文件 nginx.conf

首先需要找到 Nginx 的配置文件 nginx.conf 才能进行下面的操作,在LNMP一键安装包默认配置下,nginx.conf 存放在
/usr/local/nginx/conf/nginx.conf
至于其他环境下安装 Nginx 可以用
find / -name nginx.conf
来查找配置文件的存放路径。

Nginx worker_processes进程数设置

Nginx 的配置文档 nginx.conf 中可以设置 worker_processes 来更改 Nginx 的进程数量,根据这篇问答number of nginx worker processes显示,建议 Nginx worker_processes进程数设置为1,因为:

Nginx unlike Apache and other process per connection webservers. It uses one master process to start and monitor a small number of worker processes that actually handle the connections. My recommendation is to start with the default number of workers, which is 1.

但我们的目的是要把不同的 worker_processes 进程分配至不同核上的 CPU 上运行,所以以我目前的VPS提供商Linode的512配置为例,服务器母鸡拥有8个逻辑CPU,但是作为用户我只得到4个逻辑CPU,所以在这里我设置为运行3个worker_processes进程,原因是在默认情况下,其他的程序会在第1个逻辑CPU(CPU0)上运行,为了不影响其他程序,我将会把这3个进程分配至另外3个逻辑CPU(CPU1、CPU2、CPU3)上运行:

worker_processes 3;

继续阅读设置Nginx进程分配至多核CPU提升性能

CentOS 系统架设 SeedBox 软件 Transmission

为什么我需要一台 SeedBox ?

  1. 我现在的网络(TPG)最快下载速度为 1.6MB/S ,但是上传速度只有 100KB/S 。
  2. 看论坛里别人的 Ratio (分享率)好多都是 2+ 的,上传都是几TB,羡慕。
  3. 牛B啊,晾骚啊,咱可是用自己的独立 SeedBox ,下载上传速度唰唰的。

安装前的准备:

  1. 基本的计算机操作水平,小白退散。
  2. 一台 CentOS (64bit) 系统的服务器或者 VPS ,并且拥有 Root 权限。(当然Debian / Ubuntu 都是可以安装D)
  3. 会使用 Linux 基本的操作命令,会使用 SSH 连接控制服务器。(Windows 平台推荐 PuTTY ,MAC 下直接在 Terminal 终端里 SSH 连接即可)

安装

首先通过 SSH 连接软件,用你的 Root 帐户登录你的服务器或者 VPS。

安装更新软件Packages

安装 Transmission 软件需要运行的各类软件包,复制粘贴以下命令:

yum -y install gcc gcc-c++ m4 make automake libtool gettext openssl-devel pkgconfig perl-libwww-perl perl-XML-Parser curl curl-devel libevent-devel libevent libidn-devel zlib-devel

以及将系统内的软件升级为最新版本:

yum -y upgrade

这可能要花上几分钟至几十分钟的时间,取决于你使用的服务器的网络以及性能。

安装 intltool (国际化工具?这中文翻译真囧 -w-)

CentOS 系统自带的 intltool 早已经老化鸟,并且 yum 源里的 intltool 也很长时间没更新鸟,所以我们需要自行下载编译最新版本的 intltool ,复制粘贴以下命令:

cd /usr/local/src
wget http://ftp.gnome.org/pub/gnome/sources/intltool/0.40/intltool-0.40.6.tar.gz
tar zxf intltool-*.tar.gz
cd intltool-*
./configure --prefix=/usr
make -s
make -s install

安装 Transmission

选 Transmission 为 SeedBox 的软件是因为它的界面很 Mac 很骚,并且对 iPhone / iTouch 甚至我现在用的 BlackBerry 9700 手持设备进行了页面优化,复制粘贴以下命令:

cd /usr/local/src
wget http://download.m0k.org/transmission/files/transmission-2.13.tar.bz2
tar xjf transmission-*.tar.bz2
cd transmission-*
./configure --prefix=/usr
make -s
make -s install

2010-1-10日更新:代码中的红色部分为Transmission 2.13版本更新,如果以后Transmission升级鸟,你可以到这里查看最新版本的下载地址。

新建一个为运行 Transmission 的专有用户,更安全,更骚:

useradd -m transmission
passwd transmission
(输入你要设定的密码,按回车后再输一遍)

建立 init 文件,使 Transmission 可以在关机、重启后随系统开机运行:

wget -O /etc/init.d/transmissiond http://yeasiz.googlecode.com/files/transmission.sh
chmod 755 /etc/init.d/transmissiond
chkconfig –add transmissiond
chkconfig –level 345 transmissiond on

开始和停止 Transmission 守护进程,你应该可以看到2个绿色的[OK]

service transmissiond start
service transmissiond stop

接着我们需要更改下 Transmission 的默认配置,关闭白名单和开启用户认证,请自行修改文中粗体的用户名(yeasiz)和密码(1990y.com):

cd /home/transmission/.config/transmission/
sed -i ‘s/^.*rpc-whitelist-enabled.*/”rpc-whitelist-enabled”: false,/’ settings.json
sed -i ‘s/^.*rpc-authentication-required.*/”rpc-authentication-required”: true,/’ settings.json
sed -i ‘s/^.*rpc-username.*/”rpc-username”: “yeasiz”,/’ settings.json
sed -i ‘s/^.*rpc-password.*/”rpc-password”: “1990y.com”,/’ settings.json

创建下载文件存放目录,给与其相应的写入读取权限:

mkdir -p /home/transmission/Downloads/
chown -R transmission.transmission /home/transmission/Downloads/
chmod g+w /home/transmission/Downloads/

至此,所有的安装项目都结束鸟,让我们开启 Transmission 的守护进程吧~

service transmissiond start

安装后的测试

在浏览器中打开下面的地址:

http://你服务器的ip地址:9091/transmission/web/

如图所示: