后记

说实话整个项目的工作量有点超乎预期,而且也没能将每个细节都做到最好,但总算还是做完了。虽然花费了很多时间很多精力,但完成整个项目的那一瞬间的感动,让我觉得这一切都是值得的。

整个项目做下来让我受益匪浅。以前在公司虽然也参与过大型平台的开发,但都只是参与一部分,还没试过完整地从头到尾做一遍。我自己做的这个项目虽然算不上什么大项目,但对我自身而言,确实是完成了一次自我超越:从产生想法,到把想法转换为设计,再根据设计的大体框架完善细节,每个细节不断反思怎么样才能做得更好,整个流程完整地进行一遍,确实是切身感受到自身的进步。

在做项目之前,我已经知道整个项目该怎么做:线程池的使用、数据库的管理、模块间的协作、表达式的编译、爬网页时的抓取算法、服务端与客户端之间的socket通信等等,这些在项目开始之前就虽然已经有大致想法,但到了把想法转换为实际设计、实际编码时,才发现自己以前在很多细节处想得不够到位。各个细节先自己实现一遍,再网上找资料看一遍别人的实现,反复对比,发现问题,反复测试修改,最后才终于完成了整个项目。

当然,整个项目还有很多需要思考和可以改进的地方。比如说,服务端将所有需要用到的数据都加载到了内存,而之所以能够这么做,是因为腾讯招聘网的职位信息数据量本身并不算庞大,那如果数据量大到无法一次性全部装入内存时该怎么办? 再比如说,服务端现在只是运行在一个机器上,如果同时通信的用户量大到一定程度,一个机器不够用了的情况下,是不是要负载均衡,是不是要考虑将系统改造成分布式架构?

我做的这个项目有规模上的局限性,当规模扩大,不管是数据量的扩大、计算量的扩大或是通信量的扩大,项目应该要如何改进?这是我以后需要研究的方向和课题。

results matching ""

    No results matching ""