2015年总结

前6个月在windows服务器上把一整套电商团购特卖系统开发并run起来

后6个月接触了很多

restful API开发模式开发

thinkphp+smarty、lumen、yii等框架下开发

phpUnit单元测试

jenkins自动化集成测试

自动打包发布脚本编写

gerrit git workflow

大用户量、大并发下如何防止商品超卖,如何提高并发量

redis、lua相关开发

vagrant+homestead搭建php开发环境

ELK logstash抓日志、elasticsearch做日志索引、kabana做数据分析

linux常见命令使用tailf 、wc、watch

我的14年总结

思维乱跑,昨天的稿子丢了后就没回来。重新整理一下吧。

14年给我映像很深的事由那么几件,WordPress升级很频繁就是一件,因为我很懒,这一年的博客数量少的可怜,更别提优质内容了,但每次登陆后台都有几个升级要点击。3.8到4.1四个大分支七个版本。这期间,我的一个WP插件提示我5.2的php他不支持了,为此我把php从5.2一口气升级到php5.5。
年会总是酒不醉人人自醉的,今年年初1月17日的年会是在江南赋举办的。我带着一票20个或实习或转正的学生们从帝都的东七环到帝都的西四环,横跨11环了。
事业刚刚起步,我被抽壮丁了,内部重点项目猛于虎,领导们不爱担责任、不爱出方案,只负责给我们鼓劲,让我们把竞争对手打跑。这一场仗我们打了半年,最后还是打赢了,为何?我们给客户先装上了一套测试程序,配置好了一切,只等他们试用反馈,试用反馈,直到尘埃落定。

————
刚才被搜狗输入法给打断了,他告诉我我已经打了126852字,相当于一本《我的地坛》。我的打字速度不快,38字每分。用到打字的地方不多,我没有登录输入法账户的习惯,这个电脑也是今年5月份后换到手的,除去每月一篇2000字总结外,估计8成打字都是在跟客户撕逼,2成是在写代码注释。这样就符合28定律了,你八成的时间八成是浪费在没啥意义的事上了。

——————
都说今年很忙碌,忙到什么程度呢?1周没回家?no,远远不够。1个月都住酒店,4点半下班去吃海底捞,然后吃到5、6点看日出。又或者code到趴在办公室桌上睡一夜。到底是什么支撑我度过来的呢?

————————
一度人员很足却没事做,一度人员紧缺却招不到人,我感觉我错过了什么,回想起来,当我出现这两个情况的时候,我仍旧坐以待毙,只闷着头赶着项目。明年我要在工作时间把管理的书多看几本。

——————————
今年看着大圣、XX都开始搞前端了,而我则被评为最不可能在前端有所进步的人,只能在无尽的业务中苦苦挣扎了。
是的,今年做的业务太多了,政府、事业单位、学校、部队、房地产公司、广告公司、商务公司、交通、金融每一个领域都有我的身影,我一边给公文套上红头,一边看着时间表绘制燃尽图,一边整理教师的资料,一边看着指纹身份认证,一边捣鼓cas SSO,一边拿pos机刷卡玩,一边遥控摄像头,一边通过支付宝担保交易测试团购。这样的我撕裂了又揉碎了又粘起来了。最后我成了泥。

————————————
你知道我不是个高手,你没想到的是我连个新手都不是。
PHP+mysql可以快速实现很多应用场景,但我们学的用的终归浅显。

今年又接触了几个新东西,nodejs和redis。
前者,我们搞了个大棒的雏形,然后就没有然后了。
后者,我们压了一下,发现windows下果然很慢,存储是顺序的,插入了想再排个序有点难。

LaravelPHP,参与了一把汉化工作,不过人家没屌我。

SeaJS,看明白怎么用require做加载器了,其他的还不会。

这一年技术上的知识积累太少,大概一年都在干活而没想为什么要干,干的是什么,怎么干能更好。

——————————————————
先规划下未来。
我一直有个造轮子的念头,明年我给自己定下一个造轮子计划,查漏补缺,旁征博引,拿来主义,造一套PHP的MVC框架,我对他的期待有三点,1每一次代码改进都通过git版本控制。2每一个可发布版本都具备可简单好用的特性。3在第三个大版本发布后我基本掌握Yaf相当的开发能力。
时间上没有苛求,15年力争完成第一个版本(易用、好改的ORM;简单、好记的mvc路由;完全没难度的模板系统),16年第二个版本(高效的ORM),17年(想不到那么远)

PHP编程时你没有注意过的小细节

  1. php常常是以”<?”开始,”?>”结尾;但实际上我们可以不用写”?>”,而且官方手册还推荐大家使用当使用 include() 或者 require() 时省略掉。(见语言参考-基本语法-指令分隔符中Note)

    文件末尾的 PHP 代码段结束标记可以不要,有些情况下当使用 include() 或者 require() 时省略掉会更好些,这样不期望的白空格就不会出现在文件末尾,之后仍然可以输出响应标头。在使用输出缓冲时也很便利,就不会看到由包含文件生成的不期望的白空格。

  2. 编程时常常会用到简单if else判断,如果这里足够简单的话,其实推荐使用三目运算符代替。

    例如:if($a==0){$b=1;}else{$b=2;}可以用这个代替 $b=($a==0)?1:2; 显然后者更加简短清晰,题目了然,这样就能减少不必要的大括号了。

  3. 整理总结中

     
     

