计费服务开发需要进行一些改进

Posted on Mon 02 August 2010 in 我思

最近计费组人员变动较大,所以我对计费服务关注比较多。在实际开发中,除了因为新人业务不熟造成的调试效率不高外,系统本身也存在一些需要改进的地方。

1. 被动调用和主动发起最好分离

被动式调用:大多数计费功能都是被动式的,接收合作方或我们自己的服务器发送的请求并进行规定的回应; 主动发起: 但也有一些周期订购逻辑,需要计费服务器主动发起一些请求。按照业务要求,主动发起只能由一个实例发起。

目前每个部署实例中,都包含主动和被动功能。现在依靠在部署环境中添加特定环境变量的约定来限制主动发起功能。是一个容易出问题的点。还不如把主动与被动分开的好。

2. 服务部署复杂度高,不同环境下的部署配置不统一

今天加班和这个配置不统一有关。出了一个特别奇怪的现象:两个环境下的代码和类库都一样,但在Release下计费服务一切正常,而Verify下计费服务无法加载正确的广播消息公共模块。 尝试在Release下模拟Verify的问题,但配置高度不一致,无法做;打算用正式环境的代码覆盖Verify,但这个操作只能摆脱系统部的人做(开发的没有这两个环境的权限),又怕引起多个主动发起,也作罢了。

3. 功能的模拟测试和自动化测试还需要加强

上周加了两天的班调一个计费应用,其实在这个应用中计费就提供了一个特别简单的接口,复杂性都在另外一个team。我们提供了一个模拟测试,让那个team的开发和测试人员都清楚的看到我们的接口是好用的。我们就不用跟着他们耗着了。 昨天和群峰、苑琪确认了,现在在Release和Verify都可以做模拟测试了。这个好习惯需要保持下去。