按最近公司的架构,本身搭建这样个样例。主要是将服务API层进行了区分,解耦接口与模型层.java
其中pojo层与vo层都是用来传递参数用法,API-facade层与service是两个概念。API-facade层有统一的规范,能够返回统一结果:git
Result {github
int statecode;web
int stateText;redis
T data;数据库
public boolean isSuccess();bootstrap
public boolean isBizFailure();api
public boolean isFailure();缓存
}tomcat
建议把vo与model及pojo层分开,用不一样名称如 UserInfoVo,UserInfo,UserInfoPo
若是使用dubbo来构建。从分包层次来讲。应该有:
通常来讲能够有这层次。还能够多一层。将facade再包装一层。叫整合api层。
如何使用:
如何下载:
https://github.com/tangdu/dubbo-api.git
如何初始化:
执行sample-master下的init_eclipse.sh 或是在项目下执行 gradle eclipse
-------关于-----------
关于面向SOA 我理解是:项目无状态、提供API。权限等再包装上层,所谓网关。
由这层能够作权限 、验证、加密、限流、统计。
对于完整项目来讲,应该还要集成缓存 、job、UI、中间件、message
分享几个框架:redis、ehcache、quartz或Elastic-job、zookeeper、RocketMQ、bootstrap、sui3