首 页 ASP ASP.NET PHP JSP Ajax DIV+CSS JavaScript XML C#
MySQL MSSQL Access Oracle Linux Server 电脑技巧 网络安全 建站经验 其它

MySQL百万级高并发网站实战攻略

整理日期:2009年04月18日 【字体:


伊图教程网[www.etoow.com]
http://www.etoow.com/html/2009-04/1240015945.html

  例如:

  1 221.2.70.52,http://www.baidu.com,windowxp\r\n
  2 221.2.70.52,http://www.baidu.com,windowxp\r\n

  写入文件:fopen,fwrite??no 这里介绍一个非常好用的技巧,也许大家都知道,但是像我这样的菜鸟大概都不知道,那就是用error_log,这不是写错误日志的吗?对就是他,非常方便。

  格式:

  1 error_log("内容", 3, "/date.dat");

  这里我就不说他的具体用了,不明白的朋友可以查一下手册。

  B、数据文件的命名

  为什么这里要讲文件的命名呢?如果就一味的把数据的写入文件不作任何的处理那么他和直接插入数据库有多大的区别呢?那么我们所作的一切都是无用功了。

  首先是在时间的利用上:date(‘YmdH’)得到的值是如:2008121112这有什么好入,这样一来这个数据就是一个小时一个文件必免了文件过大,而且不用去判断自动生成。

  IP的应用:由于在很多数据上都是一个IP操作的,所以把相同IP的数据放在一个文件里在后面的处理就非常方便处理。请看后面的介绍,这里我们取IP成三位为文件名字的一部分。

  C、数据的导入处理

  通过以上两位的操作当天的数据会一个不少的保留下来,接下来怎么处理其实并不是很重要了。但是这里还是讲讲我的想法。

  入库前处理:

  前面讲到把IP三位相同的放一个文件就是为了入库前到它们进行处理,首先可以用最笨的方法把数据拆成N个数据。在进行重复数据的删除。

  如果一个IP浏览多页那么PV在这里就可以得到统计,并把访问的页面进行处理,组成新的数据。

  导入方法:

  这里要介绍一下数据的导入方法

  1 $sql="LOAD DATA INFILE '".$file."' INTO TABLE `test` FIELDS TERMINATED BY ',  ' LINES TERMINATED BY '\r\n'(2 3 `time` , `md5`4 5 )";

  就这一个语句,在导入几十万数据的时候可以说是十分快速的,用法我这里也不过多介绍了,大家有不明白的可以查手册,所以说解决数据库的瓶颈的办法不定要加设备,也不一定要换数据库,只要换一个思路就能解决不少问题。
MySQL百万级高并发网站实战攻略
'http://www.etoow.com/html/2009-04/1240015945.html
1
 
信息搜索
  
联系我们关于本站广告服务设为首页 收藏本站友情链接网站地图
Copyright © Etoow.com Inc. All Rights Reserved