Monthly Archive十一月 2007



linux 维护优化 & 技术 29 Nov 2007 10:25 am

查看Apache并发请求数及其TCP连接状态[转]

http://blog.s135.com/read.php/269.htm

引用

# prefork MPM
# StartServers: number of server processes to start
# MinSpareServers: minimum number of server processes which are kept spare
# MaxSpareServers: maximum number of server processes which are kept spare
# MaxClients: maximum number of server processes allowed to start
# MaxRequestsPerChild: maximum number of requests a server process servesStartServers 10
MinSpareServers 10
MaxSpareServers 15
ServerLimit 2000
MaxClients 2000
MaxRequestsPerChild 10000


  查看httpd进程数(即prefork模式下Apache能够处理的并发请求数):
Linux命令:

引用

ps -ef | grep httpd | wc -l

返回结果示例:
1388
表示Apache能够处理1388个并发请求,这个值Apache可根据负载情况自动调整,我这组服务器中每台的峰值曾达到过2002。


  查看Apache的并发请求数及其TCP连接状态:
Linux命令:

引用

netstat -n | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}’

(这条语句是从 新浪互动社区事业部技术总监王老大那儿获得的,非常不错)
返回结果示例:
LAST_ACK 5
SYN_RECV 30
ESTABLISHED 1597
FIN_WAIT1 51
FIN_WAIT2 504
TIME_WAIT 1057
其中的SYN_RECV表示正在等待处理的请求数;ESTABLISHED表示正常数据传输状态;TIME_WAIT表示处理完毕,等待超时结束的请求数。


  关于TCP状态的变迁,可以从下图形象地看出:
点击在新窗口中浏览此图片
状态:描述
CLOSED:无连接是活动的或正在进行
LISTEN:服务器在等待进入呼叫
SYN_RECV:一个连接请求已经到达,等待确认
SYN_SENT:应用已经开始,打开一个连接
ESTABLISHED:正常数据传输状态
FIN_WAIT1:应用说它已经完成
FIN_WAIT2:另一边已同意释放
ITMED_WAIT:等待所有分组死掉
CLOSING:两边同时尝试关闭
TIME_WAIT:另一边已初始化一个释放
LAST_ACK:等待所有分组死掉

LINUX & 技术 29 Nov 2007 10:08 am

网站负载均衡技术[转]

http://blog.s135.com/read.php/307.htm

DNS轮循
  DNS轮循是指将相同的域名解释到不同的IP,随机使用其中某台主机的技术。但其具有明显的缺点:一旦某个服务器出现故障,即使及时修改了DNS设置,还是要等待足够的时间(刷新时间)才能发挥作用,在此期间,保存了故障服务器地址的客户计算机将不能正常访问服务器。DNS负载均衡采用的是简单的轮循负载算法,不能区分服务器的差异,不能反映服务器的当前运行状态,不能做到为性能较好的服务器多分配请求,甚至会出现客户请求集中在某一台服务器上的情况。

  F5 BIG-IP
  简介:F5 Networks 公司的著名硬件负载均衡交换机。支持硬件四层、七层交换。不同的型号性能不同,BIG-IP 6400可以支持800万条并发连接,低一点型号的可以支持400万条以上的并发连接。性能极高,但价格也不菲。
  价格:BIG-IP 6400的价格在16万元人民币左右。
  网址:http://www.f5.com.cn/(中国) http://www.f5.com/(全球)

  LVS(Linux Virtual Server)
  简介:软件四层交换。LVS是在Linux内核中作四层交换,只花128个字节记录一个连接信息,不涉及到文件句柄操作,故没有65535最大文件句柄数的限制。LVS性能很高,可以支持100~400万条并发连接。
  价格:免费、开源
  网址:http://zh.linuxvirtualserver.org/

  L7SW(Layer7 switching)
  简介:软件七层交换。这是一款类似LVS的新负载均衡软件,我没有实际应用过,性能未知,因此不作评价。这是它的英文介绍:Layer7 switching is driving a low-level engine using networking design to speed-up forwarding of data stream. Implementation in this project is split into a userspace daemon and a low-level kernelspace forwarding engine. Userspace daemon is responsible for scheduling and switching decisions. Kernelspace forwarding engine is responsible for forwarding stream and using TCP-Splicing scheme. TCP-Splicing is the postponement of the connection between the client and the server in order to obtain sufficient information to make a routing decision. This project is close to Linux Virtual Server project since lot of discusions on this topics have been made online and offline LVS project.
  价格:免费、开源
  网址:http://www.linux-l7sw.org/

  HAProxy
  简介:软件七层交换,反向代理服务器。目前还不支持虚拟主机,但其配置简单,拥有非常不错的服务器健康检查功能,当其代理的后端服务器出现故障,HAProxy会自动将该服务器摘除,故障恢复后再自动将该服务器加入。另外,HAProxy还支持双机热备。我曾经用过一段时间,能支持2~3万条并发连接。现在我用它做普通的小并发负载均衡,主要用到的是它的服务器健康检查功能。
  价格:免费、开源
  网址:http://haproxy.1wt.eu/

  Nginx
  简介:软件七层交换,反向代理服务器。能够很好地支持虚拟主机,可配置性很强,可以按URL做负载均衡。我目前一直在用,大约能支持3~5万条并发连接。
  价格:免费、开源
  网址:http://wiki.codemongers.com/NginxChs(中文维基)

