apache 的 5分钟

用snoopy制作一个采集程序,这个程序逻辑上需要由业务人员来手动开启采集,所以只能制作成web页面的,但是在采集过程中,却遇到了一个问题:

由于采集的数据量很大, 需要Apache很长时间去响应,当超过5分钟的时候,会发生超时,即使程序中设置set_time_limit()也没有效果。当超时后,web页面会显示服务器错误,但是通过后台监控,发现抓取程序其实还在运行,并且运行第二次,这样就会导致这个程序运行了两遍。又检查了Apache日志,发现每次请求超时(5分钟)后,Apache会很快再次发起一个请求,导致了程序的二次运行。

阅读全文

Memcached深度分析

Memcached是danga.com(运营LiveJournal的技术团队)开发的一套分布式内存对象缓存系统,用于在动态系统中减少数据库负载,提升性能。关于这个东西,相信很多人都用过,本文意在通过对memcached的实现及代码分析,获得对这个出色的开源软件更深入的了解,并可以根据我们的需要对其进行更进一步的优化。末了将通过对BSM_Memcache扩展的分析,加深对memcached的使用方式理解。

本文的部分内容可能需要比较好的数学基础作为辅助。

阅读全文

今天从excel导入数据到服务器的mysql,在本地把excel的内容拷贝到了Editplus,然后用正则把它变成了insert into 语句,在用mysql -uroot -p123456 databasename < filename.sql 导入的时候,被告知 ERROR 1062 (23000) at line 258: Duplicate entry (‘xx’,xx,xx,x,xxx) for key 2,违背了Unique Key,但是这种情况应该是正常的,重复键不插入,继续执行就好啦,可是它却报错并停止执行了。。

阅读全文

搞C#、.NET的,大都用的mssql数据库,但是在mysql里边,有一些mssql的用法是不适用的,以下是我今天刚经历的两个例子,共大家参考。

1、SELECT INTO TABLE

在mssql中, 有如下用法,可以直接把查询出的数据放到一个新表中,这条语句可以很好的用来备份表。

2、not in()

在mssql中, not in () 的括弧内可以直接放置sql语句,也可以很方便的实现特殊查询。

这条语句在mysql中就会报错。

阅读全文

作者的图片

DigDeeply

Technology Stack: Golang/PHP/Openresty, and so on…

Web Development Engineer

Beijing China