﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-OpenHandX数据服务为中心的企业架构(java)-随笔分类-OpenHandX平台</title><link>http://www.blogjava.net/pengminghua/category/43847.html</link><description /><language>zh-cn</language><lastBuildDate>Sat, 22 Dec 2012 15:06:12 GMT</lastBuildDate><pubDate>Sat, 22 Dec 2012 15:06:12 GMT</pubDate><ttl>60</ttl><item><title>OpenHandX数据服务为中心的企业架构设想</title><link>http://www.blogjava.net/pengminghua/archive/2010/06/22/324117.html</link><dc:creator>彭明华</dc:creator><author>彭明华</author><pubDate>Tue, 22 Jun 2010 02:17:00 GMT</pubDate><guid>http://www.blogjava.net/pengminghua/archive/2010/06/22/324117.html</guid><wfw:comment>http://www.blogjava.net/pengminghua/comments/324117.html</wfw:comment><comments>http://www.blogjava.net/pengminghua/archive/2010/06/22/324117.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/pengminghua/comments/commentRss/324117.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/pengminghua/services/trackbacks/324117.html</trackback:ping><description><![CDATA[&nbsp; 
<p style="line-height: 140%; margin-right: 1.4pt; text-align: center" align="center"><strong><span style="font-size: 22pt; color: black; line-height: 140%">OpenHandX </span></strong><strong><span style="font-size: 22pt; color: black; line-height: 140%; font-family: 隶书">数据服务为中心的企业架构设想</span></strong></p>
<p style="line-height: 140%; text-align: center" align="center"><strong>&nbsp;</strong></p>
<p style="line-height: 140%; text-align: center" align="center"><strong><span style="font-size: 12pt; line-height: 140%; font-family: 宋体">2009-12-20</span></strong></p>
<p style="line-height: 140%; text-align: center" align="center"><strong>&nbsp;</strong></p>
<p style="line-height: 140%; text-align: center" align="center"><strong><span style="font-size: 12pt; line-height: 140%; font-family: 宋体">作者：彭明华</span></strong></p>
<p style="line-height: 140%; text-align: center" align="center"><strong><span style="font-size: 12pt; line-height: 140%; font-family: 宋体"><a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#111;&#112;&#101;&#110;&#104;&#97;&#110;&#100;&#120;&#64;&#102;&#111;&#120;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;">openhandx@foxmail.com</a></span></strong></p>
<p style="line-height: 140%; text-align: center" align="center"><strong>&nbsp;</strong></p>
<p style="margin-bottom: 0pt; line-height: 140%; text-align: center" align="center"><span style="font-size: 9pt; line-height: 140%; font-family: 宋体">本文档中的任何部分都不得以任何手段任何形式进行复制与传播</span></p>
<h1>1<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>前言</h1>
<p style="margin-left: 21.65pt; text-indent: 21pt; line-height: 150%"><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">随着企业竞争的日益激烈，企业信息化的建设成为了关键因素，企业对计算机系统的需求越来越高，如：企业内部的ERP管理系统、决策分析系统，对外的销售及支付、客户服务系统等系统越来越多，大型企业的情况尤为复杂，单独做好一个系统或几个系统再也无法适应企业信息化建设的发展。本文要谈的是特大型企业应用，这类企业的特点是垄断、使用系统的员工上万、地域分布广差异大，对系统的功能和性能上有着极高的要求，本文从目前的企业现状、企业架构两个方面说明。</span></p>
<h1>2<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>目前的企业现状</h1>
<h2>2.1<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>现状1-多个系统百花齐放</h2>
<p style="margin-left: 21.65pt; text-indent: 21pt; line-height: 150%"><span style="font-size: 12pt; line-height: 150%; font-family: 宋体"><img height="878" alt="" src="http://www.blogjava.net/images/blogjava_net/pengminghua/frame/001.PNG" width="636" border="0" /><br /><br /><br />这<span style="font-size: 12pt; font-family: 宋体; mso-font-kerning: 1.0pt; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">是</span>目前大多数企业的现状，这类企业管理层次太多，机构和部门之间的利益及关系比较微妙。采购的成品的软件系统也很难适应企业多元化的应用，因此大部分企业会选择自主开发或对成品系统本地化的大改造。这类的软件系统基本是为某个机构或部门服务的，因此系统之间层次和定位比较混乱。主要表现为以下问题：</span></p>
<p style="margin-left: 60.65pt; text-indent: -18pt; line-height: 150%; tab-stops: list 60.65pt"><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">1、</span><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">各个系统设计之初相互割裂，除了特殊业务功能上的需要基本没有什么联系，后期很难实现数据共享。</span></p>
<p style="margin-left: 60.65pt; text-indent: -18pt; line-height: 150%; tab-stops: list 60.65pt"><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">2、</span><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">各个系统基础数据冗余，每个都有自己的基础数据，如：组织架构、员工、产品等信息。基础数据的变化和更新涉及所有系统，并且无法做到时间上的统一和数据的一致性。给系统之间调用需要留下很多隐患。</span></p>
<p style="margin-left: 60.65pt; text-indent: -18pt; line-height: 150%; tab-stops: list 60.65pt"><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">3、</span><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">系统之间的模块冗余，类似的模块且功能不一致。如：员工信息管理，产品信息管理、报表等。如：销售系统的销售报表与财务的销售报表、客户关系系统的销售报表不一致，由此产生的歧义对于特大型企业是不允许的。</span></p>
<p style="margin-left: 60.65pt; text-indent: -18pt; line-height: 150%; tab-stops: list 60.65pt"><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">4、</span><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">系统对外接口混乱，系统设计最初就是独立的，没有对外系统提供接口。后来由于业务需要临时添加，造成接口不规范、重复、繁杂，并缺少监控存在安全漏洞。</span></p>
<p style="margin-left: 60.65pt; text-indent: -18pt; line-height: 150%; tab-stops: list 60.65pt"><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">5、</span><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">系统难以深程度整合。基于以上问题企业会做一些整合，虽然有portal和sso等登录和界面上的用户操作整合，但是功能和数据上的深程度整合没有做到。</span></p>
<h2>2.2<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>现状2-ERP系统为中心</h2>
<p style="margin-left: 21.65pt; text-indent: 21pt; line-height: 150%"><span style="font-size: 12pt; line-height: 150%; font-family: 宋体"><img height="878" alt="" src="http://www.blogjava.net/images/blogjava_net/pengminghua/frame/002.PNG" width="563" border="0" /><br /><br />这类企业业务和管理上相对规范，能统一采购成品的ERP软件系统，企业的大部分业务需求都能通过ERP系统完成。这类企业应用架构是以 ERP系统为中心，在一段时间内数据比较统一，各个模块之间协调一致。这在系统建设初期比较好，随着企业的发展原有ERP系统不能满足新的业务需求时，系统升级比较困难。不得不另外开发独立的其他系统，久而久之又形成了多个系统百花齐放难以控制的局面。</span></p>
<h1>3<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>数据服务为中心的企业架构</h1>
<p style="margin-left: 21.65pt; text-indent: 21pt; line-height: 150%"><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">数据服务为中心的企业架构是以企业的数据为核心。不管企业如何发展的，他的系统如何升级改造，数据永远是企业的核心。数据服务为中心就是要建立统一的核心数据、统一的业务规则、统一的服务接口、统一的安全管理、提供高效准确的数据、提供复用的功能、提供良好的扩展性，并与前端业务系统无缝衔接实现深程度的整合。设计采用&#8220;数据为中心、服务为依托、SOA、ESB为技术手段&#8221;的思路。</span></p>
<h2>3.1<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>基础架构</h2>
<p><span style="font-size: 12pt; line-height: 150%; font-family: 宋体"><img height="989" alt="" src="http://www.blogjava.net/images/blogjava_net/pengminghua/frame/003.PNG" width="934" border="0" /><br /><br />初步建立数据为中心的企业架构，首先实现数据的统一和系统功能的一致性，满足企业日常生产运行的需要。</span></p>
<p style="margin-left: 18pt; text-indent: -18pt; tab-stops: list 18.0pt left 352.5pt"><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">1、</span><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">真正实现数据统一管理，基础数据和公共数据最大程度被复用，有效解决了多个系统基础数据的不一致性，为系统间的调用和数据的决策分析打下良好基础。</span></p>
<p style="margin-left: 18pt; text-indent: -18pt; tab-stops: list 18.0pt left 352.5pt"><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">2、</span><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">真正实现服务层与操作层的分离,数据服务组件以SOA的方式将服务发布到ESB,为操作层和其他服务组件调用提供接口。数据服务组件是企业基础业务及核心业务功能的高度抽象及实现，数据服务解决了系统间业务功能的不一致性。</span></p>
<p style="margin-left: 18pt; text-indent: -18pt; tab-stops: list 18.0pt left 352.5pt"><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">3、</span><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">企业数据总线ESB，是连接各个数据服务组件和服务层与操作层的桥梁，负责服务注册发布、服务查找调用、服务安全控制。应为ESB设计好统一接口协议和服务协议，保证每个系统和服务组件之间都可以无缝地互连和兼容。ESB使多个系统和服务之间的层次更加清晰，降低了他们之间的耦合度，便于服务的扩展。</span></p>
<p style="margin-left: 18pt; text-indent: -18pt; tab-stops: list 18.0pt left 352.5pt">4、&nbsp;<span style="font-size: 12pt; line-height: 150%; font-family: 宋体">前端系统主要功能是为用户提供良好的界面，提供个性化方案，便于用户录入数据及数据展现。同时又为数据层提供高质量的业务数据。作为操作层的前端系统通过ESB能调用任何组件提供的数据服务，因此前端系统的功能可以做得非常强大。</span></p>
<h2>3.2<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>完整架构</h2>
<p><span style="font-size: 12pt; line-height: 150%; font-family: 宋体"><img alt="" src="http://www.blogjava.net/images/blogjava_net/pengminghua/frame/004.PNG" border="0" /><br /><br />完整架构增加了安全控制层，抽象出更高程度的企业门户，核心服务增加了更多的技术服务组件。同时也部署了地方级服务器。</span></p>
<p style="margin-left: 18pt; text-indent: -18pt; tab-stops: list 18.0pt"><span style="font-size: 12pt; line-height: 150%">1、</span><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">更多的技术服务组件是为了满足特大型企业的对数据挖掘分析、科学计算的要求。如：异步批量服务、云计算服务等。</span></p>
<p style="margin-left: 18pt; text-indent: -18pt; tab-stops: list 18.0pt"><span style="font-size: 12pt; line-height: 150%">2、</span><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">安全控制层的安全控制有别于</span><span style="font-size: 12pt; line-height: 150%">ESB</span><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">的安全控制，安全控制层主要控制在用户层面，并能根据接口提供的信息自动完成用户登录，创建会话令牌。</span><span style="font-size: 12pt; line-height: 150%">ESB</span><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">服务会根据令牌信息，控制该用户访问的数据权限及操作权限。</span></p>
<p style="margin-left: 18pt; text-indent: -18pt; tab-stops: list 18.0pt"><span style="font-size: 12pt; line-height: 150%">3、</span><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">企业门户不仅仅是统一用户登录或菜单界面的整合。首先企业门户整合了所有的业务系统，就象一套系统能完成所有的企业日常办公，如：采购、生产、库存、销售、收付款、邮件、</span><span style="font-size: 12pt; line-height: 150%">OA</span><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">等。其次企业门户提供富客户端满足复杂操作的业务，如：生产制造系统，数据决策分析系统、邮件系统、多媒体系统。</span></p>
<p style="margin-left: 18pt; text-indent: -18pt; tab-stops: list 18.0pt"><span style="font-size: 12pt; line-height: 150%">4、</span><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">地方级服务器解决两类问题，一个是对数据缓存减少网络带宽，数据交换服务能自动完成与数据中心服务的数据同步，尤其是大型只读类的数据，如：多媒体数据、报表、邮件等，另一个是允许各地部署自己的特色业务系统，满足各地多元化的个性需求。</span></p>
<h2>3.3<span style="font: 7pt 'Times New Roman'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>数据共享策略</h2>
<p style="text-indent: 21pt; line-height: 150%"><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">数据共享一直是企业关心的，如何满足不同系统、不同人群个性需求又要保证数据安全一直是最大的难题。数据共享有三个层面的问题需要解决：<br /><img height="409" alt="" src="http://www.blogjava.net/images/blogjava_net/pengminghua/frame/005.PNG" width="521" border="0" /><br /></span></p>
<p style="margin-left: 39pt; text-indent: -18pt; line-height: 150%; tab-stops: list 39.0pt"><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">1、</span><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">请求的数据格式。是指请求发起方对接受方返回数据结果的样式要求，如：Excel、PDF、XML、数据对象以及他们的填充样式。这个问题可以双方预先定义好格式的约定或模板，由发起方提供自定义的模板来解决，再由接受方将数据按照模板填充并返回。</span></p>
<p style="margin-left: 39pt; text-indent: -18pt; line-height: 150%; tab-stops: list 39.0pt"><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">2、</span><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">请求的数据内容。是指请求发起方对接受方返回哪些数据，以及数据颗粒度的要求，如：某个机构的销售数据（按照天、产品、子机构等维度）、某个部门的损益数据（按照天、科目、人员等维度）。这个问题可以双方预先定义一套语言或脚本，由发起方提供请求数据的脚本，再由接受方解析脚本返回数据。</span></p>
<p style="margin-left: 39pt; text-indent: -18pt; line-height: 150%; tab-stops: list 39.0pt"><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">3、</span><span style="font-size: 12pt; line-height: 150%; font-family: 宋体">数据安全控制。是指请求接受方根据发起方的身份返回他所能看到的数据，或者说发起方是否能得到请求的数据。这个问题是由根据企业架构中安全数据组件服务来解决。</span></p><br /><br /><img src ="http://www.blogjava.net/pengminghua/aggbug/324117.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/pengminghua/" target="_blank">彭明华</a> 2010-06-22 10:17 <a href="http://www.blogjava.net/pengminghua/archive/2010/06/22/324117.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>OpenHandX 平台简介</title><link>http://www.blogjava.net/pengminghua/archive/2010/01/19/310076.html</link><dc:creator>彭明华</dc:creator><author>彭明华</author><pubDate>Tue, 19 Jan 2010 06:33:00 GMT</pubDate><guid>http://www.blogjava.net/pengminghua/archive/2010/01/19/310076.html</guid><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: OpenHandX是开放双手去做，进一步说是发挥每个人无尽的想象，不再受任何条件和制度的约束，这就是开源平台最宝贵的东西“自由”。OpenHandX平台采用成熟的技术、思想、理念。另外OpenHandX也质疑一些主流框架，并提出新思想，所有的框架和工具都是通过经得住实践验证的。他最大优点是适用、好用、高效。OpenHandX平台的发展方向是以开发人员为本，遵循人的思维和使用习惯，覆盖主流开发需要的综合型平台。<br>&nbsp;&nbsp;<a href='http://www.blogjava.net/pengminghua/archive/2010/01/19/310076.html'>阅读全文</a><img src ="http://www.blogjava.net/pengminghua/aggbug/310076.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/pengminghua/" target="_blank">彭明华</a> 2010-01-19 14:33 <a href="http://www.blogjava.net/pengminghua/archive/2010/01/19/310076.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>