日常工作的流程化和自动化

作为一个程序员,日常的工作需要处理很多事情,和人打交道的就不说了,下面描述下和机器打交道的事情:

一、开发


我自己来说,开发一般要包括 bug的修改,新功能的开发
以及维护一些公共接口;涉及的工程都用svn在管理,但还是要解决版本冲突问题,分支和主干的处理等。比如你正在开发新的东西,以前的东西发现有了
bug,那么这个时候还是要有自己比较合理的安排,我一般是这么处理的:

1. 紧急程度
2. 重要程度

一般情况下可以优先处理紧急程度较高的,接下来才是处理一些重要但不紧急的。当然有时候是好几个人都给你提问题,都说很紧急,那么这个时候需要和对方商量下,对事情进行再明确,看是否真的这么紧急,是否有缓和的余地,可以为另一件较为紧急的事情争取时间。

二、处理数据

有时候需要对现有的业务数据进行再加工和整理以便于接下来对其进行更深层次的加工和挖掘,那么光数据处理这块就需要流程化。一般我是这么处理的:

将这些数据加工用程序来实现,那么对外开发一些命令,然后直接按照一定的次序执行这些命令来完成数据处理即可。设置你可以开发一个任务调度器,把这些命令放到调度器里面,你只用点一下开始按钮,它就会按序执行完毕,就更简单了。

三、部署

对于远程部署,一般需要面临两个问题:

1. 大数据的传输
2. 繁琐的脚本部署

有时候会传输一些本地做好的数据到服务器上,网速好还不错,网络差的时候真是很痛苦的事情,几十M的东西能折腾几个小时。
那么数据传输实际上可以用代理服务器的方法有所缓解,其实解决问题的根本还是这些数据尽量不要在本地做,要在服务器上做。

部署包括数据的移动,备份,服务的停止和启动等。这些如果每次都老老实实敲一遍命令实在是繁琐之极。几个服务器还好,如果上几十台,几百台服务器的时候,手动敲命令部署显得太不切合实际。

那么对于这种情况,也可以实现将应用部署的过程用脚本写好,然后开发一个控制器,直接通过在控制器里面点一个按钮就可以将应用程序更新,重启,让部署变的更加简单。

其实工作之余对日常做的事情做一下总结,看那些是可以流程化,那些不但可以流程化,还可以自动化,甚至做到半自动化也是不错的。 这样虽然做的事情再增加,却可以节省下来做更多的事情。

from:  脚本爱好者

posted @ 2011-07-25 13:54  小媒体控股  阅读(278)  评论(0编辑  收藏  举报