??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲精品第一国产综合精品,亚洲激情黄色小说,无码专区—VA亚洲V天堂http://m.tkk7.com/landy/category/36045.html敏感、勤学、多?/description>zh-cnWed, 18 Jul 2012 14:53:15 GMTWed, 18 Jul 2012 14:53:15 GMT60构徏SOA风格的应?/title><link>http://m.tkk7.com/landy/archive/2012/07/18/383436.html</link><dc:creator>q途书?/dc:creator><author>q途书?/author><pubDate>Wed, 18 Jul 2012 13:19:00 GMT</pubDate><guid>http://m.tkk7.com/landy/archive/2012/07/18/383436.html</guid><wfw:comment>http://m.tkk7.com/landy/comments/383436.html</wfw:comment><comments>http://m.tkk7.com/landy/archive/2012/07/18/383436.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/landy/comments/commentRss/383436.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/landy/services/trackbacks/383436.html</trackback:ping><description><![CDATA[<p>当下QSOAq个词已l深入h心,几乎没有Z说自p计的应用是遵从SOA的?/p> <p>很多人对SOA的理解就是分层、模块化、面向对象。。。这U理解对不对后面再说。先看一些问题:(x)</p> <p>我今天看了一个开发团队的开发工E包l构Q部分类的命名及(qing)l织产生了如下印象:(x)</p> <ul> <li>每个usecase是一Ҏ(gu)烟囱</li> <li>烟囱与烟׃间连模型都没有共享。其实业务模型是有设计的Q主要是实现模型没有保持业务模型的结构特征,全部成了“值对?#8221;Q开发h员天天把q些值对象叫做领域对象?/li> <li>有三层,是Struts帮忙定义的,三层分别Ҏ(gu)usecase分包</li></ul> <p>q也是我们U的SOApȝQ!Q!q最基本的模型设计、模块设计、分层设计都没做好,难怪年q重构、年q完成不可能完成的Q务!Q!我确信这U重构、这U不可能完成的Q务还?x)年q持l下去!Q!</p> <p>I竟什么是W合SOA风格的系l?先看看SOA宗师IBM的一文章:(x)</p> <p><a >http://www.ibm.com/developerworks/cn/architecture/ar-soastyle/</a></p> <p>我来ȝ一下?/p> <p>SOA能达C么目的:(x)</p> <p>1.实现业务与IT的一致性;</p> <p>2. 创徏更灵zȝ反应更敏L(fng)IT基础设施Q?/p> <p>3. 化集成实玎ͼ</p> <p>SOA要怎么做?</p> <ol> <li>从应用程序到程和服务。消除应用程序,Y件系l创Zؓ(f)一l由业务程q行协调的交互服务。每个服务实C业上下文中定义的特定业务目标或功能,业务程表示必须实现的业务解x案。这个讲的比较抽象,我的解读是服务表示一个最l粒度的业务目标或功能,׃务流E来~排q些服务Q实现更大粒度的业务目标或功能,业务程也是服务。注意,q里隐式的定义了服务的概念,服务是自ȝQ可替换的,可被多个程~排的,不耦合程上下文的Q是直接面向业务目标或功能的Q不是一个公共函数库Q服务不是封装了数据和方法的cR?/li> <li>SOA的服务基于业务资源(对象Q定义,不支持操作者的执行上下文,而是支持业务资源Q对象)。这里的业务资源是指业务实体。业务实体也是来自业务的。所以,SOA能保证IT与业务的一致性?/li></ol> <p> </p> <p>别再说你的应用程序或烟囱遵@SOA的架构风|</p><img src ="http://m.tkk7.com/landy/aggbug/383436.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/landy/" target="_blank">q途书?/a> 2012-07-18 21:19 <a href="http://m.tkk7.com/landy/archive/2012/07/18/383436.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>面向领域的业务^台设计(二)http://m.tkk7.com/landy/archive/2012/02/26/370794.htmlq途书?/dc:creator>q途书?/author>Sun, 26 Feb 2012 09:12:00 GMThttp://m.tkk7.com/landy/archive/2012/02/26/370794.htmlhttp://m.tkk7.com/landy/comments/370794.htmlhttp://m.tkk7.com/landy/archive/2012/02/26/370794.html#Feedback2http://m.tkk7.com/landy/comments/commentRss/370794.htmlhttp://m.tkk7.com/landy/services/trackbacks/370794.html

