壹佰网|ERP100 - 企业信息化知识门户

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2481|回复: 9

寻求达人指点人生迷津--ERP和SOA

[复制链接]
发表于 2007/10/12 16:37:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。如果您注册时有任何问题请联系客服QQ: 83569622  。

您需要 登录 才可以下载或查看,没有帐号?注册

x
我07年7月份刚毕业,现在一家软件公司做实施,基于SOA架构的
阉割版。鄙人很迷糊,一直有3个疑问。

1.ERP和SOA到底是什么关系,按我的理解ERP是一种相互联系不
可分割的整合,而SOA是一种相互联系但可分割的整合。

2.没有ERP知识直接学习SOA的实施是不是算是一种残废或者不健
全。或者说通过SOA的实施可以理解ERP里的东西吗?

3.我在SOA以后的出路是什么?

由于糊涂可能问题问的都不对,还请达人指点。

[ 本帖最后由 weifen00 于 2007-10-12 16:40 编辑 ]
 楼主| 发表于 2007/10/12 16:41:54 | 显示全部楼层
如果还需要进一步信息才能回答,可以提问。。
发表于 2007/10/12 18:14:55 | 显示全部楼层
1.ERP和SOA到底是什么关系,按我的理解ERP是一种相互联系不可分割的整合,而SOA是一种相互联系但可分割的整合。
--在我看来,SOA貌似是一种技术,而ERP更多的是和业务很相关,偏向于业务的系统。学习ERP应更多的关注业务。

2.没有ERP知识直接学习SOA的实施是不是算是一种残废或者不健全。或者说通过SOA的实施可以理解ERP里的东西吗?
--ERP和SOA没有直接的联系。


3.我在SOA以后的出路是什么?
--技术是不断变化的,唯有业务是始终不变的。技术每3,4年变一次,所以学SOA应该慎重。切忌学ERP是学习企业业务。




我对SOA没有很深入的研究,顺便贴上一个关于SOA的文档。


SOA是英文Service-Oriented Architecture,即面向服务架构的缩写。这个词汇最近一两年频频出现在各种技术期刊上。但是一直以来对于 SOA到底是什么没有明确的回答;SOA有什么特点?适合用于解决哪些问题?与其他的技术有什么区别与联系?Web Service和SOA又是什么关系 ?SOA的出现对于软件架构设计有什么影响?本文将就上面提到的这些问题,尝试根据作者自己的理解给出SOA的定义;总结出SOA特有的三个基 本特征;然后以HTTP协议为例对这些特征进行解释;最后简要的说明SOA对今后软件架构设计可能带来的影响。

SOA定义

下面是作者给SOA下的一个定义:SOA是指为了解决在Internet环境下业务集成的需要,通过连接能完成特定任务的独立功能实体实现的一种 软件系统架构。从这个定义中我希望表达的前提有下面两点:

1) 软件系统架构:SOA不是一种语言,也不是一种具体的技术而是一种软件系统架构,它尝试给出在特定环境下推荐采用的一种架构,从这 个角度上来说,它更像一种模式(Pattern)。因此它与很多已有的软件技术比如面向对象技术,是互补的而非互斥的。它们分别面向不同的应用 场景,用来满足不同的特定需求。

2) SOA的使用范围:需求决定同时也限制功能。SOA并不是包治百病的万灵丹,它最主要的应用场合在于解决在Internet环境下的不同商业 应用之间的业务集成问题。在下面我们会详细讨论Internet的各种特点如何决定SOA的特点,这里我们只需要先简单回顾一下Internet环境区别 于Intranet环境的几个特点:

a) 大量异构系统并存,计算机硬件工作方式不同,操作系统不同、编程语言也不同;

b) 大量、频繁的数据传输仍然速度缓慢并且不稳定;

c) 版本升级无法完成,我们根本就无法知道互联网上有哪些机器直接或者间接的使用某个服务。

基于上面的前提,下面就让我们一起看一下SOA的基本特征。

SOA三大基本特征

1 独立的功能实体

在Internet这样松散的使用环境中,任何访问请求都有可能出错,因此任何企图通过Internet进行控制的结构都会面临严重的稳定性问题。 SOA非常强调架构中提供服务的功能实体的完全独立自主的能力。传统的组件技术,如.NET Remoting,EJB,COM或者CORBA,都需要有一个宿主 (Host或者Server)来存放和管理这些功能实体;当这些宿主运行结束时这些组件的寿命也随之结束。这样当宿主本身或者其它功能部分出现问 题的时候,在该宿主上运行的其它应用服务就会受到影响。

