你一定要知道的几种项目间数据交互方式

发布时间:2016-12-10 11:16:03 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"你一定要知道的几种项目间数据交互方式",主要涉及到你一定要知道的几种项目间数据交互方式方面的内容,对于你一定要知道的几种项目间数据交互方式感兴趣的同学可以参考一下。

不同的系统之间进行数据交互是可避免的,总的说来,可以总结为向第三方系统推送数据或从服务器拉回数据两种,下面我列举几种常见的系统间数据交互方式,并给出架构设计时应考虑的因素。 一、    ftp服务器共享方式。即建立一个ftp服务器,为不同的系统分配账号、密码、目录的操作权限等,要交换数据的两个系统要约定好数据格式(比如:xml文件,excel文件,csv文件等)、文件命名方式、存放路径等规则等。交互时,一个系统按约定的时间将数据写入ftp目录中,另一个系统定期取走并进行相应的业务操作。这种方式在电信、移动中项目用得比较多,特别是sp。交互示意图如下: ftp数据交换示意图 二、    socket通讯服务器方式。要传送数据的双方建立socket连接后再传送数据,数据格式自行约定,并对传输的数据进行加密,这种方式在银行系统中用得比较多(c、c++写的核心)。交互示意图如下: socket数据交换示意图   三、    webservice方式。这种方式不再做过多描述,具体请参阅我的《webservice之cxf实现》,《webservice架构设计》博文。这种方式在互联网上用得多一些。 webservice数据交换示意图 四、    远程rmi(如OMG CORBA)方式。以前我在delphi中实现过(怀念李维的时代,呵呵),j2se中也有相应的支持,这种方式相对来说比较复杂。如果同为java系统可用jndi方式,ejb也是一种方式。 五、    远程url地址方式。这种方式在互联网上用得很多,比如:facebook,豆瓣的api,支付宝在线支持数据交互等等,早期DWR的web远程调用本质上也属于这种。当然,webservice说到底也是这种方式,只不过数据的xml打包和解包过程由程序按照规范自动完成。交互示意图如下: url调用方式数据交换示意图 这种暴露url地址方式的数据传输格式可以是xml、json或自定义text格式,也可以在请求参数中直接协带一个一个需要的数据。要注意的是,如果在客户浏览器中解析第三方服务器的json数据会有跨域安全访问问题(无论js还是fash、flex都一样),还好,jQuery中有相应的函数封装。 总之,无论采用哪种方式,你在为实际项目做架构原型的时候,下面几个因素都要考虑周全。 一、    简单。交互的设计要简单,这对调用双方都有好处。 二、    安全性。如何保证数据在交互过程中的安全性是一个点。 三、    性能。在选择的时候,要考虑数据量的大小,以决定一种合适的方式(比如:一次调用请求的数据量,请求调用的频率)。 四、    最后,要考虑重复数据的处理,特别是在其它系统将数据推入的情况,对于推入的数据,要做好处理日志,以备后查

上一篇:题目1180:对称矩阵
下一篇:处理Win7 安装的100M空间

相关文章

相关评论