Download Topics - Microsoft NT konferenca

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Integrating mobile clients
with on-premise business
data
Blaz Lipuscek
Diventic d.o.o.
cloudHQ.net
What is Service Bus?
Service Bus provides secure messaging and connectivity
capabilities that enable building distributed and disconnected
applications in the cloud, as well as hybrid applications across
both on-premise and the cloud.
2
What does Service Bus offer?
•
Unified set of messaging capabilities
•
Service Bus Relay
•
Service Bus Brokered Messaging
•
Easily build hybrid apps
Consistent management and observation capabilities
Rich options for interconnecting apps across network
boundaries
Queuing, publish/subscribe
3
Why use it?
Saves the need for the developer to worry about delivery
assurance, reliable messaging and scale.
4
Service Bus Fundamentals
•
•
•
Service Bus is a multi-tenant cloud service (shared by multiple users),
user, such as an application developer, creates a namespace,
namespace then defines the communication mechanisms:
•
Queues
•
Topics
•
Relays
one-directional communication
one-directional communication using subscriptions
provide bi-directional communication
5
6
Queues
ReceiveAndDelete
Removes a message from the queue
and immediately deletes it.
PeekLock
Locks the message, making it invisible
to other receivers.
7
Tightly Coupled
Loosely Coupled
Topics
Unlike queues, a single
message sent to a topic
can be received by
multiple subscribers
10
Relays
Why make applications
communicate via a
cloud service rather
than just interact
directly?
11
Why make apps communicate via cloud?
• Behind Firewall
Blocking incoming / outgoing data
• Network Address Translation (NAT)
Probably we don‘t have fixed IP
Each application establishes an TCP connection
with Service Bus, then keeps it open!
12
Choosing Authentication for a Service Bus App
• SAML, over the SSL protocol
This option requires that you write your own SSL credential server
• SharedSecret
self-issued shared secret that is registered with Access Control
• SimpleWebToken
self-issued shared secret that is registered with Access Control in format
called simple Web token (SWT)
• Unauthenticated
13
Message auto-forwarding
QueueDescription destinationQ = new QueueDescription("myQ2");
QueueDescription sourceQ = new QueueDescription("myQ1");
sourceQ.ForwardTo = “myQ2";
Message lock renewal
QueueClient queueClient = QueueClient.Create("myQ");
BrokeredMessage message = queueClient.Receive();
message.RenewLock();
message.LockedUntilUtc; // check to see when you need to renew
Pause queues & topics
QueueDescription qd = namespaceManager.GetQueue("myQ");
qd.Status = EntityStatus.Disabled;
namespaceManager.UpdateQueue(qd);
qd.Status = EntityStatus.Active;
namespaceManager.UpdateQueue(qd);
Send-time filter evaluation
TopicDescription td = new TopicDescription("Topic");
td.EnableFilteringMessagesBeforePublishing = true;
// throws NoMatchingSubscriptionException on send
Service Bus AMQP 1.0
• Advanced Message Queuing Protocol
(AMQP) 1.0 is an efficient, reliable, wirelevel messaging protocol
• Support for a range of third-party client
libraries
• More platforms will be supported as
libraries become available
Support for multiple protocols
AMQP 1.0 client libraries
Language
C#
Java
C
PHP
Python
Library
Service Bus .NET Client Library
Apache Qpid Java Message Service (JMS) client
IIT SwiftMQ Java client
Apache Qpid Proton-C
Apache Qpid Proton-PHP
Apache Qpid Proton-Python
Ruby
Apache Qpid Proton-Ruby (coming soon)
Perl
Apache Qpid Proton-Perl (coming soon)
JavaScript
Apache Qpid Proton-JavaScript (coming soon)
Blaz Lipuscek
Diventic d.o.o.
21
Q&A.