2013年7月4日

php---数组序列化

摘要: 有两种选择:serialize,json_encode。需求:对数组进行序列化后保存在文件中,以便爬虫来抓取文件。并且序列化后的字符串只有一行,不希望在该字符串中出现换行,即使数组中某个元素中有换行符。看一下两个函数对换行符的处理。 "test\ntest"); echo json_encode($a)."\n"; echo serialize($a)."\n";输出结果:{"test":"test\ntest"}a:1:{s:4:"test";s:9:"testt 阅读全文

posted @ 2013-07-04 16:58 awildfish 阅读(363) 评论(0) 推荐(0) 编辑

2013年7月2日

svn回滚

摘要: 有时会因为某些原因会错误提交某些文件: 1,官方版本库升级,自己的库代码也要跟着升级,但发现使用官方代码后有问题,代码需要回滚到可用的版本; 2,拷贝一个项目的代码到另外一个项目,把整个代码目录也拷贝过来了,这个时候实际上把源项目的svn信息也拷过来了,此时提交会提交到源项目,而不是目标项目。 回滚 阅读全文

posted @ 2013-07-02 16:45 awildfish 阅读(159) 评论(0) 推荐(0) 编辑

2013年6月29日

关键的设计概念----复杂度

摘要: 1,软件的首要技术使命:管理复杂度;2,管理复杂度的重要性: 项目的失败大多数由不尽如人意的需求、规划和管理导致的。当项目确实由于技术原因导致失败时,通常是就是失控的复杂度。 有关的软件变得异常复杂,没有人能够知道它究竟是做什么的,也不知道如何才能正确使用不同层次上的代码。结论:复杂度管理关系到项目成败。 Dijkstra还指出,没有谁的大脑能够容得下 一个现代的计算机程序。也就是说,作为软件开发人员,我们不应该试着在同一时间把整个程序都塞进自己的大脑,而应该试着以某种方式去组织程序,以便能够在一个时刻可以专注于一个特定的部分。这么做的目的就是尽量减少在任意时间所要考虑的程序量。结论:复... 阅读全文

posted @ 2013-06-29 16:59 awildfish 阅读(509) 评论(0) 推荐(0) 编辑

2013年6月28日

代码异味---Code smell

摘要: 程序员应该竭尽全力去写那些重复的代码。以下几点是我目前最需要改进的地方。重复代码: 相同或者相似的代码存在于一个以上的地方。长方法: 一个非常长的方法、函数或者过程。巨类: 一个非常庞大的类。太多的参数: 函数或者过程的冗长的参数列表使得代码可读性和质量非常差。链接地址:http://zh.wikipedia.org/wiki/%E4%BB%A3%E7%A0%81%E5%BC%82%E5%91%B3 阅读全文

posted @ 2013-06-28 10:04 awildfish 阅读(268) 评论(0) 推荐(0) 编辑

2013年6月24日

svn log操作

摘要: 查看当前文件夹的最近N次提交记录 svn update; svn log --limit <N> -v 含义是:查询最近N次提交记录的详细信息,包括版本号,提交文件列表,log信息 对比某个文件的两次提交 有时候想确认某个文件被修改了多少次,每次修改的部分是什么,那么下面几个命令就能够帮助到你了。 阅读全文

posted @ 2013-06-24 14:24 awildfish 阅读(720) 评论(0) 推荐(0) 编辑

2013年6月21日

理解free命令

摘要: free的输出: total used free shared buffers cachedMem: 8388608 7688912 699696 0 177756 1506532-/+ buffers/cache: 6004624 2383984Swap: 4194296 1232576 2961720第一行:total:总内存used:已使用的内存大小free:未使用的内存大小shared:共享内存,通常为0buffers:一部分... 阅读全文

posted @ 2013-06-21 19:37 awildfish 阅读(270) 评论(0) 推荐(0) 编辑

理解负载

摘要: 经常会有同事谈起负载,同时linux系统很多命令有load的输出,那么负载到底是什么呢?记住:同事说的负载指的就是linux下load值。关于负载:负载是什么?负载表示在cpu里面正在运行的进程数量。负载如何计算?用uptime会得到过去1分钟,5分钟,15分钟的load average。用vmstat能够得到过去1秒的load average,r项的输出就是过去一秒的平均负载,因为仅采样一次,也是过去一秒的负载。uptime可以这样理解:1分钟内使用vmstat采样60次,60次r值相加,再除以60,就是load average。关于进程阻塞:在web应用中,用户的一次请求通常必须在很短的时 阅读全文

posted @ 2013-06-21 18:37 awildfish 阅读(439) 评论(0) 推荐(0) 编辑

vmstat

摘要: vmstat输出内容:$ vmstatprocs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------ r b swpd free buff cache si so bi bo in cs us sy id wa st11 0 1207268 115316 22356 4558384 0 0 4 10 0 0 7 1 91 0 1具体解释:Procsr:当前有多少进程队列在CPU中执行;b:阻塞的进程数M... 阅读全文

posted @ 2013-06-21 17:19 awildfish 阅读(210) 评论(0) 推荐(0) 编辑

2013年6月17日

chrome下如何显示打开网页的IP地址

摘要: Website IP:装上之后在网页右下角能够显示当前访问网页的IP地址,这个对定位哪台前端机是有问题的,特别有帮助。 阅读全文

posted @ 2013-06-17 10:31 awildfish 阅读(1319) 评论(0) 推荐(0) 编辑

2013年6月14日

PHP 脚本后台执行

摘要: 1 问题经常有需要在后台运行的任务,一次性脚本,或者守护方式运行的脚本。我们可以用crontab来定时启动或者手工启动,但是如果想一次性启动两个关联的脚本,如何完成呢?2,两种方式方式1:ignore_user_abort函数 场景:通过web页面提交,运行一段脚本,该脚本运行需要很长时间。例如发送 阅读全文

posted @ 2013-06-14 21:05 awildfish 阅读(7060) 评论(0) 推荐(0) 编辑

导航