项目相关知识

开始一个新项目前,应当想清楚的几件事儿

2019-01-05  本文已影响941人  工程师milter

如果觉得有价值,请随意转载,只需附上原文地址和 “简书作者milter”字样即可

在做一个新项目时,我们往往喜欢快速做出一个版本,迅速上线,不断迭代。这是互联网推崇的文化。但是,我还是觉得,以下几点,最好还是想清楚一点,在一开始尽可能做好一点,这样会更有利于后续的快速迭代,也就是磨刀不误砍柴工。

1、log怎么记

记log看似很平常的事儿,但在开始一个新项目,尤其是探索性的新项目时,认真地规划一下log的记录是很重要的。因为这是以后分析问题,解决问题的重要手段。如果一开始记录的很随意,那么,后面分析统计时很可能会头疼。根据我自己的经验,规划怎么记log时,应当着重从以下几点考虑:

2、异常的定义

项目中可能出现哪些异常,都要提前考虑清楚,考虑得越详细越好。最好定义一套自己的异常体系,将自己的异常、上游的异常、第三方应用的异常都清楚地定义好。并认真考虑每种异常的处理办法,是返回错误码,还是直接崩溃?最后,这些都要记录在log中。

如果在开始项目前,对可能出现的异常难以考虑周全,建议在实施项目的过程中及时进行完善。

3、关键指标报表

项目总是要迭代的,如何知道迭代后问题确实解决了或者效果确实变好了?这就需要对项目的关键衡量指标进行度量,要在一开始就想清楚这些关键指标是什么,并做好报表。指标好比灯塔和KPI,没有明确的衡量指标,就失去了优化的方向。
指标分两类,一类是技术指标,比如性能、内存占用、线程数、机器负载等;另一类是业务指标,这依据项目的不同而不同。

4、数据和代码的同步

许多项目都要使用一些数据提供服务,这些数据也是变化的。这就涉及到代码和数据同步问题。因为如果不同步,当指标有异常变化时,就很难说是代码改动造成的还是数据改动造成的。

数据比较小时,可以直接用git,和代码放在一起。如果数据量比较大,那么就需要设计一套数据的版本控制框架,可以很简单,也可以很复杂,取决于自己的项目特点和数据的迭代频率。

5、接口的定义要留有余地

最好是每个接口都留一个字符串类型的额外参数,开发到后期,如果需要上游增加新的数据,可以让上游写成一个json字符串放在这个参数中。这是一个取巧的办法,正规的办法肯定是升级接口。即使升级接口,也不建议直接在原接口上改,建议另外建一个接口的2.0版本,这样方便兼容。当然,这要求对接口中共同的代码要抽取出来,可以在新接口中最大程度的复用。

上一篇下一篇

猜你喜欢

热点阅读