模块化(Modularization)

推荐奖接口定义以及模型、异常放到一个package里。如果需要的话,考虑将消费者者的spring的xml配置文件将公共jar包放到一起,建议将xml文件分别放到不同的路径下.例如: com/alibaba/china/xxx/dubbo-reference.xml

粒度(Granularity)

尽量将服务方法粒度大一些,否则会面对事务问题.建议不要使用Map等通用接口.

版本(Version)

推荐使用两比特作为版本号 例如: <dubbo:service interface=”com.xxx.XxxService” version=”1.0” />

兼容性(Compatibility)

服务添加方法者模型添加字段需要考虑向后兼容性. 删除方法/删除字段、枚举类型删除字段都会引起兼容性问题.

序列化(Serialization)

不要使用接口作为参数或者返回值