登录 |

php:fopen文件打开模式对比

2012年07月26日 下午 08:20 | 作者:

不枉此生

2012年07月23日 上午 25:57 | 作者:

精神鸦片 0:13:07
不管你做什么,目的都是成功
精神鸦片 0:14:29
成功之道一直存在,只是你不知道
精神鸦片 0:15:14
你要做的,就是用你能够接受的成本,用各种办法,把那个正确的道路摸出来
精神鸦片 0:17:09
在寻找的路上,你的人格、意志得到锤炼,成为一个真正的人
此所谓:不枉此生

jQuery基于状态state,事件event编程

2012年07月14日 下午 32:44 | 作者:

源文件:event



start

scan

weight

print


State = {
	pos    : 0, 
	states : ['start','scan','weight','print'],
	set : function(state) {
		for (key in this.states) {
			if( this.states[key] == state ) {
				this.pos = key*1;
				break;
			}
		}
		
		$(".state").each(function(){
			var instate = $(this).attr('state').split(' ');
			if ( typeof(instate) == 'object' ) {
				var display = false;
				 for (key in instate)   {
					  if( instate[key] == state ) {
						  display = true;
						  break;
					  }
				 }
				 
				 if ( display ) {
					 $(this).show();
				 } else {
					 $(this).hide();
				 }
			}
		})
	},
	next : function(loop) {
		var pos = this.pos + 1;
		if ( pos >= this.states.length ) {
			if ( loop ) {
				pos = 0;
			} else {
				return;
			}
		}
		this.set(this.states[pos]);
	},
	
	prev : function(loop) {
		var pos = this.pos - 1;
		if ( pos < 0 ) {
			if ( loop ) {
				pos = this.states.length-1;
			} else {
				return;
			}
		}
		this.set(this.states[pos]);
	}
};


Package = $({});

Package.bind('start print.end',function(e, data){
	State.set("start");
	// do start
	//Package.trigger('start.end',{order_id:123, order_status:'start'});
});

Package.bind('start.end',function(e, data){
	State.set("scan");
	// do scan
	//Package.trigger('scan.end',{order_id:123, order_status:'start'});
});

Package.bind('scan.end',function(e, data){
	State.set("weight");
	// do weight
	//Package.trigger('weight.end',{order_id:123, order_status:'start'});
});

Package.bind('weight.end',function(e, data){
	State.set("print");
	// do print
	//Package.trigger('print.end',{order_id:123, order_status:'start'});
});


Package.trigger("start");

MySQL各种导入方法,速度测试

2012年07月11日 下午 00:20 | 作者:

xm_storage_sale: Records: 13586126

CREATE TABLE `xm_storage_sale` (
`uniquecode` bigint(20) NOT NULL,
`barcode_id` bigint(20) NOT NULL,
`status` tinyint(4) NOT NULL,
`batch_id` int(11) NOT NULL,
`shelf_id` varchar(50) NOT NULL,
`box_id` int(8) NOT NULL,
`operator_id` int(11) NOT NULL,
`mihome` int(11) NOT NULL DEFAULT ‘0’,
`add_time` int(11) NOT NULL,
`category` tinyint(4) NOT NULL DEFAULT ‘1’,
PRIMARY KEY (`uniquecode`),
KEY `shelf` (`shelf_id`),
KEY `i_b_u_s` (`barcode_id`,`uniquecode`,`status`),
KEY `i_s` (`status`),
KEY `ix_mihome_s` (`mihome`,`status`,`barcode_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

1.mysqldump sql
time mysql -uroot -pzzzizzz1 xm_shop </mnt/hgfs/htdocs/xm_storage_sale1.sql
real    5m41.190s
user    0m18.353s
sys     0m15.601s

2.mysqlimport csv
time mysqlimport -uroot -pzzzizzz1 xm_shop /tmp/xm_storage_sale.txt
real    4m36.479s
user    0m0.000s
sys     0m0.000s

3.load infile csv
time mysql -uroot -pzzzizzz1 xm_shop -e “set foreign_key_checks=0; set unique_checks=0; load data local infile ‘/tmp/xm_storage_sale.txt’ into table xm_storage_sale;”
real    4m36.675s
user    0m0.036s
sys     0m1.172s

4.load infile csv(split 1000000 lines chunks file)
pt-fifo-split –lines 1000000 xm_storage_sale.txt
time bash load.sh
real    4m52.773s
user    0m0.120s
sys     0m0.516s
## load.sh
while [ -e /tmp/pt-fifo-split ]; do
mysql -uroot -pzzzizzz1 xm_shop -e “set foreign_key_checks=0; set unique_checks=0; load data local infile ‘/tmp/pt-fifo-split’ into table xm_storage_sale;”
date
done
## load.sh

5.insert into…select
time mysql -uroot -pzzzizzz1 xm_shop -e “insert into xm_storage_sale_copy select * from xm_storage_sale”
real    5m20.109s
user    0m0.000s
sys     0m0.004s