我打算按照开发,部署,维护三个过程来写这次总结!
在我们开发的时候,我们并没有遇到的什么特别大的问题!唯一的一点就是数据库
的事务处理实现。这个当我们查看了Rails的API文档之后,也就轻松的解决了!虽
然当时解决了,但是回过头来看,我们的解决并不是适当的!原因是我们没有考虑
资源竞争这个问题!也就是我们的并发可能会导致数据库的数据出现不一致!这是
我们当时没考虑到的。要解决这个问题,就需要在数据处理前先获得锁,再锁住某条
记录,然后处理。
部署阶段,我们始终没有解决一个问题,那就是NGINX对静态资源文件的下载。这是
我下一步需要去学习的。
维护阶段是最给我带来启发和收获的。首先,我们遭受了攻击。其实也不算攻击,因
为强度也不是很高,可是这还是造成了我们服务器挂掉。唉,还是部署阶段没搞好,
要不也不会这么惨。这时候我把NGINX的防御措施打开,limit_moudle,设置成每秒
允许每个IP一次请求,可是,由于页面本身有JS和CSS文件链接,这就导致了JS和CSS
无法加载,我们的服务器也就又崩了。这个问题目前还没解决,这是接下来我准备去学
习的。其次,最后的log文件下载。我使用了scp这个命令。速度还可以接受,在100KB左右
。命令如下:
scp user@remote_addr:/file/path /loaclhost/file/path
当然在下载前,先gzip了一下!
最后,我总觉得,对于这一次的项目,如果我们从一开始不这样设计,而是直接使用
web api会不会好点,因为web api就避免了大量的攻击请求,因为有token字段。
web api也是接下来我要去学习的。
虽然这次的项目最后有点失败,但是同样给我的收获不小。接下来我要做的就是把上面残留
的问题解决,然后继续学习下去。