linux 维护优化 & 技术 16 Nov 2007 10:28 am

解决不能通过mysql.sock连接MySQL问题

mysql不能启动,报找不到xxx.sock

kill -9 进程。不行
查看my.cnf配置。没错

看了一下error.log,发现没空间了

df -ks
du -hs /opt
/opt占了三十几G,原来apache日志一直没清过,新上的产品每天又产生近2G的日志。

把日志删了后就正常了.

修改apache
CustomLog combined /dev/null

LINUX & 技术 15 Nov 2007 06:15 pm

squid 安装

按照此贴安装
http://bbs.chinaunix.net/thread-873126-1-1.html

# 来自车东
./configure –enable-useragent-log –enable-referer-log –with-large-files –enable-default-err-language=Simplify_Chinese \ –enable-err-languages=”Simplify_Chinese English” –disable-internal-dns

++apache的log显示ip来源都是127.0.0.1,修改配置文件使其可以正常记录来访IP
将CustomLog的%h改为%{X-Forwarded-For}i,其它不变.

++快速清空cache
echo ” ” > $CachePath/caches/swap.state

对于类似http://you.video.sina.com.cn/index.html之类的网页,squid只会生成一个缓存文件。可以用squid附带的squidclient工具清除:
引用
squidclient -m PURGE -p 80 “http://you.video.sina.com.cn/index.html”

多个网址可参考这里
但在取URL时存在10%的错误率
http://www.365bloglink.com/go.php?id=0215245
老外的程序,可以批量清除某类URL的Squid缓存,支持正则表达式
http://blog.s135.com/read.php/308.htm

常用命令
1,初始化你在 squid.conf 里配置的 cache 目录
#squid/sbin/squid -z
如果有错误提示,请检查你的 cache目录的权限。
2,对你的squid.conf 排错,即验证 squid.conf 的 语法和配置。
#squid/sbin/squid -k parse
如果squid.conf 有语法或配置错误,这里会返回提示你,如果没有返回,恭喜,可以尝试启动squid。
3,在前台启动squid,并输出启动过程。
#squid/sbin/squid -N -d1
如果有到 ready to server reques,恭喜,启动成功。
然后 ctrl + c,停止squid,并以后台运行的方式启动它。
4,启动squid在后台运行。
#squid/sbin/squid -s
这时候可以 ps -A 来查看系统进程,可以看到俩个 squid 进程。
5,停止 squid
#squid/sbin/squid -k shutdown
这个不用解释吧。
6,重引导修改过的 squid.conf
#squid/sbin/squid -k reconfigure
这个估计用的时候比较多,当你发现你的配置有不尽你意的时候,可以随时修改squid.conf,然后别忘记对你的 squid.conf排错,然后再执行此指令,即可让squid重新按照你的 squid.conf 来运行。
7,把squid添加到系统启动项
编辑 /etc/rc.d/rc.local
添加如下行:
echo “65535″>/proc/sys/fs/file-max
ulimit -HSn 65535
/usr/local/squid/sbin/squid -s
当然,并不是每个人都喜欢这种启动方式,你可以用你最习惯的方式;或者把它安装为服务。

#查看运行信息
/usr/local/squid/bin/squidclient -h 127.0.0.1 -p 81 mgr:info

