【实习记】2014-08-21项目被评审总结


   

前言


第一个小小项目,后来发现确实很多不足,感谢导师和leader的评审。


总结几点:


现金支付时刻注重安全,稳定,任何时候都认为发过来的数据是不安全的。

数据库表应为innodb引擎,而不是myiasm引擎,以支持事务回滚。

常用字段设置index。

设有备用字段以便以后扩展。

token属于非必须自动,可以放于内存。

密码验证过程用随机干扰码增强安全。

web与cgi通信,cgi与server通信协议应不同。

socket通信时应先读4bytes取出长度,循环读包直到长度足够。

接收数据不能截断,属于数据毁坏,可以分页分次读取。

数据长度与声称的不同,应予报错。

CGI与server的通信应是短链接,server则维护一个消息队列。

CGI与server通信协议key=value等形式比较易扩展。


事后总结


这个项目是比较不切合实际的,运行成功,但有很多缺点。最大的缺点是没有实际模拟出第三方支付平台的功能。既做了淘宝一部分,又做了支付宝一部分。
没有使用余额,结算时不复杂,没有使用事务型数据库开发。
cgi与server的通信协议没有统一,后面混乱了,这是一开始没有考虑可扩展性的后果。
cgicc需要再度封装,mysql的api要用c++的方式在封装。