﻿<?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-DANCE WITH JAVA-随笔分类-新概念</title><link>http://www.blogjava.net/dreamstone/category/24605.html</link><description>开发出高质量的系统</description><language>zh-cn</language><lastBuildDate>Thu, 02 Aug 2007 21:56:58 GMT</lastBuildDate><pubDate>Thu, 02 Aug 2007 21:56:58 GMT</pubDate><ttl>60</ttl><item><title>soa第一步（soa中的各种概念)</title><link>http://www.blogjava.net/dreamstone/archive/2007/07/06/128609.html</link><dc:creator>dreamstone</dc:creator><author>dreamstone</author><pubDate>Fri, 06 Jul 2007 08:17:00 GMT</pubDate><guid>http://www.blogjava.net/dreamstone/archive/2007/07/06/128609.html</guid><wfw:comment>http://www.blogjava.net/dreamstone/comments/128609.html</wfw:comment><comments>http://www.blogjava.net/dreamstone/archive/2007/07/06/128609.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/dreamstone/comments/commentRss/128609.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/dreamstone/services/trackbacks/128609.html</trackback:ping><description><![CDATA[<p>一、什么是soa?<br>SOA(Service-Oriented Architecture，面向服务架构) 是一种架构模型，<br>它可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、<br>组合和使用。服务层是SOA的基础，可以直接被应用调用，使得构建在这样的系<br>统中的服务可以使用统一和标准的方式进行通信。 <br>二、soa的目标<br>SOA的根本目标：实现与敏捷业务相适应的IT基础，促进而不是阻碍企业达成灵<br>活应变，从而在快速变化的时代里获得增长优势。<br>三、soa中缤纷的概念<br>java的世界各种各样的名词让人眼花缭乱，有些其实很简单，但因为名次挡在门外<br>soa中更是如此，这里简单介绍一下相关的一些名次：<br>1,SCA(Service Component Architecture)不同的软件模 块通过服务组件<br>的标准化而统一地封装起来和被调用访问。<br>2,SDO(Service Data Objects)则作为一种数据编程架构和API，它统一了不同数据源类型的数据编程，<br>让开发人员可以从不 同的数据源以统一的方式访问和操纵数据。<br>可以说，SCA以面向构件的方法，简化了客户的业务逻辑编程，提高了应用的灵活性。<br>而SDO则更进一步从数据对象 上大大简化了开发。<br>3,OSOA:2005 年 11 月， IBM、BEA、IONA、Oracle、SAP AG、Sybase、Xcalia 和 Zend <br>就合作建立新的业内规范来简化 SOA 应用发展达成了一致，共同发布了两项针对SOA的重要构件模型<br>规范——SCA 0.9和SDO。此后，该团体陆续吸引了 Cape Clear、Interface21、普元、<br>Progress Software(前 Sonic Software)、Red Hat、Rogue Wave Software、Software AG、<br>Sun Microsystems 和 TIBCO Software 、Siemens AG等多家公司的加盟，目前成员数量跃至 18家，<br>形成了OSOA联盟。<br>4,eai<br>什么是EAI(enterprise application integration)企业应用集成?<br>EAI是将基于各种不同平台、用不同方案建立的异构应用集成的一种方法和技术。<br>EAI通过建立底层结构，来联系横贯整个企业的异构系统、应用、数据源等，完成<br>在企业内部的 ERP、CRM、SCM、数据库、数据仓库，以及其他重要的内部系统之<br>间无缝地共享和交换数据的需要。有了 EAI，企业就可以将企业核心应用和新的<br>Internet解决方案结合在一起。<br>EAI(企业应用集成)将进程、软件、标准和硬件联合起来，在两个或更多的企业系<br>统之间实现无缝集成，使它们就像一个整体一样。尽管EAI常常表现为对一个商业<br>实体(例如一家公司)的信息系统进行业务应用集成，但当在多个企业系统之间<br>进行商务交易的时候，EAI也表现为不同公司实体之间的企业系统集成，<br>例如B2B的电子商务。<br>5,ESB是企业服务总线（Enterprise Service Bus）的缩写。企业服务总线是一个灵活的用于集成各种应用<br>和各种服务的连接基础架构。企业服务总线能够通过简化应用和服务之间接口的数量、接口大小及接口复杂度等<br>方法使客户的面向服务体系（SOA）更加的强大。企业服务总线提供以下功能：<br>&nbsp;在服务与服务之间路由消息；<br>&nbsp;在请求者与服务者之间转换传输协议；<br>&nbsp;在请求者与服务者之间转换消息格式；<br>&nbsp;处理来自于各种异构源的业务事件；</p>
<p>6,webservice:Web Service就是为了使原来各孤立的站点之间的信息能够相互通信、共享而提出的一种接口。<br>Web Service所使用的是Internet上统一、开放的标准，如HTTP、XML、SOAP（简单对象访问协议）、<br>WSDL等，所以Web Service可以在任何支持这些标准的环境（Windows,Linux）中使用。<br>注：SOAP协议（Simple Object Access Protocal,简单对象访问协议）,它是一个用于分散和分布式环境<br>下网络信息交换的基于XML的通讯协议。在此协议下，软件组件或应用程序能够通过标准的HTTP协议进行通讯。<br>它的设计目标就是简单性和扩展性，这有助于大量异构程序和平台之间的互操作性，从而使存在的应用程序能够<br>被广泛的用户访问。<br>7,soap:SOAP即简单对象访问协议(Simple Object Access Protocol)，它是用于交换XML编码信息的<br>轻量级协议。它有三个主要方面：XML-envelope为描述信息内容和如何处理内容定义了框架，将程序对象编码<br>成为XML对象的规则，执行远程过程调用(RPC)的约定。SOAP可以运行在任何其他传输协议上。例如，你可以使<br>用 SMTP，即因特网电子邮件协议来传递SOAP消息，这可是很有诱惑力的。在传输层之间的头是不同的，<br>但XML有效负载保持相同。<br>8,uddi:UDDI 的目的是为电子商务建立标准；UDDI是一套基于Web的、分布式的、为Web Service提供的、<br>信息注册中心的实现标准规范，同时也包含一组使企业能将自身提供的Web Service注册，以使别的企业能够<br>发现的访问协议的实现标准。<br>9,wsdl:Web Service描述语言WSDL就是用机器能阅读的方式提供的一个正式描述文档而基于XML的语言，<br>用于描述Web Service及其函数、参数和返回值。因为是基于XML的，所以WSDL既是机器可阅读的，<br>又是人可阅读的。<br>10,bpel:BPEL是一门用于自动化业务流程的形式规约语言。 用XML文档写入BPEL中的流程能在Web 服务之间<br>以标准化的交互方式得到精心组织。这些流程能够在任何一个符合BPEL规范的平台或产品上执行。 所以，通过<br>允许顾客们在各种各样的创作工具和执行平台之间移动这些流程，BPEL使得他们保护了他们在流程自动化上的<br>投资。尽管以前想使业务流程定义标准化，但BPEL已经引起了史无前例的兴趣，而且它最早在软件供应商中获<br>得大量认可。 <br>11,ibm mq:消息队列（MQ）是一种应用程序对应用程序的通信方法。应用程序通过写和检索出入列队的针<br>对应用程序的数据（消息）来通信，而无需专用连接来链接它们。消息传递指的是程序之间通过在消息中发送<br>数据进行通信，而不是通过直接调用彼此来通信，直接调用通常是用于诸如远程过程调用的技术。排队指的是<br>应用程序通过队列来通信。队列的使用除去了接收和发送应用程序同时执行的要求。<br>12,jms:在不同系统之间交换信息的一大障碍是如何在精确交换和格式化数据方面取得一致。<br>Java Message Service（ Java消息服务，简称JMS）通过提供一种与J2EE应用程序或传统系统交互的方<br>法部分的解决了这个问题。 JMS的通用接口集合以异步方式发送或接收消息。异步方式接收消息显然是使用<br>间断网络连接的客户机，诸如移动电话和PDA的最好的选择。另外， JMS采用一种宽松结合方式整合企业系统的方法，<br>其主要的目的就是创建能够使用跨平台数据信息的、可移植的企业级应用程序，而把开发人力解放出来。 <br>13,ibm mb:Message Broker是 IBM 的应用整合中间件，是 IBM WebSphere 业务整合解决方案的重要<br>组成部分之一，用于企业应用整合领域。它的前身为 WebSphere MQ Integrator Borker 是一种Esb的实现<br></p>
<img src ="http://www.blogjava.net/dreamstone/aggbug/128609.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/dreamstone/" target="_blank">dreamstone</a> 2007-07-06 16:17 <a href="http://www.blogjava.net/dreamstone/archive/2007/07/06/128609.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>对比Corba 了解Ice</title><link>http://www.blogjava.net/dreamstone/archive/2007/05/09/116067.html</link><dc:creator>dreamstone</dc:creator><author>dreamstone</author><pubDate>Tue, 08 May 2007 16:48:00 GMT</pubDate><guid>http://www.blogjava.net/dreamstone/archive/2007/05/09/116067.html</guid><wfw:comment>http://www.blogjava.net/dreamstone/comments/116067.html</wfw:comment><comments>http://www.blogjava.net/dreamstone/archive/2007/05/09/116067.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/dreamstone/comments/commentRss/116067.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/dreamstone/services/trackbacks/116067.html</trackback:ping><description><![CDATA[公司给讲了一堂课，主要是讲<em>Ice</em> 的,和C++的同事一起听的。记录一些内容，另外放一些自己看过的资料：<br>1，学习Ice必须的网站<br><a href="http://www.zeroc.com/">www.zeroc.com</a><span class=a><font color=#008000 size=2><br><font color=#000000 size=3>2，ice简介<br></font>
<p style="FONT-SIZE: 14pt; COLOR: #000000">ICE(Internet Communications Engine)是一个为现实中程序员而写的中间件平台。作为一个高性能的互联网通信平台，ICE包含了很多分层的服务和插件(Plug-ins)，并且简单、高效和强大。</p>
<p style="FONT-SIZE: 14pt; COLOR: #000000">ICE的自由使用遵从GNU的GPL(GNU General Public Licens)许可的条款。ICE也有商业的许可证，如果你想将ICE使用在你的私有产品中，那么你应该使用ICE的商业许可证。可以联系<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#115;&#97;&#108;&#101;&#115;&#64;&#122;&#101;&#114;&#111;&#99;&#46;&#99;&#111;&#109;" target=_blank><u><font color=#0000ff>sales@zeroc.com</font></u></a>来获得这方面的更多信息。</p>
<p style="FONT-SIZE: 14pt; COLOR: #000000">ICE当前支持C++、Java、C#、Visual Basic、Python和PHP编程语言，并支持在多种操作系统上运行。更多的操作系统和编程语言将会在以后的发布中支持。</p>
<p style="FONT-SIZE: 14pt; COLOR: #000000">ICE有以下几部分组成：</p>
<p style="FONT-SIZE: 14pt; COLOR: #000000">Slice<br>ICE的规范语言，跟CORBA的IDL(Interface Definition Language)等价的东西。Slice建立了客户端和服务器端共同遵守的契约：接口。Slice也用来描述对象持久数据。</p>
<p style="FONT-SIZE: 14pt; COLOR: #000000">Slice Compilers<br>Slice的规范语言可以影射成多种编程语言。目前ICE支持C++，Java，Python，PHP，C#和VB的语言影射。Ice的客户端和服务器端协同工作，而不会知道分别实现的是何种编程语言。</p>
<p style="FONT-SIZE: 14pt; COLOR: #000000">Ice<br>Ice的核心库。在众多的特性当中，Ice核心库通过一个高效的协议(包含TCP/UDP层上协议压缩)来管理所有的通信任务，为多线程服务器提供了一个灵活的线程池，并且有特别的功能来支持上百万对象的可扩展性。</p>
<p style="FONT-SIZE: 14pt; COLOR: #000000"><br>IceUtil<br>一些常用的功能函数集。例如Unicode处理和多线程编程，是用C++写成。</p>
<p style="FONT-SIZE: 14pt; COLOR: #000000">IceBox<br>一个专用于ICE应用的应用服务器。ICEBox可以方便地运行和管理动态加载、共享库或java类的形式Ice的服务。</p>
<p style="FONT-SIZE: 14pt; COLOR: #000000">IcePack<br>一个成熟的服务激活和部署工具。IcePack能大大简化在异构网络之间部署应用的复杂性。只要简单的编写XML格式的一个部署描述文件，IcePack就能自动处理剩下的工作。</p>
<p style="FONT-SIZE: 14pt; COLOR: #000000">Freeze<br>Freeze提供了Ice Servants对象的自动持久性。通过几行代码，一个应用就可以生成一个高度可扩展的逐出器(evictor)来高效地管理持久对象。</p>
<p style="FONT-SIZE: 14pt; COLOR: #000000">FreezeScript<br>在大的软件项目里，持久对象的数据类型改变很常见。为了最小化这些变化的影响，FreezeScript提供了相应的工具来检查和移植Freeze生成的数据库。这些工具支持XML格式的配置脚本，易于使用。</p>
<p style="FONT-SIZE: 14pt; COLOR: #000000">IceSSL<br>用于Ice核心的动态的SSL传输插件。提供了认证、加密和消息完整性，使用工业标准的SSL协议来实现。</p>
<p style="FONT-SIZE: 14pt; COLOR: #000000">Glacier<br>面向对象中间件平台的一个最大的挑战是安全性和防火墙。Glacier是Ice的防火墙解决方案，它大大简化了安全程序的部署。Glacier认证和过滤客户的请求并允许服务器通过安全的方式回调客户端对象。结合IceSSL的使用，Glacier提供了强大的安全解决方案，即安全，又易于配置管理。</p>
<p style="FONT-SIZE: 14pt; COLOR: #000000">IceStorm<br>一个支持联盟的消息服务。和大多数的其他消息和事件服务相比，IceStorm支持有类型的事件，这意味着通过联盟广播一个消息和调用一个接口上的一个方法一样容易。</p>
<p style="FONT-SIZE: 14pt; COLOR: #000000">IcePatch<br>一个软件修补和分发的服务。为确保运行的软件是最新的版本，要经常更新软件，这是一件乏味的工作。IcePatch自动更新在某个目录层次下的文件。只有需要更新的文件会下作到客户端，为了快速的下载更新，IcePatch使用的高效的压缩算法。<br>3、ice vs corba差异<br><a href="http://gigaboy.bokee.com/2158057.html">http://gigaboy.bokee.com/2158057.html</a><br>4、ice vs corba性能对比<br><a href="http://gigaboy.bokee.com/2160870.html">http://gigaboy.bokee.com/2160870.html</a><br>5、ice评价<br>corba是一个规范，ice不是 ice的特性是zeroc想怎样就怎样的 所以也不会有第三方产商参与 ice对各种平台的支持也只有zeroc的实现版本。使用Ice不用自己设计传输协议了 ，Ice有成熟的商用案例。ICE是以前Corba的开发者来开发的，吸取了corba的长处，避免了一些短处，特点是：效率高、简单、免费</p>
</font></span>
<img src ="http://www.blogjava.net/dreamstone/aggbug/116067.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/dreamstone/" target="_blank">dreamstone</a> 2007-05-09 00:48 <a href="http://www.blogjava.net/dreamstone/archive/2007/05/09/116067.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>