#分割日志
20 0 * * * /usr/local/squid/sbin/squid -k rotate

再来点其他的。
1,修改cache 缓存目录的权限。
#chown -R squid:squid /home/cache
我的cache缓存目录是 /home/cache,squid执行用户和用户组是 squid,squid。
2,修改squid 日志目录的权限
#chown -R squid:squid /usr/local/squid/var/logs
这一步并不是适合每一个使用squid的用户.意为让squid有权限在该目录进行写操作 。
例如生成 access.log cache.log store.log
3,查看你的日志文档。
#more /usr/local/squid/var/logs/access.log | grep TCP_MEM_HIT
该指令可以看到在squid运行过程中,有那些文件被squid缓存到内存中,并返回给访问用户。
#more /usr/local/squid/var/logs/access.log | grep TCP_HIT
该指令可以看到在squid运行过程中,有那些文件被squid缓存到cache目录中,并返回给访问用户。
#more /usr/local/squid/var/logs/access.log | grep TCP_MISS
该指令可以看到在squid运行过程中,有那些文件没有被squid缓存,而是现重原始服务器获取并返回给访问用户。
关于 TCP_XXXX 等参数及代表的信息,请参看《squid中文权威指南》13.2.1 章节。
当然,本例中的蓝色文字是可以修改为其他的参数,例如你的域名 www.xxxx.com ,同样可以看到access.log里关于该域名的行。

安装时需注意rh的selinux安全设置,会造成无创建cache目录

LINUX & 技术 14 Nov 2007 04:19 pm

redhat4 gcc 安装

glibc-kernheaders glibc-headers glibc-devel cpp gcc 五个文件,注意顺序

http://download.quicklinux.org/RPMS.os/
http://download.quicklinux.org/RPMS.os/glibc-kernheaders-2.4-9.1.89.i386.rpm
http://download.quicklinux.org/RPMS.os/glibc-headers-2.3.4-3.i386.rpm
http://download.quicklinux.org/RPMS.os/glibc-devel-2.3.4-3.i386.rpm
http://download.quicklinux.org/RPMS.os/cpp-3.4.3-17.i386.rpm
http://download.quicklinux.org/RPMS.os/libgcc-3.4.3-17.i386.rpm
http://download.quicklinux.org/RPMS.os/gcc-3.4.3-17.i386.rpm

相关的rpm包在redhat的iso镜像里都能找到。

wget 以上包

rpv -ivh 安装

安装好后,使用 rpm -qa | grep gcc 会发现gcc已经成功安装了,我们还可以使用 rpm -qR gcc-xxx 查询一下gcc都依赖于哪些文件。

JavaScript/DOM/XML & 技术 14 Nov 2007 11:52 am

复制到系统剪贴板之IE,ff兼容版

http://www.w3c-cn.com/article.asp?id=88

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  2. <script type="text/javascript">
  3. // <![CDATA[
  4. function copy_clip(copy){
  5. if (window.clipboardData){
  6. window.clipboardData.setData("Text", copy);}
  7. else if (window.netscape){
  8. netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
  9. var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
  10. if (!clip) return;
  11. var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);
  12. if (!trans) return;
  13. trans.addDataFlavor('text/unicode');
  14. var str = new Object();
  15. var len = new Object();
  16. var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
  17. var copytext=copy;
  18. str.data=copytext;
  19. trans.setTransferData("text/unicode",str,copytext.length*2);
  20. var clipid=Components.interfaces.nsIClipboard;
  21. if (!clip) return false;
  22. clip.setData(trans,null,clipid.kGlobalClipboard);}
  23. alert("已复制"+copy)
  24. return false;
  25. }
  26. // ]]>
  27. </script>
  28. <h1>请另存代码测试</h1>
  29. <input type="text" id="ff" value="我要复制的东西" /><button onclick="copy_clip(document.getElementById('ff').value)">复制
  30. </button>

FF下需设一下安全
第一步.在Firefox浏览器的地址栏中输入 about:config
第二步.将 signed.applets.codebase_principal_support 的值从 false 更新为 true 。

Database & 技术 13 Nov 2007 11:11 am

用mysqldumpslow分析mysql的slow query log(转)

mysql有一个功能就是可以log下来运行的比较慢的sql语句,默认是没有这个log的,为了开启这个功能,要修改my.cnf或者在mysql启动的时候加入一些参数。如果在my.cnf里面修改,需增加如下几行