他山之石

Gregory Szorc 在他網誌中分享一些他相信大部分人都不知道的 PHP 招式:

1. 結尾的 ?> 可以省略:是否必定要有這個結尾的 ?> 頗具爭議性,不過若果你的程式輸出 XML,在結尾的 ?> 後面不小心留下了一些空行,後果可以是很災難性的,所以 Gregory 說他習慣了不寫結尾的 ?>。

2. 在 PHP 程式中插入其他編程語言:例如 Java, Perl, .NET 和 Python 等,只需有了適合的 PECL 擴充模組,在 PHP 中插入其他語言可以產生很有創意的效果。

3. 可以透過陣列的語法來存取物件內的變量:透過 Standard PHP Library (SPL) 可以令物件看起來就像陣列,產生類似以下的效果:

$object = new MyObject();
$object[‘name’] = ‘Hello World’;

4. require 比 require_once 快:從 PHP 5.2 開始 require 將會比 require_once 快,因為 require 不會檢查坎入的檔案/函數是否已經存在,不過 Gregory 建議兩者不要用,應該使用 __autoload 函數或者 SPL 的 spl_autoload_* 函數。

5. 任何使用 PHP 5.1 之前的人和事都是愚蠢的:Zend 不再維護 PHP 5.0.x,PHP 4 不會再有新的功能,PHP Data Objects (PDO) 的靈活和安全性,加上對 Object Oriented 的全面支援,我們沒有理由不升級到 PHP 5.1。

Linux安全检查方法

检查系统密码文件,查看文件修改日期

[root@fedora ~]# ls -l /etc/passwd

查看passwd文件中有哪些特权用户

[root@fedora ~]# awk -F: ‘$3= =0 {print $1}’ /etc/passwd

查看系统里有没有空口令帐户

awk -F: ‘length($2)= =0 {print $1}’ /etc/shadow

检查系统守护进程

cat /etc/inetd.conf | grep -v “^#”

检查网络连接和监听端口

netstat –an

netstat –rn

ifconfig –a

查看正常情况下登录到本机的所有用户的历史记录

last

检查系统中的core文件

find / -name core -exec ls -l {} ;

检查系统文件完整性

rpm –qf /bin/ls

rpm -qf /bin/login

md5sum –b 文件名

md5sum –t 文件名

查找是否有后门

cat /etc/crontab

ls /var/spool/cron/

cat /etc/rc.d/rc.local

ls /etc/rc.d

ls /etc/rc3.d

find / -type f -perm 4000

——————————————————————————分割线——————————————————

1.Accounts检查

# less /etc/passwd

# grep :0: /etc/passwd

注意新的用户,和UID,GID是0的用户.

2.Log检查

注意“entered promiscuous mode”

注意错误信息

注 意Remote Procedure Call (rpc) programs with a log entry that includes a large number (> 20) strange characters(-^PM-^PM-^PM-^PM-^PM-^PM-^PM-^PM)

最后一条目前还没理解,也没碰到过,请指点.

3.Processes检查

# ps -aux

注意UID是0的

# lsof -p 可疑的进程号

察看该进程所打开端口和文件

4.Files检查

# find / -uid 0 –perm -4000 –print

# find / -size +10000k –print

# find / -name “…“ –print

# find / -name “.. “ –print

# find / -name “. “ –print

# find / -name “ “ –print

注意SUID文件,可疑大于10M,...,..,.和空格文件

5.Rpm检查

# rpm –Va

输出格式:

S – File size differs

M – Mode differs (permissions)

5 – MD5 sum differs

D – Device number mismatch

L – readLink path mismatch

U – user ownership differs

G – group ownership differs

T – modification time differs

注意和这些相关的 /sbin, /bin, /usr/sbin, and /usr/bin

平时养成安装第三方文件时check MD5的习惯,呵呵,要不太恐怖了

运行的时候会出很多5或者missing的提示,如果不是上面及格目录的,不用太注意

6.Network检查

# ip link | grep PROMISC

正常网卡不该在promisc模式,当然安全server除外,否则可能是有人入侵在sniffer

# lsof –i

# netstat –nap

察看不正常打开的TCP/UDP端口,嘿嘿,需要平时注意,比较,好像我没这样用心过:)

# arp –a

这个更恐怖了,难道叫人document所有的MAC地址先

7.Schedule检查

注意root和UID是0的schedule

# crontab –u root –l

# cat /etc/crontab

# ls /etc/cron.*

免费的网络资源(转)

可能已经过期,可以试试
免费存储:skydrive/live office是众多中优秀者,存储可靠,支持外链
免费空间:0fees,众多之中优秀者,不过容易被墙
文件中转:163盘
在线代理:酷摆

各大银行异地存款收费标准

各大银行异地存款收费标准
银行名称  每笔收费  最低收费  封顶收费
工商银行  百分之一   1元    50元
建设银行  千分之五   1元    50元
中国银行  千分之五   1元    50元
农业银行  千分之五   1元    25元
招商银行  千分之五   5元    没有
广发银行  千分之一   5元    没有
深发展   千分之一   5元    没有
交通银行  万分之五   10元    50元
光大银行   免费    免费    免费
民生银行   免费    免费    免费
浦发银行   免费    免费    免费