`
WaterSugar
  • 浏览: 94319 次
  • 性别: Icon_minigender_1
  • 来自: 宁波
社区版块
存档分类
最新评论

《BlazeDS开发指南》学习笔记(一):概述

    博客分类:
  • Flex
阅读更多

  一、概述

 

  BlazeDS是Adobe公司发布的免费开源产品,是该公司另一个收费产品LCDS的简化开源版本,BlazeDS使用Java语言在服务端提供如下功能:

 

  1、提供客户端(Flex、AIR)通过AMF协议访问服务端(Java)数据的功能;

  2、提供服务端广播数据给多个客户端的功能;

  3、提供客户端与客户端实时通信的功能;

 

  一个BlazeDS应用程序包括两个部分:客户端应用程序和服务端J2EE应用程序,如下图:

 

  客户端程序:一个BlazeDS应用的客户端程序一般为Flex或AIR,而Flex或AIR程序通过Flex SDK中的控件RemoteObject、HTTPService、Producer、Consumer与BlazeDS服务端通信,另外,你也可以结合Flex、HTML和JavaScript技术来构建客户端程序,更可以在HTML和JavaScript中使用Ajax客户端库来与BlazeDS通信。

 

  服务端程序:BlazeDS服务端运行在基于J2EE的Web服务器中,通过如下配置可以使得一个J2EE Web服务器支持BlazeDS:

  1、拷贝BlazeDS的jar文件和相关依赖jar文件到WEB-INF/lib目录下;

  2、编辑WEB-INF/flex目录下BlazeDS的配置文件;

  3、在WEB-INF/web.xml文件中定义MessageBrokerServlet和Session监听器;

 

  二、特点

 

  下图详细展示了BlazeDS的主要特点:

 

   1、RPC Services(RPC服务):RPC服务被设计成为调用和响应的模式,这对应用程序访问外部数据是一种很好的选择,它能够使客户端异步请求远程服务并直接把结果返回,在具体程序中,可以使用客户端的RPC控件如HTTP GET或HTTP POST(HTTP Services)、SOAP(Web Services)、Java Objects(RemoteObject Services)访问RPC Services。

 

  如果你想通过使用RPC Services提供一些企业级功能,如不同域之间数据交换的代理功能、客户端认证、服务器端日志、本地化支持、RPC Services服务集中化管理等功能时,BlazeDS通过使用RemoteObject控件可以轻松实现,而不需要配置他们像SOAP-compliant网络服务。

 

  当客户端RPC控件调用远程服务时,该控件就会把服务端返回的数据保存在一个ActionScript对象中,这样,在程序中就能够很轻松的获取该要的数据,而这些客户端控件包括HTTPService、WebService、RemoteObject控件。

 

  2、Messaging Services(消息服务):消息服务就是通过服务器端来回的传送消息以实现客户端的异步交流,一条消息由唯一标识号、BlazeDS头、其他自定义头和消息体组成。

 

  客户端程序中发送消息的部分称为消息生产者(producers),在Flex程序中可以通过Producer控件定义,而接收消息的部分称为消息消费者(consumer),在Flex中可以通过Consumer控件定义,Consumer控件负责订阅和接收服务器端某一个目的地的消息,而Producer控件负责向该目的地发送消息。

 

  消息服务同时也支持通过JMSAdapter实现的桥接模式来访问外部的JMS服务器,这使得Flex程序能够与外部的Java应用程序实现数据交流。

 

  3、Service adapters:BlazeDS可以访问各种不同的数据持久化方案,比如数据库、JMS等其他持久化机制。

 

  4、The message-based framework(基于消息的框架):BlazeDS在客户端和服务器端来回的传送数据,他是一个基于消息的框架,主要运用了两种交换模式,第一种,请求/响应模式,客户端发送请求给服务端,服务端处理好之后返回一个包含结果的响应,RPC服务就是使用的这种模式;第二种,发布/订阅模式,服务端将数据发布给订阅了该消息的客户端列表,消息服务就是使用这种模式来发布数据给各客户端的,同时,消息服务也使用请求/响应模式来解决一些发布消息、数据交换等问题。

 

  5、Channels and endpoints(通道和端点):在网络上,客户端是通过通道与服务端传送数据的,通道负责封装消息格式、网络协议、解析方式、目的和应用代码,负责格式化和翻译消息为特定网络下的模式,然后分发给相应的端点。另外,通道使得客户端发送给服务端的消息变得有序性和对应性,这对数据传送的一致性和可预见性起到重要的作用。

 

  在服务器端,通道是与基于Java的端点发生交换的,端点负责解析消息成特定的协议模式,然后把它传送给普通Java形式的“消息代理人”(Message Broker),最终由消息代理人决定该消息发往何处,路由给恰当的目的地,详细如下图所示:

  6、Channel types(通道类型):BlazeDS提供以下几种通道:(1)标准AMF通道;(2)加密AMF通道;(3)HTTP通道(AMFX)。其中AMF和HTTP通道都支持无轮询的请求/响应模式和客户端轮询模式(模拟实时通信),而AMF和HTTP流通道模式提供了真正的数据流实时模式。

分享到:
评论
11 楼 给太阳洒水 2011-11-08  
很好,thanks!
10 楼 xiaomi57 2009-01-03  
9 楼 taomujian 2008-12-27  
  
8 楼 yuxy 2008-12-02  
7 楼 WaterSugar 2008-11-02  
wang_scu 写道

您好 如果在air程序调用remoteobject 该如何写啊?

实在不好意思,我现在也没有在AIR中测试过调用RemoteObject,有时间试试看。
6 楼 wang_scu 2008-10-27  
您好 如果在air程序调用remoteobject 该如何写啊?
5 楼 WaterSugar 2008-10-16  
谢谢,如果有错误,希望大家指出,好及时修正。
4 楼 steven186 2008-10-16  
写的太棒了!学习
3 楼 foodyi 2008-10-13  
不错
2 楼 WaterSugar 2008-10-13  
谢谢,还得继续努力,还有更多内容要看,也希望大家一起研究。
1 楼 hacker47 2008-10-13  

相关推荐

    《BlazeDS开发指南》学习笔记

    ### 《BlazeDS开发指南》关键知识点概览 #### 一、BlazeDS简介及其功能 BlazeDS,作为Adobe公司的一款免费开源产品,旨在简化企业级应用的开发过程,特别是那些涉及到Flex和Java技术的项目。它源于Adobe的另一款...

    blazeds开发指南

    Blazeds是一个强大的Flex和Java之间的...总的来说,“Blazeds开发指南”是学习和使用Blazeds的关键资源,结合提供的WAR文件和readme文件,开发者可以构建出高效、互动性强的Flex应用程序,充分利用Java后端的强大功能。

    《BlazeDS开发指南》.doc

    BlazeDS是一款由Adobe公司推出的免费开源产品,它是Lightweight ColdFusion Data Services (LCDS)的开源简化版。BlazeDS的主要目的是为Flex和AIR客户端提供与Java服务端之间的高效通信。它提供了多种功能,包括AMF...

    BlazeDS开发者指南中文版

    BlazeDS是Adobe公司推出的一款开源的服务器端技术,它主要负责在客户端(通常是Web浏览器)与服务器之间提供实时的数据通信。此技术基于AMF(Action Message Format)协议,允许高效地传输数据,同时支持Flex和...

    BlazeDS开发者指南 blazeds_devguide

    BlazeDS开发者指南是Adobe公司为使用BlazeDS框架进行富互联网应用(RIA)开发的开发者提供的一份详细参考资料。BlazeDS是一个开源项目,它允许服务器与客户端之间通过AMF(Action Message Format)进行数据交换,...

    BlazeDS权威指南与API

    在阅读"BlazeDS开发指南与API"时,应结合实践操作,尝试自己配置和使用BlazeDS,遇到问题时查阅官方文档或社区资源。这样不仅可以巩固理论知识,还能提升解决问题的能力。记住,熟练掌握BlazeDS不仅意味着你可以构建...

    flex blazeDS开发使用手册,对于集成blaze开发很有用处。

    Flex BlazeDS开发使用手册是Adobe官方提供的一份详尽指南,旨在帮助开发者高效地集成BlazeDS框架到Flex应用程序中。BlazeDS是一款开源的服务器端技术,它为富互联网应用(RIA)提供了数据推送、消息传递和Remoting...

    BlazeDS,PureMVC

    BlazeDS通信到Java的PureMVC——Flex框架,BlazeDS的服务器配置比较麻烦,这里使用的是直接下载blazeds_turnkey_3-0-0-544.zip中的tomcat BlazeDS模板路径为: blazeds_turnkey_3-0-0-544.zip解压后路径\tomcat\...

    BlazeDS开发者指南(中文版和英文版)

    "BlazeDS开发者指南" 提供了全面的技术指导,涵盖了从安装、配置到实际应用开发的全过程。中文版和英文版方便不同语言背景的开发者学习,帮助他们更好地理解和运用BlazeDS。 总的来说,BlazeDS是构建RIA的关键技术...

    BlazeDS 开发资料

    本资料包包含了两份重要的资源,分别是《BlazeDS开发指南》学习笔记.doc和blazeds_devguide.pdf,它们将帮助我们深入了解BlazeDS的开发过程。 首先,《BlazeDS开发指南》学习笔记.doc可能包含了作者在研读官方文档...

    [BDS]BlazeDS开发者指南

    #### 一、BlazeDS概述 **BlazeDS**是一款由Adobe提供的开源服务,它主要用于在Flex或AIR等客户端程序与后端服务器之间建立高效的通信渠道。该工具允许开发者轻松地在客户端与服务器之间进行数据交换,并实现实时...

    flex+blazeDS配置指南

    而BlazeDS是Adobe提供的一个免费服务器端组件,用于实现Flex与Java后端的数据通信。本文将深入探讨如何配置Flex与BlazeDS,让它们协同工作,实现高效、稳定的数据交换。 首先,我们需要准备必要的工具和环境。...

    BlazeDS开发者指南.pdf

    BlazeDS开发者指南是针对WEB开发者的专业参考资料,主要介绍了如何使用BlazeDS这一服务器端技术来构建富互联网应用程序(RIA)。BlazeDS是Adobe公司推出的一个开源项目,它为Flex和AJAX应用提供了实时数据通信,使得...

    BlazeDS开发者指南.rar

    本指南针对BlazeDS开发者,旨在帮助你深入理解和有效地使用这一技术。 1. **Flex与BlazeDS的结合** Flex是一种基于ActionScript和Flash Player的RIA开发框架,用于创建交互式的、具有丰富视觉效果的Web应用。...

    blazeds开发者指南中英文对照版

    ### BlazeDS开发者指南知识点 #### 一、BlazeDS简介 BlazeDS是Adobe公司推出的一款强大工具,专为Adobe Flex或Adobe AIR等客户端应用程序提供高效、可扩展的远程访问和消息服务。它允许客户端应用与服务器端数据...

    BlazeDs开发应用.pdf

    BlazeDS是一款由Adobe公司推出的免费开源产品,它是Lightweight ColdFusion Data Services (LCDS)的精简版,主要用于Web开发,特别是针对Flex和AIR客户端。BlazeDS的主要目标是促进客户端与服务端之间的数据交互,...

    flex与Myeclipse、blazeds整合开发

    整合开发Flex、MyEclipse和Blazeds的过程涉及到了多种技术的融合,下面将详细介绍这一过程所包含的关键知识点。 首先,了解JDK环境的配置。JDK是Java开发的基础,其环境配置包括安装JDK、设置JAVA_HOME环境变量、...

Global site tag (gtag.js) - Google Analytics