long_query_time = 1
log-slow-queries = /var/youpath/slow.log
log-queries-not-using-indexes

long_query_time 是指执行超过多久的sql会被log下来,这里是1秒。
log-slow-queries 设置把日志写在那里,可以为空,系统会给一个缺省的文件host_name-slow.log,我生成的log就在mysql的data目录
log-queries-not-using-indexes 就是字面意思,log下来没有使用索引的query。

把上述参数打开,运行一段时间,就可以关掉了,省得影响生产环境。

接下来就是分析了,我这里的文件名字叫host-slow.log。
先mysqldumpslow –help以下,俺主要用的是
-s ORDER what to sort by (t, at, l, al, r, ar etc), ‘at’ is default
-t NUM just show the top n queries
-g PATTERN grep: only consider stmts that include this string

-s,是order的顺序,说明写的不够详细,俺用下来,包括看了代码,主要有
c,t,l,r和ac,at,al,ar,分别是按照query次数,时间,lock的时间和返回的记录数来排序,前面加了a的时倒叙
-t,是top n的意思,即为返回前面多少条的数据
-g,后边可以写一个正则匹配模式,大小写不敏感的

mysqldumpslow -s c -t 20 host-slow.log
mysqldumpslow -s r -t 20 host-slow.log

上述命令可以看出访问次数最多的20个sql语句和返回记录集最多的20个sql。
mysqldumpslow -t 10 -s t -g “left join” host-slow.log
这个是按照时间返回前10条里面含有左连接的sql语句。

用了这个工具就可以查询出来那些sql语句是性能的瓶颈,进行优化,比如加索引,该应用的实现方式等。

其它 & 分析报告 12 Nov 2007 03:45 pm

WAP的用户行为分析——无聊经济

说WAP是无聊经济,一点也不为过。在使用WAP的原因分布中,“在移动状态下(如上下班途中等)使用”的比例超过了一半,选择“在无聊的时候,打发时间”的比例也超过1/3,而“在一些突发需要上网的时候只能使用WAP”的比例也超过1/4,因此可以发现WAP的移动性即不受地理条件的限制是其吸引用户最主要的方面。此外“包月资费便宜”和“对新技术比较好奇,尝试一下”的比例分别为18.5%和17.0%。

WAP是被迫使用,用户只有在特定情况下,主要是在没有电视和电脑上网等替代品的情况下才使用WAP。据调查,用户一般在以下情况使用WAP:在车上,上课时(无聊时),等车中,临睡时床上,出差途中。

很少有人主动要使用WAP。与游戏相比较,游戏有瘾,人们会去想主动玩游戏,很多人买电脑是为了玩游戏;而很少有人为了上WAP而买手机的。WAP就如同最早的黑白屏幕的286电脑一样,早期只有技术狂热性的和非用不可的人群才会使用。WAP复杂的输入操作,缓慢的速度和内容的单调性等都是限制其发展的因素。

对于数字音乐产业来说,研究WAP用户其实是研究未来音乐消费者的特征。目前是铃声业务业务,接下来是全曲下载业务。未来手机会代替MP3,就如同手机会替代寻呼机一样。这里面会有一部分人会是使用免费的音乐,但仍然有一部分人会付费下载音乐。这个时候,了解什么样的用户会在什么特定情况下会为手机音乐付费,是我们要早做准备的事情。

WAP用户的特征:

WAP用户分布很广,也会有高低用户之分,例如有大城市用户和中小城市的用户;有高端机型用户和低端机型用户;有白领用户和农民工用户。但是,WAP仍然有一个主要消费人群。一般来说,低端用户虽然收入很低,但是却为WAP业务(图铃等)付费的主要人群;高端用户(高端收入、高端机型、大型城市)虽然是WAP的浏览用户,但是他们很少会为WAP业务付费(例如付费图铃业务等)。

高端机型用户一般为白领,销售人员,还有部分大学生,这一类人群中技术发烧性用户比较多;WAP的低端机型的用户一般为务工人群,例如广东外来务工人群,他们住集体宿舍,没有电脑上网,没有电视。

WAP用户有一个共同特点是:群居;在公司和公车上,外地出差中使用WAP;其中学生和打工仔都是没有电脑和电视的宿舍中使用,一般会集中在晚上临睡前上下班的公车上(铃声下载类的操作一般不会在地铁里,因为信号不太好)使用业务。

