Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Rabbit mq簡介(上)

1,466 views

Published on

http://rd-program.blogspot.tw/2014/05/rabbitmq.html

Published in: Technology

Rabbit mq簡介(上)

  1. 1. sonet.all@gmail.com / luke
  2. 2. http://en.wikipedia.org/wiki/Advanced_Message_Queuing_Protocol http://activemq.apache.org/ http://zguide.zeromq.org/page:all http://www.rabbitmq.com/ Robust messaging for applications Easy to use Runs on all major operating systems Supports a huge number of developer platforms Open source and commercially supported
  3. 3. 安裝 RabbitMQ vi /etc/apt/sources.list:加入下面這行 deb http://www.rabbitmq.com/debian/ testing main 將 RabbitMQ 的金鑰匯入: wget http://www.rabbitmq.com/rabbitmq-signing-key-public.asc sudo apt-key add rabbitmq-signing-key-public.asc 使用 apt 安裝: sudo apt-get update sudo apt-get install rabbitmq-server 安裝管理模組: sudo rabbitmq-plugins enable rabbitmq_management 關閉Server: sudo rabbitmqctl stop 重啟Server: sudo rabbitmq-server -detached
  4. 4. RabbitMQ Management http://127.0.0.1:15672/ 預設帳密 guest / guest (建議安裝後就更改)
  5. 5. RabbitMQ 簡易教程 http://www.rabbitmq.com/getstarted.html 1 "Hello World!" The simplest thing that doessomething 2 Work queues Distributing tasks among workers
  6. 6. 3 Publish/Subscribe Sending messages to many consumers at once 4 Routing Receiving messages selectively 5 Topics Receiving messages based on a pattern 6 RPC Remote procedure call implementation
  7. 7. RabbitMQ 提供的範例 C# (using .net/c# client) clojure (using Langohr) erlang (using erlang client) java (using java client) javascript/node.js (using amqp.node) perl (using Net::RabbitFoot) python (using pika) python-puka (using puka) ruby (using Bunny) ruby (using amqp gem)
  8. 8. Example
  9. 9. 虛擬機器(virtual host) 用於權限控管 ex. 某個人只能存取 /luke 之下的資訊 交換機(exchange) 類似路由表的路由程序 Fanout Exchange Direct Exchange Topic Exchange 佇列(queue) 绑定(binding)
  10. 10. Demo/應用/Q&A

×