该算法为递归算法,将需要排序的部分均分为2部分,然后对这2部分进行递归调用排序,最后将排序好的2部分合并为一个完整数组。
示例(“|”表示划分的各个部分的分隔):
| 1 2 2 3 4 5 6 7 已排序数组
| 2 4 5 7 | 1 2 3 6
| 2 5 | 4 7 | 1 3 | 2 6
5 | 2 | 4 | 7 | 1 | 3 | 2 | 6 初始序列
时间复杂度:O(nlgn)
空间复杂度:O(n)
代码下载
代码在ubuntu9.04用g++ 4.3.3编译通过
转载请注明:转载自DarkIces.com
本文链接地址:http://dki.me/0v
开始写点算法的东西,提纲是按算法导论来的
首先是插入排序,这个很简单,就是像扑克牌一样一张一张的插进入到正确位置
时间复杂度:O(n^2) (最坏情况下)
空间复杂度:O(1) (原地排序)
代码下载
代码在ubuntu9.04用g++ 4.3.3编译通过
转载请注明:转载自DarkIces.com
本文链接地址:http://dki.me/0w
安装openvpn很简单apt-get install openvpn即可
之后就是build key和服务器、客户端配置,此处参考openvpn维护
服务器端的DNS相关信息可以从/etc/resolv.conf中取得
安装完openvpn下面的部分保存为~/iptables-init.sh,然后运行即可
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
iptables -A INPUT -i lo -p all -j ACCEPT
iptables -A INPUT -p all -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -i tun+ -j ACCEPT
iptables -A FORWARD -i tun+ -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 465 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 110 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 25 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
iptables -A INPUT -p udp --dport 1194 -j ACCEPT
iptables -A INPUT -s 10.8.0.0/24 -p all -j ACCEPT
iptables -A FORWARD -d 10.8.0.0/24 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT |
IPv6下openvpn参见架设ipv6下的openvpn
转载请注明:转载自DarkIces.com
本文链接地址:http://dki.me/0x
官方网站svn上下载对应版本的zh_CN.mo和zh_CN.po
在wp-content目录下新建languages目录,然后吧zh_CN.*放到该文件夹内
编辑主目录下的wp-config.php文件,将其中的语言定义语句改成:define (’WPLANG’, ‘zh_CN‘)
转载请注明:转载自DarkIces.com
本文链接地址:http://dki.me/0y
本来还想找一下vps上建立LAMP的过程和配置过程,好吧,我懒了,无限期推迟
或许需要先考虑的是数据库之类的东西怎么备份出来
转载请注明:转载自DarkIces.com
本文链接地址:http://dki.me/0z
apt-get install apache2-prefork-dev
apt-get install php-apc
一般来说这样也就够了
设置缓存,在/etr/mysql/my.cnf的[mysqld]段中增加:
Cache query-cache-type = 1
query-cache-size = 16M
修改/etc/apache2/apache2.conf,我的VPS为128M内存,swap不到400M,下面是我的配置
将Timeout 改为20,如果性能好可以稍微大一些
KeepAlive改为on,MaxKeepAliveRequests为20
KeepAliveTimeout为2,如果网站上图片、js代码比较多可以稍大一些
<IfModule mpm_prefork_module>
StartServers 1//启动apache2以后运行的服务个数
MinSpareServers 1//最小空闲服务个数,如果网站人流量大可以调大
MaxSpareServers 2//最大空闲服务个数,资源紧张尽量调小
ServerLimit 10//最大服务进程数量,硬限制
MaxClients 10//最大服务进程数量,软限制
MaxRequestsPerChild 200//处理多少个请求后必须重启服务进程,php脚本小一些比较好
</IfModule>
/etc/init.d/apache2 restart重启apache服务
—————-cut—————–
部分参数详细介绍:
原文链接
发现影响apache内存性能的主要有一下几个参数:
ThreadsPerChild
MaxRequestsPerChild
————-
KeepAlive
MaxKeepAliveRequests
KeepAliveTimeout
参数介绍如下:
ThreadsPerChild:
这个指令设置了每个子进程建立的线程数。子进程在启动时建立这些线程后就不再建立新的线程了。如果使用一个类似于mpm_winnt只有一个子进程的MPM,这个数值要足够大,以便可以处理可能的请求高峰。如果使用一个类似于worker有多个子进程的MPM,每个子进程所拥有的所有线程的总数要足够大,以便可以处理可能的请求高峰。
MaxRequestsPerChild:
这个参数是说,apache进程在处理了多少个请求之后,必须退出,重新开始,以免在处理中的内存问题。
对于php脚本来说,把这个参数设置的小一些是有好处的,可以避免程序使用的内存持续增长对apache带来的压力:让这个参数定期释放内存,因为php是在脚本执行完毕后,自动释放只用的资源(内存)的。
根据资料建议,可以设置MaxRequestsPerChild来达到内存自动释放的目的,比如设置ThreadsPerChild 250,MaxRequestsPerChild为50?如果太小的话,重新产生一个apache进程也是要消耗资源的,这是一个平衡问题。
keepAlive:
KeepAlive 配置指令决定当处理完用户发起的 HTTP 请求后是否立即关闭 TCP 连接,如果 KeepAlive 设置为On,那么用户完成一次访问后,不会立即断开连接,如果还有请求,那么会继续在这一次 TCP 连接中完成,而不用重复建立新的 TCP 连接和关闭TCP 连接,可以提高用户访问速度。所以打开keepAlive时,请根据自己页面的访问量、页面数据类型来设置MaxKeepAliveRequests和KeepAliveTimeout。尤其是KeepAliveTimeout,根据你页面内包含的内联的.js和图片,设置适当大小。如果内联文件较多,建议设置MaxKeepAliveRequests和KeepAliveTimeout都大一些,如果大部分内容都在一个页面里,设置小一些可能性能更好。
通过修改以上几个参数,apache内存不在暴涨了,呵呵,我设置ThreadsPerChild 250,MaxRequestsPerChild 50,MaxKeepAliveRequests 50,KeepAliveTimeout 5 ,现在页面连开几天都没有暴涨情况了。
———————-cut———————–
/etc/php5/apache2/php.ini中与资源相关的设置
设置 描述 建议值
max_execution_time 一个脚本可使用多少 CPU 秒 30
max_input_time 一个脚本等待输入数据的时间有多长(秒) 60
memory_limit 在被取消之前,一个脚本可使用多少内存(字节) 8M
具体数字主要取决于您的应用程序。如果要从用户处接收大文件,那么 max_input_time 可能必须增加,可以在 php.ini 中修改,也可以通过代码重写它。与之类似,CPU 或内存占用较多的程序也可能需要更大的设置值。目标就是缓解超标程序的影响,因此不建议全局禁用这些设置。关于 max_execution_time,还有一点需要注意:它表示进程的 CPU 时间,而不是绝对时间。因此一个进行大量 I/O 和少量计算的程序的运行时间可能远远超过 max_execution_time。这也是 max_input_time 可以大于 max_execution_time 的原因所在。
转载请注明:转载自DarkIces.com
本文链接地址:http://dki.me/10
两条命令解决
sudo apt-get install libmcrypt4 php5-mcrypt
然后,重启下apache2 服务
sudo /etc/init.d/apache2 restart
转载请注明:转载自DarkIces.com
本文链接地址:http://dki.me/11
总算把域名也搞定了,darkice.com darkice.net都占用了,只好加一个s
vps资源真不怎么样,经常就资源耗尽了
游客也可以在右边的游客留言页面留言
认识的人需要上国外网站的VPN的可以找我。
转载请注明:转载自DarkIces.com
本文链接地址:http://dki.me/12