WAP用户在以下七个方面有鲜明的特征,并且都和“无聊经济”有着关系

1、用户的地域分布

WAP主要分布在广东、北京、上海、江浙等发达省份和城市。广东最多,广东WAP 用户数约为970 万人,占到了全国WAP 用户的1/4,北京和上海的WAP用户数量分别为170 万人和130 万人。

WAP 用户的地域分布集中在我国东部经济相对比较发达的东部地区,这些地方工厂、公司、学校比较集中。但是WAP却不属于最高端人群的业务,而是这些地方的中低端人群消费的业务。以广东为例,广东WAP用户占1/4,但是WAP业务规模却占全国一半以上。这是因为广东外来务工人群居多,一般都是封闭式的工厂,工人住宿舍,WAP是这个人群特有的消遣方式,是一个专门为低收入人群服务的市场。

2、上网条件

之前说过,WAP是无聊经济,是在没有电视和电脑上网的情况下才被迫使用的。根据WAP用户的使用动机,用户通常都会在闲暇无聊的情况下浏览WAP门户网站,拥有无聊闲暇时间最大的是经常跑外的销售人员,以及公车上班一族,以及上课时无聊的学生一族。在上下班高峰,以及夜间临睡前WAP的使用比例最高。

WAP用户与互联网用户重合度也低,估计在30%以内。WAP用户不是你我这样人手一台电脑的人,很多人都是没有接触过电脑而直接成为WAP用户的。

3、性别

WAP用户中,男性占到了8成,女性仅为2成(目前有调查说女性WAP用户在增加的趋势),而传统互联网网民中男性的比例为58.3%,女性为41.7%,可以发现WAP用户男性用户的比例更高。这和WAP的主要群体的职业也有关系。例如男性对技术性更敏感,愿意探索新事物。而女性一般会选择其他消遣方式,例如与人聊天、电话以及看电视等方式。

4、年龄

WAP 用户中,年龄在18~24 岁的比例超出了一半,为51.6%,年龄在25~30 岁的比

例也超出了1/4,为27.8%,31~40 岁的比例为13.1%, 40 岁以上的比例仅有2.2%。值得

一提的是,“80 后”的用户占到所有用户的73.2%。与传统互联网网民相比,WAP用户的年龄更加年轻,也更加集中于18~30 岁年龄段。年轻人更易接受新鲜事物,对技术性产品学习和掌握也更快。

5、职业

WAP 用户中,学生和基础职业(保安、军人、工人)占大部分。其中学生的比例超过了2 成,企事业单位普通员工的比例约为1/4,企事业单位的管理人员的比例也达到了10.8%,专业技术人员的比例也达到了16.2%,农民工虽然在这里面的比例不是太大,但是农民工却是WAP付费业务消费的中坚力量。

WAP 用户中,文化程度为高中的比例最高,为35.8%,文化程度为大学本科和大专的比例则分别为27.1%和21.7%。

6、收入

WAP 用户的个人月收入在1000-2000 元的比例最高,达到了29.5%,2000-3000元的比例为16.2%,而无收入的比例达到21.1%是由于学生用户占有相当的比例。WAP用户中月

收入在3000元以下的比例达到了78.1%,月收入在3000元以上的比例仅为21.9%。

WAP中高收入的人群是白领阶层,属于技术发烧型的人群。他们无论是电脑还是手机,还是其他数码产品都比较精通。WAP中的中收入人群可能是销售人员,上网条件不太便利。

WAP用户中,每月话费消费在100元以内的占56%。这也证明WAP是为特定的低收入用户服务的业务,他们钱不多。但是有闲,并且很少有其他可替代的娱乐项目;而高收入用户一是时间比较繁忙,有钱无闲;二是有其他的可替代WAP的娱乐项目。

7、PC以及手机操作水平

很多用户都是没有接触过互联网而直接使用WAP的。WAP用户的PC操作水平分三部分人,一是技术型用户,玩家级别的;二是初级水平;三是不会上网的。除了少量技术型用户,大部分用户对PC的操作水平都不是太高。

对于手机操作水平,无论用户使用高端机型还是低端机型,无论是高收入用户还是低收入用户,只要不是属于技术性的用户,对手机操作水平都不是太高。

