Skip to content

Commit

Permalink
Merge pull request #412 from mollybostic/weekly_1009
Browse files Browse the repository at this point in the history
#400 -- updating service bus feature guides for 2.6
  • Loading branch information
scottturnbull committed Oct 11, 2012
2 parents 422a75f + e4b529b commit e330031
Show file tree
Hide file tree
Showing 12 changed files with 174 additions and 873 deletions.
88 changes: 4 additions & 84 deletions DevCenter/Java/HowTo/service-bus-queues.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,87 +20,7 @@ messages**, and **deleting queues**.
- [How to: Handle Application Crashes and Unreadable Messages][]
- [Next Steps][]

## <a name="bkmk_WhatAreSvcBusQueues"> </a>What are Service Bus Queues?

Service Bus Queues support a **brokered messaging communication** model.
When using queues, components of a distributed application do not
communicate directly with each other, they instead exchange messages via
a queue, which acts as an intermediary. A message producer (sender)
hands off a message to the queue and then continues its processing.
Asynchronously, a message consumer (receiver) pulls the message from the
queue and processes it. The producer does not have to wait for a reply
from the consumer in order to continue to process and send further
messages. Queues offer **First In, First Out (FIFO)** message delivery
to one or more competing consumers. That is, messages are typically
received and processed by the receivers in the order in which they were
added to the queue, and each message is received and processed by only
one message consumer.

![Service Bus Queue Diagram][]

Service Bus queues are a general-purpose technology that can be used for
a wide variety of scenarios:

- Communication between web and worker roles in a multi-tier Windows
Azure application
- Communication between on-premises apps and Windows Azure hosted apps
in a hybrid solution
- Communication between components of a distributed application
running on-premises in different organizations or departments of an
organization

Using queues can enable you to scale out your applications better, and
enable more resiliency to your architecture.

## <a name="bkmk_CreateSvcNamespace"> </a>Create a Service Namespace

To begin using Service Bus queues in Windows Azure, you must first
create a service namespace. A service namespace provides a scoping
container for addressing Service Bus resources within your application.

To create a service namespace:

1. Log on to the [Windows Azure Management Portal][].
2. In the lower left navigation pane of the Management Portal, click
**Service Bus, Access Control & Caching**.
3. In the upper left pane of the Management Portal, click the **Service
Bus** node, and then click the **New** button.
![Service Bus Node screenshot][]
4. In the **Create a new Service Namespace** dialog, enter a
**Namespace**, and then to make sure that it is unique, click the
**Check Availability** button.
![Create a New Namespace screenshot][]
5. After making sure the namespace name is available, choose the
country or region in which your namespace should be hosted (make
sure you use the same country/region in which you are deploying your
compute resources), and then click the **Create Namespace** button.
Having a compute instance is optional, and the service bus can be
consumed from any application with internet access.

The namespace you created will then appear in the Management Portal
and takes a moment to activate. Wait until the status is **Active**
before moving on.

## <a name="bkmk_ObtainDefaultMngmntCredentials"> </a>Obtain the Default Management Credentials for the Namespace

In order to perform management operations, such as creating a queue, on
the new namespace, you need to obtain the management credentials for the
namespace.

1. In the left navigation pane, click the **Service Bus** node, to
display the list of available namespaces:
![Available Namespaces screenshot][]
2. Select the namespace you just created from the list shown:
![Namespace List screenshot][]
3. The right-hand **Properties** pane will list the properties for the
new namespace:
![Properties Pane screenshot][]
4. The **Default Key** is hidden. Click the **View** button to display
the security credentials:
![Default Key screenshot][]
5. Make a note of the **Default Issuer** and the **Default Key** as you
will use this information below to perform operations with the
namespace.
<div chunk="../../shared/chunks/howto-service-bus-queues.md" />

## <a name="bkmk_ConfigApp"> </a>Configure Your Application to Use Service Bus

Expand Down Expand Up @@ -320,9 +240,9 @@ Now that you've learned the basics of Service Bus queues, see the MSDN
topic [Queues, Topics, and Subscriptions][] for more information.

[Windows Azure SDK for Java]: http://msdn.microsoft.com/en-us/library/windowsazure/hh690953(v=vs.103).aspx
[What are Service Bus Queues?]: #bkmk_WhatAreSvcBusQueues
[Create a Service Namespace]: #bkmk_CreateSvcNamespace
[Obtain the Default Management Credentials for the Namespace]: #bkmk_ObtainDefaultMngmntCredentials
[What are Service Bus Queues?]: #what-are-service-bus-queues
[Create a Service Namespace]: #create-a-service-namespace
[Obtain the Default Management Credentials for the Namespace]: #obtain-default-credentials
[Configure Your Application to Use Service Bus]: #bkmk_ConfigApp
[How to: Create a Security Token Provider]: #bkmk_HowToCreateQueue
[How to: Send Messages to a Queue]: #bkmk_HowToSendMsgs
Expand Down
82 changes: 4 additions & 78 deletions DevCenter/Java/HowTo/service-bus-topics.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,81 +22,7 @@ messages to a topic**, **receiving messages from a subscription**, and
- [How to: Delete Topics and Subscriptions][]
- [Next Steps][]

