WebService 开发笔记 企业和港口之间信息对接项目完整记录

接手这个港口项目的时候,在网上翻遍了各类专业论坛,没有发现相似的项目解决方案,于是一点点查找资料,请教高手,按照自己的理解思路,一步一步,学习开发,目前一切进展还算比较顺利,在简书做一下自己学习过程中的点滴,方便以后学习和回忆。

总体的项目思路

项目背景,大型国企,大型港口集团,之间需要对接信息流,打通彼此之间的数据流,共享数据,产生价值。

可行性方案前期调研

跨企业间传递信息,物流数据打通,最好最安全的方式就是MQ了。

但是市场上值得购买的MQ的价格普遍不菲,简单查了一下,领导给的底线价格和预期的价格相差较大,遂放弃之。

研究第二种可行性,就是通过WebService 形式的接口互相调用彼此之间的数据,但是这种方案有很多弊端,在网上简单查了查,列举了一些,记录一下。以下摘录自 CSDN lulu147的专栏

Webservice 和MQ(MessageQueue)都是解决跨平台通信的常用手段,两者有哪些区别呢?

个人认为最本质的区别在于 Webservice近乎实时通信,而MQ却通常是延时通信。

什么意思呢?

因为webservice其实就是本地服务器程序调用远程服务器上的方法,属于两者之间的交互,请求的时候需要等被请求的服务器做出回应后,另一端才会有所动作,也就是说,如果你请求的service服务器关闭了,或者中断了,那么你这边肯定就得不到答复了,你的这次请求就算是打水漂丢失了。而MQ 则相当于是多了一个中间件


我所发送的请求 都必须先传达给 这个消息队列组件,然后由这个消息队列组件再去到另一个服务器上去请求,有了响应之后再 返回给

当初的请求程序,因为MessageQueue组件会把消息持久化放在本地,所以哪怕突然死机了,请求消息也是不会丢失的。

Message Queue属于比较重量级的应用,在规范化的企业流程中用的比较多。如果企业有很多部门,部门都有自己的系统,那么不同的系统之间的集成通信,Message Queue是很好的选择。MQ一般都做为企业级IT应用的中间件存在,有很多企业是作为标准IT基础结构存在的。在市面上常见的MQ中间件有IBM websphere message queue service,Oracle Advanced Queuing,Microsoft Message Queue(MSMQ),Apache ActiveMQ等

如果使用WebService的话,就要写很多的WebService的代码,去建立这些WebServcie,然后暴露出这些接口,相互之间调用,很费事。但是如果使用Message Queue的话,只要把这个中间件的服务器搭建起来,只要在需要的时候加入不同的Queue Manager就可以了,然后就可以访问了,就可以作为不同系统之间的桥梁了。

长耗时的报表,这个在程序中经常遇见,处理海量数据时,可能生成一个报表需要5分中或是更长的时间,客户不能在线实时等待,报表处理比较耗费资源,不能同时处理很多请求,甚至同时只允许处理一个,这时就可以使用MQ。客户端将报表请求和一些必要的报表条件放到Queue中,报表由另一个服务一个一个的处理,处理好后再给用户发一个消息(MSN消息,或mail等)用户再在浏览器或其他报表浏览器中查看报表。

在线商店,在客户下订单的过程后,系统只需做减库存、记录收货人信息和必要的日志,其他的必须配送处理、交易统计等其他处理可以不同时完成,这时就可以将后续处理消息放入Queue中,让另一台(组)服务器去处理,这样可以加快下订单的过程,提高客户的体验;

WebService通常是实时性要求较高,Client端向Server端发出请求后,这是一个短连接,一个Http请求,这个请求发出后,Client端就会一直等到获取到这个结果。但是使用MQ的话,因为有了中间的这一块区域,当请求发出后,Client端可以继续去干别的事情。等到一段时间以后再去中间件的存储区域上查看一下有结果了么,有了结果就取出来,没有的话就再等会再看。