如何解决上文提到的鉴定标准中的问题呢Q我认ؓ(f){案是MDD?/p>

用一个实际的例子来表qC下思\Q?/p>

在CRMpȝ有个订单处理模块Q其提供了订单管理、订单流E执行、工单管理等功能Q营业员通过界面提交一个订单请求,如果订单h通过业务规则的校验,则会(x)创徏一个订单对象,订单对象的创Z(x)触发订单程的创建,订单程{的过E中Q会(x)在各个节点创建工单,也会(x)调用其它子系l开通服务,比如调用物流发货。订单流E完成后Q订单对象的状态也完成。实际的pȝ比这个要复杂Q这里仅仅ؓ(f)了阐q思\Q做适当的简化?/p>

从上面的例子Q我们可以识别出几个模型:订单、工单、订单流E,订单、工单、订单流E都是stateful的、其state的变更会(x)D其它对象的状态变更或者服务的执行?/p>

在展现层Q展现各个模型是有章法的Q比如创单的界面L一L(fng)Q处理工单的界面也L一L(fng)Q展现订单的界面也L一L(fng)。因此,我们可针Ҏ(gu)定的对象的某U需要展现的状态,提供合适的展示构gQWEB TAGQ来展示它?/p>

在持久层Q因为对象L持久化到一张表当中的,因此Q可用一些ORM的框架来持久化对象,而不是开发h员针Ҏ(gu)个场景去写SQLQ复杂的兌查询可以使用cHQL?/p>

各对象之间的兌操作通过事g驱动?/p>

举一个订单创建的例子Q?/p>

1、开发做的工作:(x)

    1Q用元数据定义订单的数据结构,包含持久化元数据、基本属性元数据、字典元数据Q?/p>

    2Q定义订单状态机Q以?qing)状态变q的规则Q?/p>

    3Q徏模订单处理流E;

    4Q定义订单请求处理规则流Qƈ发布Z个受理订单请求的服务Q?/p>

    5Q开发订单创建界面,使用订单WEB构g来展C单对象;

    6Q定义事Ӟ以及(qing)事g的监听服务;

2、系l执行流E:(x)

    1Q营业员打开订单创徏界面Q系l获取订单对象的元数据,生成订单创徏面Q?/p>

    2Q营业员点击订单创徏界面的提交按钮,调用受理订单h的服务;规则执行,如果规则校验错误Q则q回错误Q如果成功,则创单,q回成功Q?/p>

    3Q因创徏订单Q导致订单的状态变为创建状态,触发订单创徏事gQ?/p>

    4Q订单创建的监听服务程服务接收CӞ触发订单处理程的创建;

    5Q流E执行的q程中编排第三方pȝ服务Q流E执行结束后Q触发订单流E结束事Ӟ程l束事g的监听服务订单管理接收到事gQ触发状态机变迁Q订单状态变为完成?/p>

上述开发做的工作全部可通过配置完成。后l如果增删字D,修改元数据即可,要增删改业务规则Q调整业务规则即可,要调整实体状态,修改实体状态机卛_?/p>

业务q_要致力于对状态机、业务流E、SEP、元数据、领域化的WEB构g的实玎ͼq将其有机整合?/p>

 

写的比较乱,q几天再整理一下。。?/p>

]]>
面向领域的业务^台设计(一Q?/title><link>http://m.tkk7.com/landy/archive/2012/02/26/370791.html</link><dc:creator>q途书?/dc:creator><author>q途书?/author><pubDate>Sun, 26 Feb 2012 07:04:00 GMT</pubDate><guid>http://m.tkk7.com/landy/archive/2012/02/26/370791.html</guid><wfw:comment>http://m.tkk7.com/landy/comments/370791.html</wfw:comment><comments>http://m.tkk7.com/landy/archive/2012/02/26/370791.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://m.tkk7.com/landy/comments/commentRss/370791.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/landy/services/trackbacks/370791.html</trackback:ping><description><![CDATA[<p>毕业后,做了很多q的中间Ӟ有工作流Q有数据持久层框Ӟq有个类似tomcat的server{,一直在思考,一个最适合业务的^台应该是什么样子的。因一直没有业务经验,因此Q尽有一些想法,但是也不知道q些x靠不靠谱Q最q一q参与了一个CRM目的设计,U攒了一些业务经验,心中的想法逐渐清晰了v来,也有了一些底气,写下来跟大家交流探讨?/p> <p>如同变化多端的八卦卦象是由乾、兑、离{?个基本卦象组成,万事万物是由数种原子构成QŞ态各异的高楼大厦是由砖头和砂砌成,应用也有构成其的“元”,x件?/p> <p>业务应用是分层的Q典型的分层是展现层、流E层、服务层、数据持久层Q每一层次的关注点都不同,构g也不相同Q比如一个业务逻辑层的构g输出的数据,?x)通过展现层的构g来展现在界面上。且各层之间的诏通黏合(如MVC中的Controller层就是黏合逻辑Q,通常要耗费比较多的开发精力,一个好的业务^収ͼ除了在各层次分别提供可复用的构gQ需要能够减各层黏合的工作量?/p> <p>面向特定领域的业务^台的易用度与光用面是鱼和熊掌的关p,针对特定领域Q要易用,则^台能力就要越面向特定领域Q则不通用Q导致适用面越H。因此,一个好的^収ͼ要注意分层,比如分成通用的构件和领域化的构g。业务用户可按需使用。同Ӟq需要在各层ơ开攑֮制能力,供业务用户在各层提供领域构g?/p> <p>现在的品交付都是解x案的交付,解决Ҏ(gu)由多个系l或子系l构成,一个部门,一个项目组通常只是提供解决Ҏ(gu)中的一个部Ӟ负责端到端的业务功能中的一个环境,因此Q需要支持构件的l装Q以形成更大_度的构Ӟ支撑软g复用与集成?/p> <p>开发一个子pȝ_度的构仉常是一件很复杂的事情,如CRMQ需求琐、变化频J、不同客戯求不相同,如果~Z一个好的支撑^収ͼ人力成本?x)很高,TTM也会(x)很长Q因此,一个好的业务^収ͼ也需要能够支撑快速的构g开发、定制?/p> <p>解决构g的组装和集成Q已l有比较成熟的技术了Q如ESB、SCA{,IBM、Oracle{大厂商都有提供集成化的开发环境和执行环境。但如何支撑构g的开发这块,各大厂商也有支撑Q比如在展现层,Oracle有ADFQ在程层,IBM和Oracle都提供了BPMQ在service层,IBM和Oracle提供了规则引擎,VMWare的SpringQ在持久层,Oracle提供了ToplinkQ还有就JBOSS大名鼎鼎的Hibernate。所有前面提到的q些都是业务无关的技术部Ӟ且各层之间的靠业务开发h员自己来黏合Q还是不够领域化。因此,一个业务^収ͼ仅仅去重复制造IBM、Oracle造过的轮子,是完全没有竞争力的(q里不算成本Q。面向特定领域,评判一个业务^台是否优U的标准是Q?/p> <p>1、是否提供了丰富的领域构Ӟ</p> <p>2、是否能够节省业务开发h员黏合各层的工作量?</p> <p>3、提供了什么样的机制来应对需求变化?比如有的客户要求多加个字Dc(din)加个校验,有的客户要求个字段、少个校验等{?/p> <p>待箋。。?/p><img src ="http://m.tkk7.com/landy/aggbug/370791.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/landy/" target="_blank">q途书?/a> 2012-02-26 15:04 <a href="http://m.tkk7.com/landy/archive/2012/02/26/370791.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>CXF使用JMS作ؓ(f)传输协议的配|?/title><link>http://m.tkk7.com/landy/archive/2009/08/30/293230.html</link><dc:creator>q途书?/dc:creator><author>q途书?/author><pubDate>Sun, 30 Aug 2009 13:50:00 GMT</pubDate><guid>http://m.tkk7.com/landy/archive/2009/08/30/293230.html</guid><wfw:comment>http://m.tkk7.com/landy/comments/293230.html</wfw:comment><comments>http://m.tkk7.com/landy/archive/2009/08/30/293230.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/landy/comments/commentRss/293230.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/landy/services/trackbacks/293230.html</trackback:ping><description><![CDATA[     摘要:   <a href='http://m.tkk7.com/landy/archive/2009/08/30/293230.html'>阅读全文</a><img src ="http://m.tkk7.com/landy/aggbug/293230.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/landy/" target="_blank">q途书?/a> 2009-08-30 21:50 <a href="http://m.tkk7.com/landy/archive/2009/08/30/293230.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>快速构建面向服务的应用-2http://m.tkk7.com/landy/archive/2008/11/19/241510.htmlq途书?/dc:creator>q途书?/author>Wed, 19 Nov 2008 14:55:00 GMThttp://m.tkk7.com/landy/archive/2008/11/19/241510.htmlhttp://m.tkk7.com/landy/comments/241510.htmlhttp://m.tkk7.com/landy/archive/2008/11/19/241510.html#Feedback1http://m.tkk7.com/landy/comments/commentRss/241510.htmlhttp://m.tkk7.com/landy/services/trackbacks/241510.htmlȝ一下,个h认ؓ(f)企业应用的核心组成要素是“数据 + 服务”Q?/span> 而服务又分ؓ(f)原子服务Q聚合服务,程服务。权限也是一U数据,?#8220;权限服务”消费。后面暂不考虑权限处理。信令流因ؓ(f)用得,很多人可能都不知道是什么东西,q里也不考虑Q如果遇C记得使用程技术把信号的处理也程化就可以了,可参?/span>apache?/span>SCXMLQ虽然号U是个状态机引擎Q但是请君用你的慧眼观察一下它?/span>schemaQ显然是一个活动图?/span>

接下来的推导分ؓ(f)两个阶段Q第一阶段先推导支撑技术,W二阶段再推g什么样的开发方式将q些支撑技术串hQ达到快速开发的目的?/span>

下表中列Z对上面的核心l成要素Q数?/span>+服务Q的一些支撑技术:(x)

要素

支撑技?/span>

考虑

数据实体

JavaQ?/span>sdoQ?/span>c++{等


原子服务

JavaQ?/span>c++Q?/span>cQ脚本等{?/span>

没什么可说的Q码肯定是要~的

聚合服务

SCA

?/span>sca来将原子服务装配成聚合服务。如果想要用什么数据{换啊Q接口映啊Q安全控制啊之类的特性的话也可以引进ESBQ作?/span>SCA的一U?/span>container?/span>

操作程

实现一?/span>SCA中的containerQ接受操作流E的描述文g的作为执行文?/span>

View process

?/span>web应用下,采用一U?/span>webflow的实玎ͼswing下就自己写把?/span>

Business process

WFAcLE,EOS or OBEcM的工作流引擎Q可直接?/span>EOS或?/span>OBE提供?/span>API作ؓ(f)一个原子组?/span>

Orchestration Process

EAIcLE,?/span>ODEQ一?/span>bpel引擎Q也作ؓ(f)SCA的一?/span>containerQ?/span>BPEL作ؓ(f)一U组件实现方?/span>

下面在列一些辅助支撑技术,q些技术是Z让企业应用这些大厦能够构建的更快Q毕竟盖房子Q有了水泥和砖是不够的,q要有扁担,箕{等?/span>

技?/span>

作用

元数据技?/span>

利用元数据描q数据实体,以及(qing)Ҏ(gu)据实体、实体属性的U束、权限等信息Q可以基?/span>RBAC的权限系l设计思\Q将用户l织机构与权限关联v来,实现自动生成面Ӟ对特定用L(fng)权限控制Q等{其它的东东?/span>

表单生成技?/span>

Ҏ(gu)元数据生成表单,支持可视化的定制表单布局{,支持生成jsp{,如果需要多U展玎ͼ可以生成多种特定的展现实玎ͼ?/span>swing界面{?/span>

囑Ş化徏模技?/span>

可视化的建模view processQ?/span>Orchestration processQ?/span>business processQ?/span>operation process{?/span>

囑Ş化组件装配技?/span>

可视化的组件装配成大粒度组件等

代码生成技?/span>

Ҏ(gu)元数据生成数据实体?/span>DAO代码{?/span>

q里q个SCE大致包括一些什么东西就清楚了,下面用一个序列图来表C用户基?/span>SCE的一U自向下的开发方式。当然也应该支持自下而上?/span>

]]>
也谈JBI的未?/title><link>http://m.tkk7.com/landy/archive/2008/11/18/241194.html</link><dc:creator>q途书?/dc:creator><author>q途书?/author><pubDate>Tue, 18 Nov 2008 10:59:00 GMT</pubDate><guid>http://m.tkk7.com/landy/archive/2008/11/18/241194.html</guid><wfw:comment>http://m.tkk7.com/landy/comments/241194.html</wfw:comment><comments>http://m.tkk7.com/landy/archive/2008/11/18/241194.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/landy/comments/commentRss/241194.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/landy/services/trackbacks/241194.html</trackback:ping><description><![CDATA[JBIL(fng)java领域的ESBQ也有了一个相应的JSR规范Q那么JBI能一lESB江湖吗?本h十分不看好它Q纵观大厂商的ESB实现Q鲜有原生支持JBI的,一般都是支持集成JBI。谁愿意在系l中跑两个ESB呢,除非金钱和精力双双过盛。JBI自n的定位是支持ZJAVA的应用们能够以SOA的方式构v来。它的定位应该是与SCA+ESB的定位差不多Q提供服务ȝQ服务聚合等功能Q坏坏在它局限于JAVAq_Q当前异构系l集成的场景q是很普遍的Q一个java服务依赖一个c++服务Q而c++服务又依赖于另一个java服务QJBI搞不定了。而ESB+SCAp很好的解册个问题,因此从技术上ԌJBI虽然是个规范Q但在SOA不依赖于特定实现的大背景下,有着天生的缺P注定是个p|的规范。从业务{略上讲QSOA本来是IBM{大厂商炒v来的QSCA是IBMQBEAQORACLE{大厂商联合制定的,各大厂商早就有自己成熟的ESBQ自然也不会(x)鸟JBIq个D疾ѝ? <img src ="http://m.tkk7.com/landy/aggbug/241194.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/landy/" target="_blank">q途书?/a> 2008-11-18 18:59 <a href="http://m.tkk7.com/landy/archive/2008/11/18/241194.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>快速构建面向服务的应用-1http://m.tkk7.com/landy/archive/2008/11/07/239348.htmlq途书?/dc:creator>q途书?/author>Fri, 07 Nov 2008 15:50:00 GMThttp://m.tkk7.com/landy/archive/2008/11/07/239348.htmlhttp://m.tkk7.com/landy/comments/239348.htmlhttp://m.tkk7.com/landy/archive/2008/11/07/239348.html#Feedback2http://m.tkk7.com/landy/comments/commentRss/239348.htmlhttp://m.tkk7.com/landy/services/trackbacks/239348.html阅读全文

]]>
վ֩ģ壺 վ| ձ| ߲˳Ƶ߹ۿ| ɫɫۺվ| 99þþùƷ| VAĻһ| Ƶ97| ˳77777߲վ| aëƬͼƬ| պƷ侫| aɫëƬƵ| ޾Ʒ99þ| 99Ƶ| ۺϼ߹ۿ | ҳվѹۿ| 㽶Ƶ| Ůxx00ƵԿ| ޹˾þۺ| aëƬ˾þ| ༤ۺ͵| 99ƵƷѹۿ7| ߿һ| ƷɫҹƵѿ| һŮȫƬѿ| þۺɫһ| վѿAվƵ| ޸Ļۺ| 뿴avվ| CAOPORNƷƵ| þAV뾫Ʒɫҹ鶹| Ƭѿڵ| ɪɪվվ| AVպAVһ| ӰԺֻ߹ۿ| ƷС˵ר| þþƷƵ| ձһ| ĻĴȫ| ޹Ƶ| һ͵Ů| 91Դվ|