亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

blazeds學(xué)習(xí)筆記一整體認(rèn)識(shí)

系統(tǒng) 2218 0

blazeds學(xué)習(xí)筆記一整體認(rèn)識(shí)

BlazeDS 是一組服務(wù)器端的通訊服務(wù),它能夠使得運(yùn)行在瀏覽器的 Adobe Flex 應(yīng)用程序服與服務(wù)器端的 Java 應(yīng)用程序相互通信。

整個(gè)體系主要包括 通道、端點(diǎn)、消息、服務(wù)、目的地、適配器 等,把這 些搞懂也就差不多了。 通道使得組件能夠 和 Blazeds 服務(wù)端的端點(diǎn)通信,將請(qǐng)求送到目的地 端點(diǎn)和通道是相互映射的

  • 基于消息的框架

???????? Blazeds 使用基于消息的框架在客戶端和服務(wù)端之 間發(fā)送和返回?cái)?shù)據(jù)。

???????? Blazeds 在它們之間使用了兩個(gè)交換模式。第一個(gè)模式是請(qǐng)求 響應(yīng)模式,客戶端發(fā)送請(qǐng)求給服務(wù)端處理。服務(wù)端返回處理結(jié)果給客戶端。 RPC Service 就是使用這個(gè)模式。
???????
第二個(gè)模式是發(fā)布—訂閱模式,即服務(wù)端發(fā)布消息設(shè)置,客戶端訂閱了去接收它 們。 Messaging Service 使用這個(gè)模式將數(shù)據(jù)推給“感興趣“的客戶端。

  • Blazeds 特征

?

如圖, BlazeDS 提供了三種關(guān)鍵的服務(wù)。

??????? Remoting Service 。提供一種客戶端直接調(diào)用服務(wù)器端 java 方法的方式。

????????Message Service 。提供一種基于發(fā)布 / 訂閱模式的消息服務(wù),可以用于實(shí)現(xiàn)實(shí)時(shí)的數(shù)據(jù)推送或協(xié)作的 flex 應(yīng)用。

????????? Proxy Service。 通過(guò) proxy service ,使得 flex 應(yīng)用可以實(shí)現(xiàn)安全的,受限的跨域訪問(wèn), 也 就是說(shuō)它讓您的 Flex 應(yīng)用程序訪問(wèn)的服務(wù)可以處于不同的 域,而不需要在目標(biāo)域里配置 crossdomain.xml 權(quán) 限文件。

  • Blazeds 客戶端結(jié)構(gòu)

BlazeDS 客戶端使用 BlazeDS 提供的基于消息的框架與服務(wù)器通訊。消息框架的客戶端部分是 Channels Channels 封裝了 flex 客戶端與 BlazeDS 服務(wù)器的連接。

下 圖是 BlazeDS 客戶端的結(jié)構(gòu)圖

?

?

???? Flex 通訊組件

??????? Flex 提供了 RemoteObject HTTPService WebService Producer Consumer

??????? 等可以與 BlazeDS 通訊的組件,這些組件都包含在了 Flex SDK 中,是 Flex 組件庫(kù)的一部分。

??? Channels Set

????? ???? Channels 封裝了 Flex 組件與 BlazeDS 服務(wù)之間的連接,是處于 Flex 組件之下的一個(gè)通訊層。

????? ???? BlazeDS 提供了 AMFChannel HTTPChannel Flex 客戶端可以使用不同類型的 Channel 與 服務(wù)器通訊。

????? ???? Channel 是在 services-config.xml 中配置,下面是一個(gè) AMFChannel 的配置:

????? ????? ???? <channels>

??????? ????? ????? ????

?????? ????? ????? ???? <channel-definition id=”samples-amf” ?type=”mx.messaging.channels.AMFChannel”>

?????????? ????? ????? ?? ???? <endpoint url=”http://localhost:8400/myapp/messagebroker/amf” ? type=”flex.messaging.endpoints.AMFEndpoint”/>

???????? ????? ????? ???? </channel-definition>

????? ????? ???? </channels>

???? amf 協(xié)議 Amt 全稱是 action message format ,它是一種二進(jìn)制格式,專用于 as 和服務(wù) 器端通訊,比 http 通訊要快很多,支持多種數(shù)據(jù)類型,如 java .net,php 等。

  • Blazeds 服務(wù)器端結(jié)構(gòu)

