Serverless Integration Design Patterns with Azure

Book Description

A practical guide that helps you progress to using modern integration methods and leverage new cloud capability models

Key Features

  • Design critical hybrid integration solutions for your organization
  • Gain in-depth knowledge of how to build cloud-native integration solutions
  • Leverage cognitive services to build smart cloud solutions

Book Description

With more enterprises adapting cloud-based and API-based solutions, application integration has become more relevant and significant than ever before. Parallelly, Serverless Integration has gained popularity, as it helps agile organizations to build integration solutions quickly without having to worry about infrastructure costs. With Microsoft Azure's serverless offerings, such as Logic Apps, Azure Functions, API Management, Azure Event Grid and Service Bus, organizations can build powerful, secure, and scalable integration solutions with ease.

The primary objective of this book is to help you to understand various serverless offerings included within Azure Integration Services, taking you through the basics and industry practices and patterns. This book starts by explaining the concepts of services such as Azure Functions, Logic Apps, and Service Bus with hands-on examples and use cases. After getting to grips with the basics, you will be introduced to API Management and building B2B solutions using Logic Apps Enterprise Integration Pack.

This book will help readers to understand building hybrid integration solutions and touches upon Microsoft Cognitive Services and leveraging them in modern integration solutions. Industry practices and patterns are brought to light at appropriate opportunities while explaining various concepts.

What you will learn

  • Learn about the design principles of Microsoft Azure Serverless Integration
  • Get insights into Azure Functions, Logic Apps, Azure Event Grid and Service Bus
  • Secure and manage your integration endpoints using Azure API Management
  • Build advanced B2B solutions using Logic Apps, Enterprise Integration Pack
  • Monitor integration solutions using tools available on the market
  • Discover design patterns for hybrid integration

Who this book is for

Serverless Integration Design Patterns with Azure is for you if you are a solution architect or integration professional aiming to build complex cloud solutions for your organization. Developers looking to build next-level hybrid or cloud solutions will also find this book useful. Prior programming knowledge is necessary.

Publisher Resources

Download Example Code