## <a name="bkmk_WhatAreSvcBusTopics"> </a>What are Service Bus Topics and Subscriptions?

Service Bus topics and subscriptions support a **publish/subscribe
messaging communication** model. When using topics and subscriptions,
components of a distributed application do not communicate directly with
each other, they instead exchange messages via a topic, which acts as an
intermediary.
![Service Bus Topics diagram][]

In contrast to Service Bus queues, where each message is processed by a
single consumer, topics and subscriptions provide a **one-to-many** form
of communication, using a publish/subscribe pattern. It is possible to
register multiple subscriptions to a topic. When a message is sent to a
topic, it is then made available to each subscription to handle/process
independently.

A topic subscription resembles a virtual queue that receives copies of
the messages that were sent to the topic. You can optionally register
filter rules for a topic on a per-subscription basis, which allows you
to filter/restrict which messages to a topic are received by which topic
subscriptions.

Service Bus topics and subscriptions enable you to scale to process a
very large number of messages across a very large number of users and
applications.

## <a name="bkmk_CreateSvcNamespace"> </a>Create a Service Namespace

To begin using Service Bus topics in Windows Azure, you must first
create a service namespace. A service namespace provides a scoping
container for addressing Service Bus resources within your application.

**To create a service namespace:**

1. Log on to the [Windows Azure Management Portal][].
2. In the lower left navigation pane of the Management Portal, click
**Service Bus, Access Control & Caching**.
3. In the upper left pane of the Management Portal, click the **Service
Bus** node, and then click the **New** button.
![Service Bus Node screenshot][]
4. In the **Create a new Service Namespace** dialog, enter a
**Namespace**, and then to make sure that it is unique, click the
**Check Availability** button.
![Create a New Namespace ][]
5. After making sure the namespace name is available, choose the
country or region in which your namespace should be hosted (make
sure you use the same country/region in which you are deploying your
compute resources), and then click the **Create Namespace** button.
Having a compute instance is optional, and the service bus can be
consumed from any application with internet access.

The namespace you created will then appear in the Management Portal
and takes a moment to activate. Wait until the status is **Active**
before moving on.

## <a name="bkmk_ObtainDefaultMngmntCredentials"> </a>Obtain the Default Management Credentials for the Namespace

In order to perform management operations, such as creating a topic, on
the new namespace, you need to obtain the management credentials for the
namespace.

1. In the left navigation pane, click the **Service Bus** node, to
display the list of available namespaces:
![Available Namespaces ][Service Bus Node screenshot]
2. Select the namespace you just created from the list shown:
![Namespace List screenshot][]
3. The right-hand **Properties** pane will list the properties for the
new namespace:
![Properties Pane screenshot][]
4. The **Default Key** is hidden. Click the **View** button to display
the security credentials:
![Default Key screenshot][]
5. Make a note of the **Default Issuer** and the **Default Key** as you
will use this information below to perform operations with the
namespace.
<div chunk="../../shared/chunks/howto-service-bus-topics.md" />

## <a name="bkmk_ConfigYourApp"> </a>Configure Your Application to Use Service Bus

Expand Down Expand Up @@ -409,9 +335,9 @@ Now that you've learned the basics of Service Bus queues, see the MSDN
topic [Queues, Topics, and Subscriptions][] for more information.

[Windows Azure SDK for Java]: http://msdn.microsoft.com/en-us/library/windowsazure/hh690953(v=vs.103).aspx
[What are Service Bus Topics and Subscriptions?]: #bkmk_WhatAreSvcBusTopics
[Create a Service Namespace]: #bkmk_CreateSvcNamespace
[Obtain the Default Management Credentials for the Namespace]: #bkmk_ObtainDefaultMngmntCredentials
[What are Service Bus Topics and Subscriptions?]: #what-are-service-bus-topics
[Create a Service Namespace]: #create-a-service-namespace
[Obtain the Default Management Credentials for the Namespace]: #obtain-default-credentials
[Configure Your Application to Use Service Bus]: #bkmk_ConfigYourApp
[How to: Create a Topic]: #bkmk_HowToCreateTopic
[How to: Create Subscriptions]: #bkmk_HowToCreateSubscrip
Expand Down
105 changes: 6 additions & 99 deletions DevCenter/Node/HowTo/service-bus-queues.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<properties linkid="dev-nodejs-how-to-service-bus-queues" urldisplayname="Service Bus Queues" headerexpose="" pagetitle="Service Bus Queues - How To - Node.js - Develop" metakeywords="Azure messaging, Azure brokered messaging, Azure messaging queue, Service Bus queue, Azure Service Bus queue, Azure messaging Node.js, Azure messaging queue Node.js, Azure Service Bus queue Node.js, Service Bus queue Node.js" footerexpose="" metadescription="Learn about Windows Azure Service Bus queues, including how to create queues, how to send and receive messages, and how to delete queues." umbraconavihide="0" disquscomments="1"></properties>
<properties linkid="dev-nodejs-how-to-service-bus-queues" urldisplayname="Service Bus Queues" headerexpose="" pagetitle="Service Bus Queues - How To - Node.js - Develop" metakeywords="Azure messaging, Azure brokered messaging, Azure messaging queue, Service Bus queue, Azure Service Bus queue, Azure messaging Node.js, Azure messaging queue Node.js, Azure Service Bus queue Node.js, Service Bus queue Node.js" footerexpose="" metadescription="Learn about Windows Azure Service Bus queues, including how to create queues, how to send and receive messages, and how to delete queues." umbraconavihide="0" disquscomments="1"></properties>