SOA架构中非常强调实体自我管理和恢复能力。常见的用来进行自我恢复的技术,比如事务处理(Transaction),消息队列(Message Queue) ,冗余部署(Redundant Deployment)和集群系统(Cluster)在SOA中都起到至关重要的作用。

2 大数据量低频率访问

对于.NET Remoting,EJB或者XML-RPC这些传统的分布式计算模型而言,他们的服务提供都是通过函数调用的方式进行的,一个功能的完成 往往需要通过客户端和服务器来回很多次函数调用才能完成。在Intranet的环境下,这些调用给系统的响应速度和稳定性带来的影响都可以忽 略不计,但是在Internet环境下这些因素往往是决定整个系统是否能正常工作的一个关键决定因素。因此SOA系统推荐采用大数据量的方式一次 性进行信息交换。

3 基于文本的消息传递

由于Internet中大量异构系统的存在决定了SOA系统必须采用基于文本而非二进制的消息传递方式。在COM、CORBA这些传统的组件模型中, 从服务器端传往客户端的是一个二进制编码的对象,在客户端通过调用这个对象的方法来完成某些功能;但是在Internet环境下,不同语言, 不同平台对数据、甚至是一些基本数据类型定义不同,给不同的服务之间传递对象带来的很大困难。由于基于文本的消息本身是不包含任何处 理逻辑和数据类型的,因此服务间只传递文本,对数据的处理依赖于接收端的方式可以帮忙绕过兼容性这个的大泥坑。

此外,对于一个服务来说,Internet与局域网最大的一个区别就是在Internet上的版本管理极其困难,传统软件采用的升级方式在这种松散 的分布式环境中几乎无法进行。采用基于文本的消息传递方式,数据处理端可以只选择性的处理自己理解的那部分数据,而忽略其它的数据, 从而得到的非常理想的兼容性。

HTTP协议:一个典型的SOA实现

每一项新技术都是在一些旧的技术基础上发展出来的。正如XML根本思想来自于在60年代就已经出现的早期标记性语言一样,SOA虽然这两年 才出现,但是它所表达的观念应该说在网络这种分布式系统结构出现不久就已经广泛应用了。例如我们最熟悉的HTTP协议就是一个非常典型的 SOA架构设计。HTTP协议的工作过程简单叙述如下:

1) 客户端,通常是通过浏览器,向服务器端以文本的方式发送一个请求,索取一个Web页面;
发表于 2007/10/13 09:05:10 | 显示全部楼层
说的很详细,不过还是有点不懂
 楼主| 发表于 2007/10/13 12:25:19 | 显示全部楼层
谢谢四海兄
但是SOA确实在实施中也要对企业业务有一定的了解,各个模块衔接又与ERP有雷同,但我当初的出发点是去做ERP实施,如果二者之间确实又不属于一个范畴,看来我得准备换工作了。。
发表于 2007/10/13 15:26:27 | 显示全部楼层
你只知道你是做erp的就完了,到现在为止,所有SOA的产品都是噱头。
 楼主| 发表于 2007/10/14 10:32:24 | 显示全部楼层
啊,那意思SOA在当今市场只是一个花哨罢了
发表于 2007/10/14 12:49:17 | 显示全部楼层

个人理解,不知道对不对

面向过程时代重用的单位是函数,函数之间的协作
面向对象时代重用的单位是类,包之间的协作
面向组件时代重用的对象是组件(控件?),组件之间的协作--------这个不懂,望指教

面向服务时代重用的对象是服务,公司间和系统间的协作

所以SOA概念是建立在软件产业合作的基础上的。你自己一个公司做出来的产品,如不能与其他公司产品协作,从别人那里拿功能(注意,不是复制,是使用),开放功能给别人用。那叫什么SOA ?
 楼主| 发表于 2007/10/14 22:56:57 | 显示全部楼层
很有道理,其实我们根本不知道他的架构如何而来,是自己做的还是剽窃,IBM等软件厂商都有自己的产品,他们的才应该是正统SOA吧..
发表于 2007/10/16 11:01:24 | 显示全部楼层
SOA只是一个架构理念吧,实现都要靠中间件开发,而现在国内只IBM有成功的案例
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|手机版|壹佰网 ERP100 ( 京ICP备19053597号-2 )

Copyright © 2005-2012 北京海之大网络技术有限责任公司 服务器托管由互联互通
手机:13911575376
网站技术点击发送消息给对方83569622   广告&合作 点击发送消息给对方27675401   点击发送消息给对方634043306   咨询及人才点击发送消息给对方138011526

GMT+8, 2025/11/30 15:57 , Processed in 0.015445 second(s), 14 queries , File On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表