Table of Contents

  1. Title Page
  2. Copyright and Credits
    1. Serverless Integration Design Patterns with Azure
  3. About Packt
    1. Why subscribe?
    2. Packt.com
  4. Contributors
    1. About the authors
    2. About the reviewers
    3. Packt is searching for authors like you
  5. Preface
    1. Who this book is for
    2. What this book covers
    3. To get the most out of this book
      1. Download the example code files
      2. Download the color images
      3. Conventions used
    4. Get in touch
      1. Reviews
  6. Serverless Integration with Microsoft Azure
    1. Introduction to serverless in the cloud
    2. Benefits and disadvantages of serverless architecture
    3. Azure Integration Services
    4. Azure Logic Apps – cloud workflow engine
    5. Azure Service Bus – cloud messaging service
    6. Azure API Management – API gateway
    7. Azure Functions 
    8. Azure Event Grid – event-handling platform
    9. Summary
  7. Azure Functions and Enterprise Integration
    1. Azure Functions hosting architecture
    2. Sample Azure Function
      1. Prerequisites for using Visual Studio
      2. Creating dependent Azure services
        1. Step 1 – Creating a Service Bus queue
        2. Step 2 – Creating a Cosmos DB account and a collection
        3. Step 3 – Creating a storage account
      3. Creating a function app project
      4. Creating a function
      5. Running and debugging functions locally
      6. Publishing Azure Functions
    3. Understanding the components of an Azure Function
      1. Application host file (host.json)
      2. Application settings (local.settings.json)
      3. Function triggers
      4. Function bindings
    4. Sample scenario continued
      1. Installing the NuGet package for the Cosmos DB WebJobs extension
      2. Adding input bindings to Inventory DB
      3. Adding output bindings for the orders collection
      4. Running the end-to-end sample scenario
    5. Azure Function use cases
    6. Important considerations when building Azure Functions
      1. Securing application settings with Azure Key Vault
      2. Service plan versus consumption plan
      3. Using deployment slots
      4. Leveraging Application Insights for monitoring
      5. Function proxies
    7. Durable Functions
      1. Function chaining
      2. Fan-out or fan-in
      3. Async HTTP APIs
      4. Monitoring
      5. Human interaction
    8. Creating a sample durable function
      1. Installing a durable task package
    9. Summary
  8. Introduction to Azure Event Grid
    1. Eventing or messaging for enterprise solutions
      1. Characteristics of events and eventing
    2. Event sources and event handlers
      1. Event sources
        1. Foreground events
        2. Background events
      2. Event handlers
    3. Azure Event Grid topics
    4. Azure Event Grid security and authentication
      1. Webhook event delivery
      2. Event delivery security
        1. Event subscriptions
    5. Publishing events through custom topics
      1. Key authentication with code
    6. Azure Event Grid management access control
    7. Azure Event Grid message delivery retry and event filtering
    8. Dead-letter events with Azure Event Grid
      1. Event delivery status codes
    9. Event filtering through Azure Event Grid subscription
      1. Event type filtering
      2. Subject filtering
      3. Advanced filtering
    10. Example 1 – storage events and Logic Apps single event listener
    11. Example 2 – custom Azure Event Grid topic and event broadcast
    12. Azure Event Grid domain for enterprise integration
    13. Summary
  9. Azure API Management
    1. The API Management platform
      1. The Azure APIM platform
        1. API gateway
        2. The publisher portal
        3. The developer portal
      2. API products
      3. Authorization groups
      4. Policies
      5. Policy scopes
    2. Logistical company ShipAnyWhere – case study
      1. The product service
      2. The order fulfillment service
      3. The purchase order service
      4. ShipAnyWhere digital transformation
    3. Creating an APIM service
    4. Creating REST endpoints for the ShipAnyWhere product service
      1. Existing ShipAnyWhere service
      2. Importing WSDL
      3. Testing the GetProducts service method
      4. The developer portal
      5. APIM policies
        1. Inbound policies
          1. The rewrite-uri policy
          2. The set-header policy
          3. The set-body policy
      6. Backend policies
      7. Outbound policies
        1. The control flow policy
        2. The XML-to-JSON policy
        3. The cross-original resource sharing (CORS) policy
    5. Creating a SOAP pass through an API 
    6. Creating purchase order APIs with Logic Apps and Azure Functions
    7. Handling large messages in hybrid integration scenarios
    8. Versioning and production testing Logic Apps
    9. Summary
  10. Azure Service Bus with Integration Services
    1. Azure Service Bus use cases
      1. Creating a Service Bus namespace
        1. Creating a Service Bus namespace in the Azure portal
        2. Service Bus tiers
      2. Azure Service Bus technology offerings
      3. Azure Service Bus architecture
      4. Messaging with Service Bus
        1. Message size
        2. Message headers and properties
      5. Service Bus queues and descriptions
        1. Queue naming convention
        2. Retrieving messages from a queue
      6. Dead-lettering of Service Bus messages
      7. Deferred message processing in Azure Service Bus
      8. Security with an Azure Service Bus namespace
        1. SAS authentication
      9. Azure Service Bus topics
        1. Subscription rules
        2. Example 1 – Working with priority queues in Azure Service Bus
        3. Example 2 – Working with API Management and Service Bus
        4. Example 3 – Content-based routing based on message properties
    2. Summary
  11. Introduction to Logic Apps
    1. The components of Azure Logic Apps
    2. An overview of triggers
      1. Recurrence triggers
      2. HTTP triggers
      3. Request triggers
      4. Webhook triggers
    3. Actions in Logic Apps
    4. Parameters in the Logic Apps workflow template
    5. Outputs in the Logic Apps workflow template
    6. Example 1 – Debatching in Logic Apps with the splitOn property and Azure Functions change feed with Cosmos DB
    7. Example 2 – Concurrency control and singleton patterns in Logic Apps with schema validation
    8. Summary
  12. Control Flow Actions and Custom Connectors
    1. Logic Apps control flow actions
      1. Conditional actions
      2. Parallel actions
      3. Switch control flow
      4. Foreach action
      5. Scope action
      6. Do…until action
      7. Terminate action
    2. The workflow expression language and content types
      1. Workflow and action tracking
    3. Custom connectors and Cosmos graph databases
    4. Summary
  13. Patterns with Azure Integration Services
    1. Azure Functions and Logic Apps
    2. Example 1 – The batching or aggregator pattern in Logic Apps
    3. Example 2 – Asynchronous patterns for long-running APIs
      1. The polling pattern
      2. The webhook pattern
    4. Example 3 – Messages with API Management, Event Grid, Logic App, and Azure Functions
    5. Example 4 – Session Management with Logic Apps and Service Bus
    6. Summary
  14. B2B/EDI Solutions for Enterprise Integration with Azure Logic Apps
    1. Enterprise integration pack
    2. B2B scenario
    3. Creating integration accounts
    4. Uploading certificates to Azure Key Vault
      1. Creating certificates
      2. Creating a key vault service in each resource group
      3. Uploading the private key certificates to the key vaults
      4. Adding certificates to an integration account
    5. Uploading schemas and maps
    6. Creating partners in an integration account
    7. Creating AS2 agreements
      1. Creating AS2 agreements in Contoso
      2. Creating an AS2 agreement for ShipAnyWhere
    8. Creating an X12 agreement
    9. Creating the ContosoSendOrder Logic App
    10. The Logic Apps B2B solution
      1. Creating a workspace and adding the B2B solution
      2. Associating the Log Analytics workspace with an integration account
    11. Handling EDI batches
      1. The ShipAnyWhereBatchReceiver Logic App
      2. The SendX12TransactionToBatcher Logic App
      3. Testing the scenario
    12. B2B disaster recovery
      1. X12/EDIFACT control ID replication Logic Apps
      2. AS2 Message Integrity Check (MIC) replication Logic App
    13. Summary
  15. Hybrid Integration, BizTalk Server 2016 and an On-Premises Data Gateway
    1. Introduction to hybrid integration
    2. Why hybrid integration?
    3. Introduction to the on-premises data gateway
      1.  On-premises Data Gateway Architecture
    4. Enabling Hybrid Integration with Microsoft BizTalk Server 2016
      1. Azure Service Bus Relay
      2. The Service Bus (SB) – Messaging adapter
    5. The Logic Apps adapter
      1. Comparison matrix
      2. Installing and configuring Logic Apps adapters in BizTalk Server 2016
      3. Connecting BizTalk Server 2016 with Azure Logic Apps
        1. Step 1 – Creating Logic Apps for Cognitive Services
        2. Step 2 – Typed polling with the WCF adapter
          1. Connecting to a SQL database
          2. Creating a two-way send port for Logic Apps
          3. Connecting Azure Logic Apps with BizTalk Server 2016
        3. IIS configuration for Logic App adapters
        4. Consuming the WCF service in BizTalk 2016
    6. Summary
  16. Intelligence in Integration Using Azure Cognitive Services
    1. AI
      1. Machine learning
      2. Neural network
    2. Machine learning and digital transformation
    3. Microsoft and the democratization of AI
    4. The Microsoft AI platform
      1. Azure AI
        1. Cognitive Services APIs
        2. Conversational services
        3. Data Science Virtual Machine (DSVM)
      2. Comprehensive platform and tools
    5. Intelligence in serverless integration
      1. Computer Vision APIs
        1. The Analyze Image API
        2. Optical character recognition (OCR) to JSON
      2. Face API
      3. Text Analytics APIs
      4. Language understanding APIs
        1. Natural language model
    6. Case study – ShipAnywhere feedback analysis
      1. Provisioning the Text Analytics API service instance
      2. Noting down the connection name and key
      3. Creating logic apps
    7. Summary
  17. DevOps for Azure Integration
    1. Benefits of DevOps
    2. DevOps for integration
      1. Naming convention of integration artifacts
    3. ARM templates
      1. Creating an ARM template using Visual Studio
    4. Azure Event Grid and DevOps
    5. Azure API Management and DevOps with Git version control
    6. Azure Functions with DevOps
      1. Azure Function continuous integration and deployment
    7. Logic Apps continuous integration and deployment with DevOps
    8. Summary
  18. Monitoring for Azure Integration
    1. Types of monitoring
      1. Manual monitoring
      2. Automated monitoring
    2. Different types of monitoring
      1. Availability monitoring
      2. Health monitoring
      3. Performance monitoring
      4. Threshold monitoring
    3. Sending notifications of issues or events
    4. Benefits of monitoring
      1. Improving availability
      2. Business insights
      3. Usage trends for upscaling and downscaling
      4. Identifying performance bottlenecks
    5. Azure integration service monitoring
      1. Azure Logic Apps monitoring with the Azure portal and Azure log analytics
        1. Logic App runs and trigger history
        2. Logic Apps notifications and alerts
      2. Azure Log Analytics and Logic Apps
      3. Azure Functions monitoring with Application Insights
        1. Application Insights configuration for a new function app
        2. Manually connecting an Application Insights resource to your function app
        3. Monitoring functions with Application Insights
        4. Azure API Management monitoring with Application Insights
    6. Azure Service Bus monitoring with Serverless360
      1. Serverless360 monitoring features
        1. Threshold violation alarms
        2. Health check alarms
        3. Data monitoring
      2. Managing composite serverless applications in Serverless360
        1. Associating an Azure subscription
        2. Creating a composite serverless application
        3. Adding Azure serverless components to the application
    7. Setting up monitoring in Serverless360
      1. Creating an alarm
      2. Mapping artifacts to the alarm
    8. Summary
  19. Other Books You May Enjoy
    1. Leave a review - let other readers know what you think

Product Information

  • Title: Serverless Integration Design Patterns with Azure
  • Author(s): Abhishek Kumar, Srinivasa Mahendrakar
  • Release date: February 2019
  • Publisher(s): Packt Publishing
  • ISBN: 9781788399234