????? ???? BlazeDS 服務(wù)是一個(gè) J2EE web 容器, Flex 客戶端通過(guò) channel 發(fā)送一個(gè)請(qǐng)求,請(qǐng)求在 BlazeDS 服務(wù)端會(huì)到達(dá)一個(gè) endpoint ,從 endpoint 開始,請(qǐng)求會(huì)通過(guò)一條 Java 對(duì)象處理鏈,包括: MessageBroker, service, destination, adapter ,結(jié)構(gòu)如下:

?

? MessageBroker

???? MessageBroker 負(fù)責(zé)轉(zhuǎn)發(fā)消息到 service ,接收到消息時(shí), MessageBroker 查看消息消息的 destination ,并把消息轉(zhuǎn)發(fā)給目標(biāo) service 。如果 destination 有安全限制保護(hù),在轉(zhuǎn)發(fā)之前, MessageBroker 會(huì)執(zhí)行身份認(rèn)證和授權(quán)檢查。 ????? ???? M essageBroker 的配置在 BlazeDS 應(yīng)用的 WEB-INF/flex/services-config.xml 文件中

? Services destinations

???? Services destinations BlazeDS 服務(wù)中,是消息處理鏈的下一環(huán)節(jié)。

???? BlazeDS 包括四種一一對(duì)應(yīng)的 services destinations:

????? ???? RemotingService RemotingDestination

????? ???? HTPProxyService HTTPProxyDestination

? ????? ???? MessageService MessageDestination

???? 不同的 Flex 組件的請(qǐng)求是由不同的 Services destinations 進(jìn)行 處理的,對(duì)應(yīng)關(guān)系如下:

????? ???? HTTPService WebService HTTPProxyService/HTTPProxyDestination

????? ???? RemoteObject RemotingService/RemotingDestination

????? ???? Producer /Consumerhe MessageService/MessageDestination

????? services destinations 可以在 services-config.xml 配置 , 但是最好的做法是分別在下面的文件中進(jìn)行配置:

????? ???? RemotingService remoting-config.xml 中配置

????? ???? HTTPProxyService the proxy-config.xml 中配置

????? ???? MessageService messaging-config.xml 中配置

? Adapters

當(dāng) 一個(gè)消息到達(dá)正確的 destination 時(shí), destination 會(huì)把消息發(fā)到相應(yīng)的一個(gè) Adapter Destination Adapter 的對(duì)應(yīng)關(guān)系如下:

???? RemotingDestination 使用 JavaAdapter

???? HTTPProxyDestination 使用 HTTPProxyAdapter SOAPAdapter

???? MessageDestination 使用 ActionScriptAdapter JMSAdapter

  • 開始 Blazeds

? ?? 下載 Blazeds http://www.alisdn.com/wordpress/?paged=2

? ?? 解壓到 tomcat webapps 目錄下

? ?? 啟動(dòng) tomcat

? ?? 訪問(wèn) http://127.0.0.1:8080/ds-console/

  • 開發(fā) Blazeds 應(yīng)用

加入 blazeds\WEB-INF\lib\ 下的 jar

復(fù)制 blazeds\WEB-INF\flex 下的文件到項(xiàng)目的 WEB-INF/flex 目錄下,包括:

??????? messaging-config.xml

??????? proxy-config.xml

??????? remoting-config.xml

??????? services-config.xml

web.xml 文件中定義 MessageBrokerServlet session listener

blazeds學(xué)習(xí)筆記一整體認(rèn)識(shí)


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 99在线精品视频 | 99er热久久精品中文字幕 | 99久久精品免费精品国产 | 亚洲欧美国产精品专区久久 | 97视频在线观看视频在线精品 | 国产精品日韩欧美一区二区 | 日本中文字幕一区二区高清在线 | 中文一区在线观看 | 欧美亚洲国产人成aaa | 91最新视频在线观看 | 日本在线观看不卡免费视频 | 欧美综合精品一区二区三区 | 99热久久这里只有精品2010 | 国产h片在线观看 | 久久久久久夜精品精品免费 | 在线观看中文字幕国产 | 视频一区二区国产 | 欧美一级级a在线观看 | 国产精品一级视频 | 国产成人一区二区三区精品久久 | 最新久久精品 | 欧美成人免费香蕉 | 午夜久久免费视频 | 99热热热| 久久性生活 | 国产成人精品高清免费 | 国产成人久久综合二区 | 国产亚洲精品美女一区二区 | 国产一区精品视频 | 最新福利在线 | 国产一区二区三区免费观看 | 日日综合 | 欧美日韩在线高清 | 亚洲一区二区久久 | 欧美人成人亚洲专区中文字幕 | 精品视频一区在线观看 | 黄色aaa级片 | 精品亚洲成a人7777在线观看 | 国产精品亚洲综合一区 | 在线激情网址 | 亚洲a视频在线 |