Ruby on Rails + AJAX + Mongrel + JMS/MQ/MOM = 即时通讯
来源:
作者:
时间:2007-09-19
点击:
portfolio_controller.rb 中的 producer action 就是股价提供者:
* Stomp::Connection.new 向 AMQ Server 开启一个新的 STOMP 连接。
* create_stock_text(stock) 会找出最新的股价。这里我们随机计出数值和变动,实际上这会由报价机构提供
* conn.send 把讯息传去 AMQ 上指定的 topic 里,所有订阅了这个 topic 的 client 也会收到这个讯息。
完成这几个档案后,只需要启动 Rails 、 AMQ ,再把 browser 指向 http://127.0.0.1:3000/portfolio/producer 就可以看到如下的画面:
不错,但究竟是否真的有 message 产生呢?我们可以手动连接上 AMQ 看。只要开启一个 terminal 输入以下指令:
代码
- telnet localhost 61613
- Trying ::1...
- Connected to localhost.
- Escape character is '^]'.
看到 connected 的字句表示己经用 Stomp 连结上了。接着输入以下指令 (^@ 是 ASCII 的 Null Character,可用 Ctrl + @ 输入):
代码
- CONNECT
- ^@
- SUBSCRIBE
- destination: /topic/STOCKS.*
- ^@
这会连接上 AMQ 并收取所有 /topic/STOCKS.* 的讯息。如果己经开启了 Producer ,可以收到类似下面的讯息:
代码
- MESSAGE
- destination:/topic/STOCKS.IBMW
- content-type:text/plain; charset=UTF-8
- content-length:83
- timestamp:1183307032064
- priority:0
0
最新评论共有 0 位网友发表了评论
查看所有评论
发表评论
热点关注
- Ruby on Rails技术简介
- rails集成extjs
- 搞懂oracle字符集
- Ruby on Rails + AJAX + M
- Ruby DBI操作MySql数据库
- 在ruby on rails中实现验
- 整合File-Column和Rmagick
- 配合rails的oracle连接和
- Rails宝典之第二式: 动态f
- Hello world, Ruby on rai
- 在Ruby中对字符串和block
- rails的UTF-8支持造成的正
- RoR的正确定位
- rails与编码
- error_messages_for的中文
- mysql乱码数据的修正
- 如何在rails中正确使用MS
- 用ruby实现简体中文和繁体
- Java、RoR、PHP,一个都不
- 用Editplus编译Ruby程序
Google Adsense