例如,年龄在30岁以上的领导阶层,尽管使用高端机型,尽管收入也很高,但是他们的PC和手机操作能力都不高;另外是低收入使用低端机型的务工人群,PC和手机操作能力都不高;只有中间的白领和学生,操作能力比较高,他们一般是属于技术行用户。

所以,WAP网站和WAP业务在考虑业务设计时,一定要处处想着WAP用户这些人群的特点。懒人推动技术进步,为了他们着想的人才会赢得先机。

附:其他一些数据(以下数据来自互联网,仅供参考)

1、WAP用户形象目前手机上网的形象目前被认为是时尚一组。即便是农民工兄弟的使用,其形象也是在农民工群体中相对时尚新潮一组。

目前使用群体特征:时尚、对新鲜事物感兴趣、容易接受新事物,对资讯需求大,对技术感兴趣的男性年轻用户居多。

和彩铃业务一样,WAP初期的用户是第一批追求新事物的年轻时尚人群。随着业务的成熟,逐渐会扩散到大众用户市场。

2、WAP内容单调。内容方面是导致使用者放弃手机上网的原因。

内容上的单调、匮乏致使目前使用者新鲜感逐渐消失,导致每次上网都是无特别目的,而内容或服务的介绍文字非常古板,千篇一律缺乏特点与个性。内容更新慢,主要从铃声图片感觉明显--1-2个月才有些变化。

用户对全曲下载的内容要求比彩铃要挑剔的多。使用频率更活跃,也更容易退订因为彩铃用户听不到自己的歌曲,所以很容易沉默。全曲用户需要天天有新东西,因为近半数的用户会天天浏览。

3、WAP 上网的使用特征分析

WAP 用户中新增用户的规模较大,一年内的新增用户占到所有用户的47.5%;6成的用户使用WAP的频率不低于每周一次,平均每次使用WAP的时间以10~30 分钟最多,重度用户占所有用户的40.4%;有54.3%的用户只上或者尽量选择免费的网站,31.6%的被访者表示无所谓收费和免费,14.2%的被访者表示只上手机内置的网站。

WAP 用户认知WAP 站点主要通过三大途径:手机内置、口碑相传和传统互联网;用户使用较多的WAP服务有手机图铃下载、WAP 搜索、在线游戏、在线音乐和在线图书;WAP 用户对目前手机上网的意见主要集中在速度和资费方面。

4、WAP 用户使用频率

对WAP的使用频率分布中,每天使用多次的比例为13.8%,每天一次的比例也有15.3%,

每周至少一次的比例为28.3%,这三者汇总的比例占到了57.4%,这说明WAP用户对WAP

的使用频率较高,近6 成的用户使用WAP的频率不低于每周一次。学生用户的使用频率略

高于非学生用户。

WAP 用户平均每次使用WAP 的时间以10~30 分钟的比例最高,为31.8%,在5~10 分钟的比例也超过了两成,总体上看WAP 用户每次的使用时间都不长,平均在30 分钟以内的比例为64.7%,在1 小时以内的比例为80.9%。非学生用户平均每次使用时间要略高于学生用户。将WAP使用频率与每次使用时长交叉可以发现,使用频率较高的用户平均每次的使用时间长度也比较长,这是由于用户的使用习惯受到惯性影响。

5、WAP 用户对站点选择的态度

27.5%的被访者表示只上免费的WAP网站,还有26.8%的被访者表示尽量选择免费的网站,此两者占到了所有被访者的54.3%。有31.6%的被访者表示无所谓收费和免费,只选择上自己喜欢的网站,此外还有14.2%的被访者表示只上手机内置的网站。调查结果显示,免费网站更受欢迎,但收费网站如果能提供有吸引力的内容也会有相当的市场,还有部分用户由于操作等方面的原因只上手机内置网站,表明手机内置对WAP用户尤其是新用户是一个非常重要的渠道。

6、使用WAP 的平均每月花费

WAP 用户使用WAP 的平均每月花费在11~20 元间的比例占所有用户的1/4 强,在21~50 元间的比例超过了1/5,6~10 元的比例也达到了1/5,超过2/3 的用户每月花费在WAP上的费用在6~50 元之间。

