关于部门后端全部转向java前初步设想
2016-01-06 00:27
393 查看
Java服务有些什么形式?目前来看主要是以下几类:
1、 运行在Web应用服务器的Servlet
2、 Thrift、PB、Avro等类似框架写的java服务
3、 WebService(JAX-WS、JAX-RS)
现在我们服务端要全面转向java。
1 若后端子系统全部用Servlet写,将无法实现跨语言,我们现在客户端大部分还是.NET平台。
2 若用Thrift等框架,现在满足了.NET调用Java服务,以后若客户端也全面使用用Java了,并且是Web客户端,那么用Thrift写的java服务如何进行服务。
3 Webservice不考虑,restful描述能力有限,SOAP也比较复杂,况且WS的主要应用场景是在于与第三方团队协作开发、或者公布内部系统接口给其他企业使用类似的场景,可能在广域网环境下的C/S架构也会考虑。我们自己内部的平台还是需要考虑使用稳定、可靠、高效、简单的RPC框架较为合适。
思考再三决定采用如下架构:
正好结合我之前开发的分布式注册中心、消息中间件等组件,后端子系统可以形成一个良好的生态圈。
这只是初步设想,还需进一步仔细考虑,若哪位有经验的朋友路过可以赐教。
还有一个问题不明,现在互联网业界常规的做法,后端Java子系统的运行形式一般是什么?
是运行在Web应用服务器的Servlet?那么如何提供服务给其他平台的子系统使用?
是Thrift等RPC框架编写的Java服务?那么其生命周期,调度等如何进行管理?
这样的架构下,.NET客户端直接调用后端服务,如果是在广域网环境下,Thrift、Ice这类框架(基于TCP协议)还能够稳定高效地工作?
对于这种情况是否换成基于Http协议的WebService较为合适?
1、 运行在Web应用服务器的Servlet
2、 Thrift、PB、Avro等类似框架写的java服务
3、 WebService(JAX-WS、JAX-RS)
现在我们服务端要全面转向java。
1 若后端子系统全部用Servlet写,将无法实现跨语言,我们现在客户端大部分还是.NET平台。
2 若用Thrift等框架,现在满足了.NET调用Java服务,以后若客户端也全面使用用Java了,并且是Web客户端,那么用Thrift写的java服务如何进行服务。
3 Webservice不考虑,restful描述能力有限,SOAP也比较复杂,况且WS的主要应用场景是在于与第三方团队协作开发、或者公布内部系统接口给其他企业使用类似的场景,可能在广域网环境下的C/S架构也会考虑。我们自己内部的平台还是需要考虑使用稳定、可靠、高效、简单的RPC框架较为合适。
思考再三决定采用如下架构:
正好结合我之前开发的分布式注册中心、消息中间件等组件,后端子系统可以形成一个良好的生态圈。
这只是初步设想,还需进一步仔细考虑,若哪位有经验的朋友路过可以赐教。
还有一个问题不明,现在互联网业界常规的做法,后端Java子系统的运行形式一般是什么?
是运行在Web应用服务器的Servlet?那么如何提供服务给其他平台的子系统使用?
是Thrift等RPC框架编写的Java服务?那么其生命周期,调度等如何进行管理?
这样的架构下,.NET客户端直接调用后端服务,如果是在广域网环境下,Thrift、Ice这类框架(基于TCP协议)还能够稳定高效地工作?
对于这种情况是否换成基于Http协议的WebService较为合适?
相关文章推荐
- SpringMVC介绍之约定优于配置
- Java 往年试卷参考答案!!!
- Java Day7
- Java+MySQL实现学生信息管理系统源码
- js模仿java的Map集合详解
- Mybaitis JdbcType 和javaType
- Java关键字final,static使用总结
- Spring mvc 文件下载,及不支持IE下载问题解决方法
- SpringJDBC配置C3P0数据库连接池
- java 同步锁(synchronized)
- Spring 配置文件解析
- Java原子量
- java-接口优于抽象类
- 如何集成Spring和Struts(实例说明)
- spring aop 2.0
- springMVC实现excel导出(简单封装版)
- java如何使用存储过程,持续更新
- Java学习-040-级联删除目录中的文件、目录
- Java:使用synchronized和Lock对象获取对象锁
- java的锁机制