flex有两种传输模式 request-response模式和producer-consumer模式。http,webservice,rpc采用前者,消息采用后者。
《blazeDS Developer Guide》中给出了例子,我稍加改造,做了个聊天室。测试显示,这种方式的速度不容乐观。没有加缓冲池,不知道加了会不会能有改善。
chatTest.html代码:
<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"
creationComplete="logon();" height="432" width="686" borderColor="#141616">
<mx:Script>
<![CDATA[
import mx.messaging.messages.*;
import mx.messaging.events.*;
private function logon():void {
consumer.subscribe();
}
private var begintime:Date;
private var endtime:Date;
private function messageHandler(event: MessageEvent):void {
ta.text += event.message.body;
endtime=new Date();
var elapse:Number=endtime.valueOf()-begintime.valueOf();
ta.text+=" --耗时:"+elapse+" 毫秒" + "\n";
}
private function sendMessage():void {
var message: AsyncMessage = new AsyncMessage();
message.body = userName.text + ": " + msg.text;
producer.send(message);
msg.text = "";
begintime=new Date();
}
]]>
</mx:Script>
<mx:Producer id="producer" destination="marschat"/>
<mx:Consumer id="consumer" destination="marschat" message="messageHandler(event)"/>
<mx:TextArea id="ta" width="640" height="231" x="13.5" y="37" fontSize="12" fontFamily="Times New Roman" color="#DF1500"/>
<mx:TextInput id="userName" x="100" y="275" width="200" fontWeight="bold" text="Eric Han"/>
<mx:Label text="UserName" x="10" y="275" width="80" color="#EEF5F6" fontWeight="bold"/>
<mx:Label text="message" x="10" y="320" width="80" color="#EEF5F6" fontWeight="bold"/>
<mx:TextInput id="msg" width="546" x="98" y="318" />
<mx:Button label="Send" click="sendMessage();" x="318.5" y="377"/>
</mx:Application>
messaging-config.xml配置文件加入:
<destination id="marschat" channels="my-polling-amf" />
启动服务器(我的是tomcat),输入地址:http://localhost:8888/GoNow/chatTest.html
分享到:
相关推荐
"eureka-consumer"项目是服务消费者的示例。同样基于Spring Boot,它也包含了Eureka客户端,通过Eureka Server发现并调用服务提供者的服务。消费者通常会根据业务需求,通过HTTP请求调用服务提供者提供的API。 4. ...
标题中的“spring-kafka-producer-consumer-example”表明这是一个关于Spring Boot应用,它使用了Apache Kafka作为消息中间件,展示了生产者(producer)和消费者(consumer)的实现。描述中的“Simple application ...
3. `Producer.java`: 这个文件可能包含了生产者线程的实现。生产者线程会不断地生成数据(在这种情况下可能是事件对象),然后调用`EventStorage`的`put()`方法将数据放入队列。为了防止无限制地生成数据导致队列...
Eureka采用了客户端-服务器的架构模式,其中Eureka Server作为服务注册与发现的核心,而服务提供者和服务消费者则通过Eureka Client与Eureka Server交互。 2. **服务注册** 当一个服务启动时,它会将自己注册到...
在标题"pentaho-kafka-consumer.zip"中,我们看到的是一个专门为Pentaho Kettle定制的Kafka消费者插件的压缩包。 这个压缩包的描述提到了如何在Pentaho环境中安装和使用这个插件。首先,你需要在你的Pentaho Kettle...
9. **示例代码**: ```java import java.util.concurrent.ArrayBlockingQueue; public class ProducerConsumerExample { public static void main(String[] args) { ArrayBlockingQueue<Integer> queue = new ...
在Kafka-producer-consumer项目中,"kafka-producer-consumer-main"可能是一个包含启动生产者和消费者示例的主程序。生产者会将消息发布到一个或多个主题,而消费者则订阅这些主题并处理接收到的消息。这种交互方式...
示例代码中使用的`mx:Application`、`mx:Script`、`mx:Producer`、`mx:Consumer`等都是Flex MX组件,它们是Adobe Flex框架的一部分,用于构建富互联网应用程序(RIA)。 通过以上知识点,我们可以理解Flex如何实现...
在Linux操作系统下用C或C++实现经典同步问题:生产者-消费者问题。 含源代码和文档。 内容: 1.一个大小为10的缓冲区,初始状态为空。 2.2个生产者,随机等待一段时间,往缓冲区中添加数据,若缓冲区已满,等待消费...
利用信号量实现的多线程之间的同步与互斥,详情看博客文章Linux多线程编程(二)---线程之间的同步与互斥进阶实验
**前端开源库-tap-producer-macbre** 在IT领域,前端开发是构建网页和应用程序的重要部分,而开源库则是开发者们共享代码、提高效率的关键工具。`tap-producer-macbre`是一个专为前端开发者设计的开源库,主要用于...
在讲完Looper,Handler和HandlerThread一章之后,一位学生问我们如何将流数据(从传感器)从后台线程传递回主线程(UI)? 对于此用例, HandlerThread原因如下: 我们的后台线程只是在做一件事:读取传感器数据。...
Algorithm for Producer-Consumer PoolsElad Gidron CS DepartmentTechnion, Haifa, Israel eladgi@cs.technion.ac.ilIdit Keidar EE DepartmentTechnion, Haifa, Israel idish@ee.technion.ac.ilDmitri Perelman ∗...
用PHP实现Queue-Producer-Consumer Web Crawler。通过amphp / parallel依赖项使用多个进程或本机线程来爬网域以获取响应者链接。 / _ \ \_\(_)/_/ _//o|\_ / | @作者:罗伯特·伯恩斯@电子邮件: 安装 使用'...
生产者-消费者模式的 Java 8 变体
在"Kafka-Simple-Producer-Consumer-master"这个项目中,可能包含了示例代码,展示了如何使用Java 8编写Kafka的生产者和消费者。这些示例通常会包含以下部分: - 生产者类(ProducerClass.java):创建并配置...
* The classic producer-consumer example. * Illustrates mutexes and conditions. * by Zou jian guo <ah_zou@tom.com> * 2003-12-22 * *************************************************/ #include #...
Amazon Kinesis Video Streams C制作人Amazon Kinesis视频流| 安全的视频摄取以...建造下载要下载,请运行以下命令: git clone --recursive https://github.com/awslabs/amazon-kinesis-video-streams-producer-c.g
9号实验室工作 任务 使用生产者-消费者模板实现搜寻器。 爬网程序是一种旨在对Internet页面进行... producer的数量由network_threads命令行network_threads parser_threads , consumer的数量parser_threads参数par
在 `kafka-producer-consumer-master` 文件夹中,可能包含了这些功能的源代码,包括生产者类、消费者类以及 Avro schema 定义。通过查看源代码,我们可以学习如何在实际项目中集成 Kafka 生产者和消费者,以及如何...