手机图铃下载使用状况:最近半年内使用过WAP 下载手机图铃的比例占到了所有WAP 用户的63.0%,那么意味着半年内使用WAP下载图铃的用户约为2460万人。调查发现通过WAP下载手机图铃的用户典型特征为男性、24~30 岁、月收入为1001~3000 元的企事业单位普通员工。

WAP 音乐使用状况:最近半年内通过WAP 在线试听/下载音乐的比例为40.2%,那么意味着半年内通过WAP玩在线试听/下载音乐的用户约为1570 万人。文化程度为高中及以下,年龄在18~24 岁之间的用户更倾向于通过WAP 在线试听/下载音乐。

7、用户经常访问的WAP站点

WAP 用户经常访问的WAP 网站中,排名前十名的网站为(以下排名不分前后,按照中文名称拼音排序):

n 移动梦网

n 3G 门户

n 空中网

n 乐讯网

n 手机百度

n 手机搜狐网

n 手机腾讯网

n 手机新浪网

n 网易WAP

n 易查搜索

linux 维护优化 & 技术 12 Nov 2007 03:38 pm

linux下自动校时

在root用户下编辑启动脚本

vi /etc/rc.d/rc.local
#加一句
/usr/bin/rdate -s time-a.nist.gov

ntp比较麻烦点
crontab 可能造成时间不连续

time-a.nist.gov 注:美国NIST守时中心
time.join.uni-muenster.de

LINUX & 技术 05 Nov 2007 11:11 am

memcached 和imagemagick安装

www.danga.com
下载
* memcached-1.1.13.tar.gz — Sep 9, 2006

wget http://www.danga.com/memcached/dist/memcached-1.1.13.tar.gz
tar -zxvf memcached-1.1.13.tar.gz
cd memcached-1.1.13
sudo ./configure –prefix=/opt/memcahed
sudo make
sudo make install
/opt/memcached/bin/memcached -d -m 2

imagemagick

Jpeg v6b、libPng、FreeType 的要在安装imagemagick之前先装好,否则imagemagick没法读取jpeg和png图片

wget ftp://ftp.uu.net/graphics/jpeg/jpegsrc.v6b.tar.gz

tar zxvf jpegsrc.v6b.tar.gz

cd jpeg-6b

./configure –prefix=/usr/local/jpeg-6b –enable-shared –enable-static
make
mkdir /usr/local/jpeg-6b
mkdir /usr/local/jpeg-6b/include
mkdir /usr/local/jpeg-6b/lib
mkdir /usr/local/jpeg-6b/bin
mkdir /usr/local/jpeg-6b/man
mkdir /usr/local/jpeg-6b/man/man1
make install

 ———————————————————————-

wget http://download.savannah.gnu.org/releases/freetype/freetype-2.3.5.tar.gz

tar zxvf freetype-2.3.5.tar.gz

cd freetype-2.3.5.tar.gz

./configure –prefix=/usr/local/freetype

make

make install

cp /usr/local/freetype/include/freetype2/freetype/* /usr/local/include/

——————————————————————–

wget http://www.zlib.net/zlib-1.2.3.tar.gz

tar zxvf zlib-1.2.3.tar.gz

cd zlib-1.2.3

./configure –prefix=/usr/local/zlib

make

make install

—————————————————————-

wget http://jaist.dl.sourceforge.net/sourceforge/libpng/libpng-1.2.29.tar.gz

 tar zxvf libpng-1.2.29.tar.gz

 cd libpng-1.2.29

./configure  prefix=/usr/local/libpng

make

make install

—————————————————————–
http://www.imagemagick.org/script/install-source.php#unix

wget ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz

tar zxvf ImageMagick.tar.gz

cd ImageMagick-6.3.1
sudo ./configure –prefix=/usr/local/imagemagick –enable-shared –enable-lzw –with-modules LDFLAGS=’-L/usr/local/imagemagick/lib -R/usr/local/imagemagick/lib’  CPPFLAGS=”-I/usr/local/
jpeg-6b/include -I/usr/local/libpng/include -I/usr/local/freetype/include -I/usr/local/freetype/include/freetype2″ LDFLAGS=”-L/usr/local/lib -L/usr/local/jpeg-6b/lib -L/usr/local/libpng/lib -L/usr/local/freetype/lib”
sudo make
sudo make install

/sbin/ldconfig /usr/local/imagemagick/lib

/usr/local/imagemagick/bin/convert logo: logo.gif

Next Page »