其实 MQ和WebService 应用都可以解决跨企业不同系统之间数据互通的需求,但是差别还是蛮大的,最主要的其实回归一点还是价格的问题,一个是付费的一个是开源免费的,所以如果企业对数据的安全和并发要求不是特别高可以尝试先从WebService搭建一个简单的企业接口。下面4点是WebService 主要的优势所在

1 跨越防火墙的通信

客户端和服务器端之间通信都会有防火墙或者代理服务器。传统的实现互相通信的方法是在分布式对象,如DCOM、CORBA之间进行相互的远程过程调用(TCP/IP),这样的访问在internet上访问并没有得到很好的体现,而且有些访问还会受到防火墙的拦截。而Web服务使用基于XML消息处理作为基本的数据通信方式,应用程序可以使用HTTP和XML消息等标准在基于Web的应用程序之间交换信息,从而跨越防火墙。

2 应用程序集成

企业里经常要把不同语言写成的在不同平台上运行的各种程序集成起来。大型公司常常有很多部门,每个部门都使用最适合自己特定需要的应用程序和平台,所以可以利用webservice将各种平台联系在一起。

3 B2B的集成

跨公司的商务交易集成通常叫做B2B集成。各企业可以采用Web服务与其他企业进行通信。通过Web服务能够将数据及应用程序的集成扩展到公司的防火墙之外。使公司能够与其伙伴、供应商、发行商和客户共享数据和商业过程,从而加强企业之间的合作关系。

4 软件复用

软件复用是在软件开发中避免重复劳动的解决方案。Web服务实现了业务级别的软件复用,例如在B2B的集成中,各企业之间通过互相调用Web服务,就可以实现信息的共享和复用。

但是WebService 的缺点也很明显,总结一下主要也是4点

(1)臃肿的注册与发现机制

(2)低效的XML序列化手段

(3)开销相对较高的HTTP远程通信

(4)复杂的部署与维护手段

如果对于性能和并发要求不高的企业可以采用,我的项目确实也遇到了这些问题,我会持续跟进,寻找解决平衡性能的最优方法。

了解了webservice 的优点和缺点可以使我们更加从容的面对项目开发,可以在源头上避免犯一些致命的错误,对项目整体的规划也有了很好的支撑,在简书看到了非常好的介绍webservice 的一片文章,写的很详细,基本把webservice涉及的知识点都讲到了,虽然现在对于这些重点内容熟记于心,但是开始那段时间确实很是迷茫,好在人多力量足。

WebService就是这么简单

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,386评论 6 479
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,939评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,851评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,953评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,971评论 5 369
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,784评论 1 283
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,126评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,765评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,148评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,744评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,858评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,479评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,080评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,053评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,278评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,245评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,590评论 2 343

推荐阅读更多精彩内容

  • 值此105周年国际护士节来临之际,写下这篇文章,让更多的人可以重新认识了解和体谅护士这一职业。 5.12是全世界护...
    田埂上的菊阅读 668评论 4 5
  • D 21 55,今天是5月8日,狂风暴雨,似乎这个天总是要不断地给我考验,看我是否能够承受得了这种谜一般的天气。没...
    Yc_笔迹阅读 260评论 0 0
  • 使用暴力的人其实是因为他们内心的宁静遭到了破坏,所以他们才会用暴力的方式维护或寻求心灵的和平。这或许是暴力的蝴蝶效...
    烈日逐风阅读 131评论 0 0
  • 最近加重的懒癌病情被我家那个颜值高说话跟机关枪一样的堂姐发现了,我捂了脸,被逮住总是无可奈何。 当喜好变成责任,其...
    Tina踩踩牛粪变鲜花阅读 281评论 0 1
  • 船载着雾气和我,一个飞雪的白昼。阳光有似于无。 我眼中浆起浆落,扬起水花熄灭我用目光燃起的烛。 我行驶的欲急复缓。...
    Hare野兔阅读 209评论 0 2