# How to Use Service Bus Queues

Expand All @@ -10,7 +10,7 @@ Steps] section.

## Table of Contents

- [What are Service Bus Queues][]
- [What are Service Bus Queues?][]
- [Create a Service Namespace][]
- [Obtain the Default Management Credentials for the Namespace][]
- [Create a Node.js Application][]
Expand All @@ -21,100 +21,7 @@ Steps] section.
- [How to: Handle Application Crashes and Unreadable Messages][]
- [Next Steps][]

## <a name="what-queues"> </a>What are Service Bus Queues

Service Bus Queues support a **brokered messaging communication** model.
When using queues, components of a distributed application do not
communicate directly with each other, they instead exchange messages via
a queue, which acts as an intermediary. A message producer (sender)
hands off a message to the queue and then continues its processing.
Asynchronously, a message consumer (receiver) pulls the message from the
queue and processes it. The producer does not have to wait for a reply
from the consumer in order to continue to process and send further
messages. Queues offer **First In, First Out (FIFO)** message delivery
to one or more competing consumers. That is, messages are typically
received and processed by the receivers in the order in which they were
added to the queue, and each message is received and processed by only
one message consumer.

![Queue Concepts][]

Service Bus queues are a general-purpose technology that can be used for
a wide variety of scenarios:

- Communication between web and worker roles in a multi-tier Windows
Azure application
- Communication between on-premises apps and Windows Azure hosted apps
in a hybrid solution
- Communication between components of a distributed application
running on-premises in different organizations or departments of an
organization

Using queues can enable you to scale out your applications better, and
enable more resiliency to your architecture.

## <a name="create-namespace"> </a>Create a Service Namespace

To begin using Service Bus queues in Windows Azure, you must first
create a service namespace. A service namespace provides a scoping
container for addressing Service Bus resources within your application.

To create a service namespace:

1. Log on to the [Windows Azure Management Portal][]. In order to perform the following steps you must use the Production portal. If you are currently using the Preview portal, you can switch to Production by clicking **Preview** at the top of the page, and then selecting **Take me to the previous portal**. This will load the production management portal.

![preview portal dialog][Previous Management Portal]

2. In the lower left navigation pane of the Management Portal, click
**Service Bus, Access Control & Caching**.

3. In the upper left pane of the Management Portal, click the **Service
Bus** node, and then click the **New** button.

![image][]

4. In the **Create a new Service Namespace** dialog, enter a
**Namespace**, and then to make sure that it is unique, click the
**Check Availability** button.

![image][1]

5. After making sure the namespace name is available, choose the
country or region in which your namespace should be hosted (make
sure you use the same country/region in which you are deploying your
compute resources), and then click the **Create Namespace** button.

The namespace you created will then appear in the Management Portal and
takes a moment to activate. Wait until the status is **Active** before
moving on.

## <a name="obtain-creds"> </a>Obtain the Default Management Credentials for the Namespace

In order to perform management operations, such as creating a queue, on
the new namespace, you need to obtain the management credentials for the
namespace.

1. In the left navigation pane, click the **Service Bus** node, to
display the list of available namespaces:

![image][]

2. Select the namespace you just created from the list shown:

![image][2]

3. The right-hand **Properties** pane will list the properties for the
new namespace:

![image][3]

4. The **Default Key** is hidden. Click the **View** button to display
the security credentials:

![image][4]

5. Make a note of the **Default Key** as you will use this information
below to perform operations with the namespace.
<div chunk="../../shared/chunks/howto-service-bus-queues.md" />

## <a name="create-app"> </a>Create a Node.js Appication

Expand Down Expand Up @@ -332,9 +239,9 @@ links to learn more.

[Azure SDK for Node]: https://github.com/WindowsAzure/azure-sdk-for-node
[Next Steps]: #next-steps
[What are Service Bus Queues]: #what-queues
[Create a Service Namespace]: #create-namespace
[Obtain the Default Management Credentials for the Namespace]: #obtain-creds
[What are Service Bus Queues?]: #what-are-service-bus-queues
[Create a Service Namespace]: #create-a-service-namespace
[Obtain the Default Management Credentials for the Namespace]: #obtain-default-credentials
[Create a Node.js Application]: #create-app
[Configure Your Application to Use Service Bus]: #configure-app
[How to: Create a Queue]: #create-queue
Expand Down
Loading

0 comments on commit e330031

Please sign in to comment.