Rails Way: 用一天时间写一个好用的统计后台

公司Mac项目需要监控一段时期内各下载站点的下载情况。之前都是专门安排一个同事每天收工记录,非常的耗时间,对个人和公司资源都是巨大的浪费。正好放假前一天手头工作比较少,打算用Rails快速实现一个统计后台系统。只留一天来完成,有一定挑战性,非常刺激。

records

项目分客户端和服务器两部分。客户端每个小时抓取下载数据post到服务器上。服务器接受json格式的数据,存到数据库,按天,周展示这些数据。

步骤:
  1. 用半小时理一下数据的组织,画出来ERD的数据关系图:

  2. 在Rails中建立表,在model中定义关系,并在rails console中验证数据关系。

  3. 设置routes,page调试controller,让整个系统运行起来。

  4. Debug 部署到heroku。

感受:
  1. 实际做项目每个不同的业务都会遇到不同的问题。以前不理解时区的重要性。真正做起来发现时区是个必须要面对的问题,应该每个项目都得设计好这个问题。
    接触了更多的操作数据库的方法。比如怎么获取一天每个小时内的数据,获取一周每天的数据,每周的数据。

  2. Rails是个很好的框架。很短的时间就能实现一个完整的系统。把每天至少需要花半小时去做的统计工作,缩短到0。有了详细的数据以后,可以分析出来很多有用的数据。人总会出错,重复性的工作,交给机器去执行更加的可靠。

  3. 测试与开发进度的平衡。这次的项目功能比较简单,只有一天时间来做,没有去做测试。等主功能开发完,做点缀的功能的时候,感觉调试的成本就指数上升了。如果项目比较大,还是需要做测试。同时,这种自己发挥,边做边找到自己需要的功能的项目其实不太适合TDD。

  4. 可以在有限的时间完成设计、开发、部署,非常有成就感。编程这个创造性的工作确实很有意思。

Neil Wang

产品经理。喜欢摄影,滑板,电影。微信公众号:NeilOnly