什么是SOA

偶然看到soa概念,网上搜集一些简单答案用来以后用

1.你可以把SOA理解为一种概念,总的来说就是面向服务的设计。

这个概念简单来理解就是把之前所谓的模块划分做成服务。

比如之前的日志模块,需要引用你的dll,调用你的写日志方法来写日志。
这样当有多个系统时,就有一些麻烦:比如要做日志分析/统计的时候,可能每个系统都自己写一个日志分析/统计的工具。比如日志的存储,各个系统都要想办法申请空间去存储历史日志。

而如果把日志做成服务,这样各个系统就是通过服务接口来调用写日志的方法(可以是http接口,也可以是TCP/UDP,实现方式多种多样)。
遇到多系统的时候,各个系统不需要关心日志存储,日志分析/统计也可以交由日志服务来完成。

以上仅仅是一个例子,方便理解SOA的概念。
还有,不能说SOA就一定比之前的方式好,每种方式都有其优缺点,合适的就是最好的。

比如当你架构一个很小的系统的时候,SOA就显得繁琐,累赘了。

2.SOA只是一个被炒作过头的空洞的名词。你开发了一个系统,你可以给它贴上一个SOA的标签,以示高贵。

这就好比“高帅富”,它只是对某一群人的标签,你说你是一个屌丝,想要靠高帅富这个概念变得高级,似乎是办不到的

问题1:就是说当制造三个系统(生产管理、采购、库存管理)的时候都没有日志的功能,而是单独写一套日志的程序,然后通过SOA来调用?


解释1.
SOA是果,不是因,怎么设计架构,怎么降低耦合,易于扩展是你的事情,做好了,就是“SOA”,做不好,你也可以吹自己做的是“SOA”。但是你打算“用SOA做”,那啥也做不了。有个笑话说,如何才能长寿,一个回答是,“一直保持呼吸,不要断气”,你真的把这个当作长寿秘诀了,那就是愚蠢了。

解释2

这个时候不要叫日志程序,要叫服务^_^
不是通过SOA来调用,是通过接口调用服务
这个所谓的接口,可以是http:比如post日志内容到一个url,也可以是tcp。

然后这个整体的设计叫SOA

  • 0
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值