This presentation covers all of the new features available on MQ for z/OS 9.2. Including zHyperWrite, data set encryption, AMS enhancements, simplified migration, and more!
High availability of a messaging system is essential. This is especially true for IBM MQ systems which are absolutely critical to the smooth running of many enterprises. IBM MQ Advanced made achieving high availability even easier with Replicated Data Queue Managers. Learn how this and other HA capabilities fits into a system that provides both high availability of the messaging system as a whole and every last piece of critical messaging data that you care about.
IBM MQ Whats new - including 9.3 and 9.3.1Robert Parker
I presented at the IBM MQ French User Group in Paris on the topic of What's new in MQ. I covered both what was new in IBM MQ 9.3 LTS and what was new in the latest IBM MQ 9.3.1 CD release.
Enterprise messaging and IBM MQ is a critical part of any system, this session shows you how MQ is rapidly evolving to meet your needs. Irrespective of your platform or environment, this session introduces many of the updates to MQ in 2019 and 2020, whether that's in administration, building fault tolerant, scalable messaging solutions, or securing your systems.
Optimizing Network Performance for Amazon EC2 Instances (CMP308-R1) - AWS re:...Amazon Web Services
Many customers are using Amazon EC2 instances to run applications with high performance networking requirements. In this session, we provide an overview of Amazon EC2 network performance features— including enhanced networking, ENA, and placement groups—and discuss how we are innovating on behalf of our customers to improve networking performance in a scalable and cost-efficient manner. We share best practices and performance tips for getting the best networking performance out of your Amazon EC2 instances.
This presentation covers all of the new features available on MQ for z/OS 9.2. Including zHyperWrite, data set encryption, AMS enhancements, simplified migration, and more!
High availability of a messaging system is essential. This is especially true for IBM MQ systems which are absolutely critical to the smooth running of many enterprises. IBM MQ Advanced made achieving high availability even easier with Replicated Data Queue Managers. Learn how this and other HA capabilities fits into a system that provides both high availability of the messaging system as a whole and every last piece of critical messaging data that you care about.
IBM MQ Whats new - including 9.3 and 9.3.1Robert Parker
I presented at the IBM MQ French User Group in Paris on the topic of What's new in MQ. I covered both what was new in IBM MQ 9.3 LTS and what was new in the latest IBM MQ 9.3.1 CD release.
Enterprise messaging and IBM MQ is a critical part of any system, this session shows you how MQ is rapidly evolving to meet your needs. Irrespective of your platform or environment, this session introduces many of the updates to MQ in 2019 and 2020, whether that's in administration, building fault tolerant, scalable messaging solutions, or securing your systems.
Optimizing Network Performance for Amazon EC2 Instances (CMP308-R1) - AWS re:...Amazon Web Services
Many customers are using Amazon EC2 instances to run applications with high performance networking requirements. In this session, we provide an overview of Amazon EC2 network performance features— including enhanced networking, ENA, and placement groups—and discuss how we are innovating on behalf of our customers to improve networking performance in a scalable and cost-efficient manner. We share best practices and performance tips for getting the best networking performance out of your Amazon EC2 instances.
Deploying and managing IBM MQ in the CloudRobert Parker
When moving to the cloud you want to ensure that the deployment and management of your cloud queue managers is as easy and streamlined as possible. In this session we will look at a few tools you can use to deploy and manage your queue managers, as well as where you can find examples of these tools in action.
This presentation was given at the WebSphere User Group in Hursley, June 2017.
I gave this talk at Krakow/Poland DevOPS meetup. It was a lightning talk covering subject of High Availability solutions, architecture, planning and deploying.
z/OS Connect provides the ability to front z/OS assets with a RESTful API. This session covers the support that MQ provides for z/OS Connect and how it can be used to provide a RESTful front end to existing queue based applications with no changes to the applications themselves.
This presentation also includes other late-breaking enhancements for MQ for z/OS.
Are you looking to automate backup and archiving of your business-critical data workloads? Attend this session to understand key use cases, best practices, and considerations for protecting your data with AWS and CommVault. This session will feature lessons learned from CommVault customers that have: migrated onsite backup data into Amazon S3 to reduce hardware footprint and improve recoverability; implemented data-tiering and archived data in Amazon Glacier for long term retention and compliance; performed snapshot-based protection and recovery for applications running in Amazon EC2; and, provisioned and managed VMs in Amazon EC2.
Speaker: Chris Gondek, Principal Architect, CommVault Australia and New Zealand
Building an Active-Active IBM MQ Systemmatthew1001
Shows how message availability and service availability can be configured to reduce downtime and improve overall availability of your MQ network. Demonstrates how Uniform Clusters can be used to help keep your service availability high.
Windows server 2016 storage step by step complete labAhmed Abdelwahed
This lab, provide complete information to configure and manage Windows server 2016 storage including the following labs:
LAB 1: Implementing Windows Server 2016 File Server Resource Manager (FSRM)
Lab 2: Windows Server 2016 Data Deduplication
Lab 3: Internet Small Computer System Interface (ISCSI) Storage
Lab 4: Windows Server 2016 Storage Pool
AWS Graviton 프로세서는 CPU, 메모리, 스토리지, 네트워킹에 워크로드에 최적화된 솔루션을 제공하고 있습니다. 특히 계획문제와 같이 한정된 자원에 대한 최적의 조합을 탐색하는 워크로드의 경우 연산에 최적화된 인스턴스의 선택이 효과적입니다. 이번 세션에서는 배송 경로 최적화 솔루션에서 AWS Graviton 인스턴스를 활용하여 적은 비용으로 더 높은 성능을 얻은 사례와 함께 AWS Graviton 도입을 위한 노하우를 공유해 드립니다.
Presented at MQ Technical Conference 2018
More businesses are discovering the benefit of the cloud and moving parts or the whole of their infrastructure onto cloud platforms. In this session we will be looking at how you can utilize IBM MQ in the cloud including considerations you must make before moving your MQ infrastructure into the cloud. We will also look at what resources are available for you to use as a starting point for moving IBM MQ in the cloud.
Deploying and managing IBM MQ in the CloudRobert Parker
When moving to the cloud you want to ensure that the deployment and management of your cloud queue managers is as easy and streamlined as possible. In this session we will look at a few tools you can use to deploy and manage your queue managers, as well as where you can find examples of these tools in action.
This presentation was given at the WebSphere User Group in Hursley, June 2017.
I gave this talk at Krakow/Poland DevOPS meetup. It was a lightning talk covering subject of High Availability solutions, architecture, planning and deploying.
z/OS Connect provides the ability to front z/OS assets with a RESTful API. This session covers the support that MQ provides for z/OS Connect and how it can be used to provide a RESTful front end to existing queue based applications with no changes to the applications themselves.
This presentation also includes other late-breaking enhancements for MQ for z/OS.
Are you looking to automate backup and archiving of your business-critical data workloads? Attend this session to understand key use cases, best practices, and considerations for protecting your data with AWS and CommVault. This session will feature lessons learned from CommVault customers that have: migrated onsite backup data into Amazon S3 to reduce hardware footprint and improve recoverability; implemented data-tiering and archived data in Amazon Glacier for long term retention and compliance; performed snapshot-based protection and recovery for applications running in Amazon EC2; and, provisioned and managed VMs in Amazon EC2.
Speaker: Chris Gondek, Principal Architect, CommVault Australia and New Zealand
Building an Active-Active IBM MQ Systemmatthew1001
Shows how message availability and service availability can be configured to reduce downtime and improve overall availability of your MQ network. Demonstrates how Uniform Clusters can be used to help keep your service availability high.
Windows server 2016 storage step by step complete labAhmed Abdelwahed
This lab, provide complete information to configure and manage Windows server 2016 storage including the following labs:
LAB 1: Implementing Windows Server 2016 File Server Resource Manager (FSRM)
Lab 2: Windows Server 2016 Data Deduplication
Lab 3: Internet Small Computer System Interface (ISCSI) Storage
Lab 4: Windows Server 2016 Storage Pool
AWS Graviton 프로세서는 CPU, 메모리, 스토리지, 네트워킹에 워크로드에 최적화된 솔루션을 제공하고 있습니다. 특히 계획문제와 같이 한정된 자원에 대한 최적의 조합을 탐색하는 워크로드의 경우 연산에 최적화된 인스턴스의 선택이 효과적입니다. 이번 세션에서는 배송 경로 최적화 솔루션에서 AWS Graviton 인스턴스를 활용하여 적은 비용으로 더 높은 성능을 얻은 사례와 함께 AWS Graviton 도입을 위한 노하우를 공유해 드립니다.
Presented at MQ Technical Conference 2018
More businesses are discovering the benefit of the cloud and moving parts or the whole of their infrastructure onto cloud platforms. In this session we will be looking at how you can utilize IBM MQ in the cloud including considerations you must make before moving your MQ infrastructure into the cloud. We will also look at what resources are available for you to use as a starting point for moving IBM MQ in the cloud.
Postponed Optimized Report Recovery under Lt Based Cloud MemoryIJARIIT
Fountain code based conveyed stockpiling system give solid online limit course of action through putting unlabeled
subset pieces into various stockpiling hubs. Luby Transformation (LT) code is one of the predominant wellspring codes for limit
systems in view of its viable recuperation. In any case, to ensure high accomplishment deciphering of wellspring code based limit
recuperation of additional segments in required and this need could avoid additional put off. We give the idea that distinctive stage
recuperation of piece is powerful to lessen the document recovery delay. We first develop a postpone display for various stage
recuperation arranges pertinent to our considered system with the made model. We focus on perfect recuperation arranges given
essentials on accomplishment decipher limit. Our numerical outcomes propose a focal tradeoff between the record recuperation
delay and the target of fruitful document unraveling and that the report recuperation deferral can be on a very basic level decrease
by in a perfect world bundle requests in a multi arrange style.
Kafka is a real-time, fault-tolerant, scalable messaging system.
It is a publish-subscribe system that connects various applications with the help of messages - producers and consumers of information.
Understanding Apache Kafka P99 Latency at ScaleScyllaDB
Apache Kafka is a highly popular distributed system used by many organizations to connect systems, build microservices, create data mesh, etc. However, as a distributed system, understanding its performance could be a challenge, so many moving parts exist.
In this talk, we are going to review the key moving parts (producers, consumers, replication, network, etc), a strategy to measure and interpret the performance results for consumers and producers and a general guideline for deciding about performance in Apache Kafka.
An attendee will take home after the talk a proven method to measure, evaluate and optimise the performance of an Apache Kafka based infrastructure. A key skill for low throughput users, but especially for the biggest scale deployments.
IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...Peter Broadhurst
An introduction to one possible MQ architecture - an active/active multiple queue manager client<->server environment.
Summary of detailed topology articles available here:
http://ow.ly/vrUUV
And MQDev blog+discussion on client attachment here:
http://ibm.co/MM8rMl
MuleSoft Meetup Singapore #8 March 2021Julian Douch
Best of Both - Kafka & MuleSoft. Two of the hottest technologies on the market for integrating and distributing data across the enterprise and with end-users of digital services. In this session Senthilkumar from MuleSoft will walkthrough these technologies, provide understanding to the use-cases where both can be leveraged in together to deliver the best digital services.
IOT & Enterprise Connectivity Using MuleSoft. There's no questioning that Internet of Things (IoT) creates tremendous business opportunities. According to its definition from the web, the Internet of Things (IoT) describes the network of physical objects - “things”- that are embedded with sensors, software, and other technologies for the purpose of connecting and exchanging data with other devices and systems over the internet. These devices range from ordinary household objects to sophisticated industrial tools. With more than 7 billion connected IoT devices today, experts are expecting this number to grow to 10 billion by 2020 and 22 billion by 2025. But how do these devices securely connect with your Enterprise Business Applications?
In this session you will learn fundamentals about IoT, architecture, devices and how we can leverage MuleSoft. Giap Hui Tan, Principal Consultant and IoT enthusiast, will be sharing his knowledge, discuss the architecture with application of IoT and MuleSoft which also comes with API and hardware demo.
Introduction to requirement of microservicesAvik Das
We are talking about microservices. It is a pattern to resolve the complexity of the system those need to process a high amount of data within a short period.
Financial lose may occur on implementation of this pattern for an application of limited complexity in the initial phase. Initial phases have a learning curve to understand the relation and behavior of domain entities.
Small and medium companies lean this during development. Large companies can allocate additional times for documentation and correction on design phases for a reasonable long period. So, sometimes it is good to start with a monolithic architecture and grow with the achievement of the company then migrate to microservices.
How to use kakfa for storing intermediate data and use it as a pub/sub model with each of the Producer/Consumer/Topic configs deeply and the Internals working of it.
Dependable Storage and Computing using Multiple Cloud ProvidersAlysson Bessani
Presentation at the International Industry-Academia Workshop on Cloud Reliability and Resilience. 7-8 November 2016, Berlin, Germany.
Organized by EIT Digital and Huawei GRC, Germany.
Twitter: @CloudRR2016
As customers look to modernize their COBOL applications on z/OS, they are increasingly turning to Java as their language of choice. This modernization doesn’t only apply to the mainframe and we see the same requirement with other programming languages on different platforms. This session looks at the differences between MQ’s MQI and JMS interfaces and how you can go about migrating from the MQI to JMS on any platform.
Building a resilient and scalable solution with IBM MQ on z/OSMatt Leming
This presentation talks about why resilience and scalability is important for messaging apps, and describes how IBM MQ for z/OS queue sharing groups provide the highest levels of resiliency and availability for messaging infrastructure and individual messages
IBM MQ systems route billions of messages around the world each day. This presentation looks at the tools available in MQ for z/OS to allow you to understand where your messages are flowing, and things you can use if the messages aren't going where you expect.
Compares REST APIs and MQ. Then describes the capabilities of MQ's new built in REST messaging API. Finally covers MQ's support for z/OS Connect EE which is an alternative way of accessing MQ using REST.
The enterprise differentiator of mq on zosMatt Leming
IBM MQ is renowned for its enterprise qualities and this presentation will show you how this is taken to the next level
when running on IBM's enterprise platform, z/OS. Learn how its integration with the z/OS platform provides the perfect
solution for your enterprise needs, whether that's through its unique shared queue HA capability or its integration to
the latest z/OS security capabilities.
HHM-2833: Where is My Message?: Using IBM MQ Tools to Work Out What Applicati...Matt Leming
Every MQ infrastructure team member has been asked this question, and most developers who have worked with MQ have asked it:
"Where is my message?" In this session, we look into the tools that MQ provides to find your messages.
We demonstrate how to analyze the MQ recovery log on distributed platforms to find out what happened to your persistent messages,
with the assistance of a new tool. We also look at how to trace the route messages take through your MQ infrastructure, and how to generate
and analyze activity reports showing the behavior of MQ applications.
HHM-3540: The IBM MQ Light API: From Developer Laptop to Enterprise Data Cen...Matt Leming
The IBM MQ Light API makes it simple for developers to create responsive applications that are easy to scale without having to become messaging experts. Increasingly, development teams choose from a wide variety of languages, so the MQ Light API is available in a range of popular languages such as Ruby and Python, with the syntax tailored to fit naturally in each. The same API can be used with MQ Light installed on a laptop, with enterprise MQ queue managers, or in the cloud with the Message Hub service, so you can move seamlessly between these environments. Come and see how this API can make your developers more productive.
HHM-3481: IBM MQ for z/OS: Enhancing Application and Messaging Connectivity ...Matt Leming
Today's business environment is driving re-engineering of business systems using new techniques and architectures. This session will elaborate on the new environments MQ for z/OS is enabling for Java JMS applications, and enhanced interconnectivity capabilities that put MQ for z/OS at the vital heart of a hybrid messaging world.
AI Genie Review: World’s First Open AI WordPress Website CreatorGoogle
AI Genie Review: World’s First Open AI WordPress Website Creator
👉👉 Click Here To Get More Info 👇👇
https://sumonreview.com/ai-genie-review
AI Genie Review: Key Features
✅Creates Limitless Real-Time Unique Content, auto-publishing Posts, Pages & Images directly from Chat GPT & Open AI on WordPress in any Niche
✅First & Only Google Bard Approved Software That Publishes 100% Original, SEO Friendly Content using Open AI
✅Publish Automated Posts and Pages using AI Genie directly on Your website
✅50 DFY Websites Included Without Adding Any Images, Content Or Doing Anything Yourself
✅Integrated Chat GPT Bot gives Instant Answers on Your Website to Visitors
✅Just Enter the title, and your Content for Pages and Posts will be ready on your website
✅Automatically insert visually appealing images into posts based on keywords and titles.
✅Choose the temperature of the content and control its randomness.
✅Control the length of the content to be generated.
✅Never Worry About Paying Huge Money Monthly To Top Content Creation Platforms
✅100% Easy-to-Use, Newbie-Friendly Technology
✅30-Days Money-Back Guarantee
See My Other Reviews Article:
(1) TubeTrivia AI Review: https://sumonreview.com/tubetrivia-ai-review
(2) SocioWave Review: https://sumonreview.com/sociowave-review
(3) AI Partner & Profit Review: https://sumonreview.com/ai-partner-profit-review
(4) AI Ebook Suite Review: https://sumonreview.com/ai-ebook-suite-review
#AIGenieApp #AIGenieBonus #AIGenieBonuses #AIGenieDemo #AIGenieDownload #AIGenieLegit #AIGenieLiveDemo #AIGenieOTO #AIGeniePreview #AIGenieReview #AIGenieReviewandBonus #AIGenieScamorLegit #AIGenieSoftware #AIGenieUpgrades #AIGenieUpsells #HowDoesAlGenie #HowtoBuyAIGenie #HowtoMakeMoneywithAIGenie #MakeMoneyOnline #MakeMoneywithAIGenie
Enterprise Resource Planning System includes various modules that reduce any business's workload. Additionally, it organizes the workflows, which drives towards enhancing productivity. Here are a detailed explanation of the ERP modules. Going through the points will help you understand how the software is changing the work dynamics.
To know more details here: https://blogs.nyggs.com/nyggs/enterprise-resource-planning-erp-system-modules/
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxrickgrimesss22
Discover the essential features to incorporate in your Winzo clone app to boost business growth, enhance user engagement, and drive revenue. Learn how to create a compelling gaming experience that stands out in the competitive market.
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Mind IT Systems
Healthcare providers often struggle with the complexities of chronic conditions and remote patient monitoring, as each patient requires personalized care and ongoing monitoring. Off-the-shelf solutions may not meet these diverse needs, leading to inefficiencies and gaps in care. It’s here, custom healthcare software offers a tailored solution, ensuring improved care and effectiveness.
OpenMetadata Community Meeting - 5th June 2024OpenMetadata
The OpenMetadata Community Meeting was held on June 5th, 2024. In this meeting, we discussed about the data quality capabilities that are integrated with the Incident Manager, providing a complete solution to handle your data observability needs. Watch the end-to-end demo of the data quality features.
* How to run your own data quality framework
* What is the performance impact of running data quality frameworks
* How to run the test cases in your own ETL pipelines
* How the Incident Manager is integrated
* Get notified with alerts when test cases fail
Watch the meeting recording here - https://www.youtube.com/watch?v=UbNOje0kf6E
Artificia Intellicence and XPath Extension FunctionsOctavian Nadolu
The purpose of this presentation is to provide an overview of how you can use AI from XSLT, XQuery, Schematron, or XML Refactoring operations, the potential benefits of using AI, and some of the challenges we face.
Code reviews are vital for ensuring good code quality. They serve as one of our last lines of defense against bugs and subpar code reaching production.
Yet, they often turn into annoying tasks riddled with frustration, hostility, unclear feedback and lack of standards. How can we improve this crucial process?
In this session we will cover:
- The Art of Effective Code Reviews
- Streamlining the Review Process
- Elevating Reviews with Automated Tools
By the end of this presentation, you'll have the knowledge on how to organize and improve your code review proces
Atelier - Innover avec l’IA Générative et les graphes de connaissancesNeo4j
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Allez au-delà du battage médiatique autour de l’IA et découvrez des techniques pratiques pour utiliser l’IA de manière responsable à travers les données de votre organisation. Explorez comment utiliser les graphes de connaissances pour augmenter la précision, la transparence et la capacité d’explication dans les systèmes d’IA générative. Vous partirez avec une expérience pratique combinant les relations entre les données et les LLM pour apporter du contexte spécifique à votre domaine et améliorer votre raisonnement.
Amenez votre ordinateur portable et nous vous guiderons sur la mise en place de votre propre pile d’IA générative, en vous fournissant des exemples pratiques et codés pour démarrer en quelques minutes.
Software Engineering, Software Consulting, Tech Lead, Spring Boot, Spring Cloud, Spring Core, Spring JDBC, Spring Transaction, Spring MVC, OpenShift Cloud Platform, Kafka, REST, SOAP, LLD & HLD.
Do you want Software for your Business? Visit Deuglo
Deuglo has top Software Developers in India. They are experts in software development and help design and create custom Software solutions.
Deuglo follows seven steps methods for delivering their services to their customers. They called it the Software development life cycle process (SDLC).
Requirement — Collecting the Requirements is the first Phase in the SSLC process.
Feasibility Study — after completing the requirement process they move to the design phase.
Design — in this phase, they start designing the software.
Coding — when designing is completed, the developers start coding for the software.
Testing — in this phase when the coding of the software is done the testing team will start testing.
Installation — after completion of testing, the application opens to the live server and launches!
Maintenance — after completing the software development, customers start using the software.
Mobile App Development Company In Noida | Drona InfotechDrona Infotech
Looking for a reliable mobile app development company in Noida? Look no further than Drona Infotech. We specialize in creating customized apps for your business needs.
Visit Us For : https://www.dronainfotech.com/mobile-application-development/
Utilocate offers a comprehensive solution for locate ticket management by automating and streamlining the entire process. By integrating with Geospatial Information Systems (GIS), it provides accurate mapping and visualization of utility locations, enhancing decision-making and reducing the risk of errors. The system's advanced data analytics tools help identify trends, predict potential issues, and optimize resource allocation, making the locate ticket management process smarter and more efficient. Additionally, automated ticket management ensures consistency and reduces human error, while real-time notifications keep all relevant personnel informed and ready to respond promptly.
The system's ability to streamline workflows and automate ticket routing significantly reduces the time taken to process each ticket, making the process faster and more efficient. Mobile access allows field technicians to update ticket information on the go, ensuring that the latest information is always available and accelerating the locate process. Overall, Utilocate not only enhances the efficiency and accuracy of locate ticket management but also improves safety by minimizing the risk of utility damage through precise and timely locates.
E-commerce Application Development Company.pdfHornet Dynamics
Your business can reach new heights with our assistance as we design solutions that are specifically appropriate for your goals and vision. Our eCommerce application solutions can digitally coordinate all retail operations processes to meet the demands of the marketplace while maintaining business continuity.
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteGoogle
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
👉👉 Click Here To Get More Info 👇👇
https://sumonreview.com/ai-pilot-review/
AI Pilot Review: Key Features
✅Deploy AI expert bots in Any Niche With Just A Click
✅With one keyword, generate complete funnels, websites, landing pages, and more.
✅More than 85 AI features are included in the AI pilot.
✅No setup or configuration; use your voice (like Siri) to do whatever you want.
✅You Can Use AI Pilot To Create your version of AI Pilot And Charge People For It…
✅ZERO Manual Work With AI Pilot. Never write, Design, Or Code Again.
✅ZERO Limits On Features Or Usages
✅Use Our AI-powered Traffic To Get Hundreds Of Customers
✅No Complicated Setup: Get Up And Running In 2 Minutes
✅99.99% Up-Time Guaranteed
✅30 Days Money-Back Guarantee
✅ZERO Upfront Cost
See My Other Reviews Article:
(1) TubeTrivia AI Review: https://sumonreview.com/tubetrivia-ai-review
(2) SocioWave Review: https://sumonreview.com/sociowave-review
(3) AI Partner & Profit Review: https://sumonreview.com/ai-partner-profit-review
(4) AI Ebook Suite Review: https://sumonreview.com/ai-ebook-suite-review
May Marketo Masterclass, London MUG May 22 2024.pdfAdele Miller
Can't make Adobe Summit in Vegas? No sweat because the EMEA Marketo Engage Champions are coming to London to share their Summit sessions, insights and more!
This is a MUG with a twist you don't want to miss.
Quarkus Hidden and Forbidden ExtensionsMax Andersen
Quarkus has a vast extension ecosystem and is known for its subsonic and subatomic feature set. Some of these features are not as well known, and some extensions are less talked about, but that does not make them less interesting - quite the opposite.
Come join this talk to see some tips and tricks for using Quarkus and some of the lesser known features, extensions and development techniques.
2. What does going deep
mean?
And when should you, and shouldn’t you do it?
3. Application Application
A good queue is an empty queue
MQ is designed to allow applications to asynchronously communicate, acting as a buffer to smooth workload
peaks and temporary application outages
4. Application Application
A good queue is an empty queue, but application failures happen!
MQ is designed to allow applications to asynchronously communicate, acting as a buffer to smooth workload
peaks and temporary application outages
Failure of a putting application has no real effect on MQ
Failure of a getting application will result in messages building up on its queues until the application restarts and
beings processing again
5. Application
A good queue is an empty queue, but application failures happen!
MQ is designed to allow applications to asynchronously communicate, acting as a buffer to smooth workload
peaks and temporary application outages
Failure of a putting application has no real effect on MQ
Failure of a getting application will result in messages building up on its queues until the application restarts and
beings processing again
If the getting application suffers an extended outage queues can completely fill up, resulting in the putting
application having to have a strategy for how to deal with a full queue
Application
6. Application Application
The aim of this presentation
This presentation aims to explore how deep a queue can go, and things you should bear in mind when that
happens
7. Application
Are deep queues a valid use case for MQ?
MQ is designed to allow applications to asynchronously communicate, acting as a buffer to smooth workload
peaks and temporary application outages
These outages might be minutes, hours or even days, but they are always temporary
We are not advocating using MQ as a database. I.e. keeping data on queues for “ever”. MQ is not optimised for
this use case
Use a database instead!
Application
8. Application Application
Are deep queues the only answer?
No, but they are often the simplest from an application perspective. But as we will see, really deep queues require
some thinking about
Some alternatives include:
• Putting application detecting MQRC_Q_FULL and pausing putting more messages
• Putting application detecting MQRC_Q_FULL and putting new messages to a database, file, another queue
• Starting up a temporary getting application to move the messages off somewhere else
• Failing!
In addition to having to code these solutions, they often come with challenges such as keeping message ordering
etc
9. Life-cycle of a getting application outage
It is up to you to decide the maximum getting application outage duration that you want to tolerate
Some customers are now looking at multiple day outages with 10s of millions of messages a day building up
However that decision needs to be in the bounds of possibility for MQ. There is a limit to the amount of data a
queue manager can store
Time
Depth
Getting
application
outage
Getting
application
restarts
Getting application
processing backlog
Normal running Normal running
Peak queue
depth
Duration of recovery from
outage
Duration of getting
application outage
10. Other important things
• When you decide what the queue size limits are, make sure you enforce them via configuration: MAXDEPTH,
MAXMSGL
• Make sure you monitor for a getting application outage, perhaps via DIS QSTATUS, or by service interval
events, so you can restart the getting application as soon as possible
• Monitor for the queue filling up, e.g. queue depth full, or high events, for similar reasons
• As the queue fills up you might start to see degraded putting application performance, it’s worth
understanding what this might be so you can plan for it
Time
Depth
Getting
application
outage
Getting
application
restarts
Getting application
processing backlog
Normal running Normal running
Peak queue
depth
Duration of recovery from
outage
Duration of getting
application outage
11. Other important things
• When the getting application starts up it is going to need to catch up. How fast can it do this? E.g. with a 2 day
outage and a getting application that can get twice as fast as data being put, it will take a total of 4 days from
the start of the application outage to get back to normal
• Do you need to allow for a getting application outage occurring during this recovery window?
• Can the messages expire? And are you relying on that to keep the queue depth low?
• Be particularly aware of potential getting application inefficiencies. For example getting using a message
selector is relatively slow, this will be particularly noticeable on a deep queue
• Make sure you test the deep queue scenario, including recovery, to make sure everything works in the
timeframes you expect!
Time
Depth
Getting
application
outage
Getting
application
restarts
Getting application
processing backlog
Normal running Normal running
Duration of recovery from
outage
Duration of getting
application outage
Peak queue
depth
12. So, how deep can I go?
Approximate number of 1 KB
messages
MQ on z/OS private queue 16.8 million
MQ on z/OS shared queue all in CF 613.6 million* **
MQ on z/OS shared queue on
SMDS
1.4 billion* **
MQ on distributed 68.4 billion*
We will see where these numbers come from later
* We haven’t tested to the end of these limits
**Going this deep will mean you can’t recover in the case of a structure failure. So non-
persistent messages only!
14. Private queues – buffer pools and page sets
Messages on private queues are stored in memory in buffer pools and might be moved into a page set on disk
Data in buffer pools and page sets is accessed in 4KB pages. A single page might contain the queue spine,
message meta data, message data for at most one message, or space usage (space map page)
A private queue is associated with a single buffer pool / page set pair so the size of a page set is the constraining
factor for private queues. A page set can be a maximum of 64 GB in size, which allows for ~16.8 million 1KB
messages. This is a rough calculation, ignoring space maps, spine pages, etc
To get a rough idea for the maximum number of messages of a given size that can be stored in a page set, round
up the size of the message to a multiple of 4 KB and divide 64 GB by that number
Buffer pool
Page set
15. Private queues – recommendations
If you want to allow a private queue to deal with an extensive getting application outage consider putting them in
their own page set and ideally their own buffer pool. This will allow for accurate sizing. You don’t want two very
deep queues on the same page set at the same time
There is obviously a limit to how much separation you can have here given that there can be at most 100 page
sets and buffer pools in a single z/OS queue manager
Buffer pool
Page set
16. Indexing your queues
On z/OS you can specify the INDXTYPE attribute on local queues to tell the queue manager how to index the
queue: no index; by message ID; by correlation ID; by group ID
An index makes no difference if just getting the next available message off a queue, but makes a significant
difference otherwise, especially if the queue is deep
INDXTYPE only supports a single value, so choose it based off the most common approach for getting messages
from the queue.
However for private queues you can still use any approach regardless of the index, but it will be less efficient. The
queue manager will tell you if you should consider indexing your queues
MessageID=A MessageID=B MessageID=C
17. Indexing your queues
The index for private queues is maintained in the queue manager in 64 bit storage
Each message on an indexed queue uses 136 bytes to maintain the index. 10 million messages therefore uses
1360MB of 64 bit storage
So if you are going to have deep private queues which are indexed make sure you account for it in the
MEMLIMIT attribute of your *MSTR JCL
MessageID=A MessageID=B MessageID=C
19. Shared queues – storage
Shared queues are stored in a coupling facility (CF)
Messages may be entirely stored in the CF if the message size < 63KB, or a pointer to the message can be
stored in the CF and the remainder of the message offloaded to Db2 (not recommended, and not discussed
further) or in shared message data sets (SMDS)
The maximum supported CF structure size is 1TB. This is all real storage, so is relatively expensive
If SMDS is used each queue manager gets its own SMDS data set for the structure. The maximum size of a
single SMDS is 16 TB
pMessage
pMessage
pMessage
20. Shared queues – small messages
Shared queues perform best when the message is held entirely in the CF as that minimises both code path
length and removes the need to interact with DASD
For messages which are < 63KB in size the best approach is therefore to keep them in the CF and only offload
them to SMDS when the queue starts getting deep during a getting application outage
This gives the best of both worlds, fast message access normally, but the ability to store lots of messages in the
worst case
If you do decide to keep small messages in the CF and not to offload, the maximum number of 1KB messages
that can be stored in a single structure is approximately 613.6 million, based on the max CF size of 1TB
pMessage
pMessage
pMessage
21. Shared queues – offload rules
Each MQ CFSTRUCT definition has three offload rules associated with it
Each rule specifies the maximum size message that can be stored in in the structure, when the structure is over a
given percentage full
The default rules assume that no messages < 63KB get offloaded until the structure is very full
These defaults are not likely to be good for a getting application outage where you want to maximize the number
of messages you can store and minimise the amount of CF used. Instead you might want to start offloading all
messages when the structure is say 10% full, as shown in the example on the right hand size
DEFINE CFSTRUCT(SHALLOWSTRUCT)
CFLEVEL(5) …
OFFLOAD(SMDS)
OFFLD1TH(70) OFFLD1SZ(32K)
OFFLD2TH(80) OFFLD1SZ(4K)
OFFLD2TH(90) OFFLD1SZ(0K)
DEFINE CFSTRUCT(DEEPSTRUCT)
CFLEVEL(5) …
OFFLOAD(SMDS)
OFFLD1TH(10) OFFLD1SZ(0K)
OFFLD2TH(10) OFFLD1SZ(0K)
OFFLD2TH(10) OFFLD1SZ(0K)
22. Shared queues – offloaded messages
Each offloaded message requires a message pointer in the CF. The CF is used to maintain queueing semantics,
the pointer allows the messages to be located in SMDS
Offloaded messages require you to consider both the CF structure size and the space used in SMDS
At most a structure can contain 1.4 billion message pointers, you then need to consider how much space those
messages will occupy on SMDS
A single SMDS data set can be up to 16TB in size. This can easily take 1.4 billion 1KB messages, but only 16
million 1MB messages
pMessage
pMessage
pMessage
a message
pointer
1 entry = 256 bytes
2 elements = 2 * 256 bytes
Total size = 768 bytes
pMessage
23. Shared queues – back ups
CF structures are in memory structures. In the rare cases where they fail, they need to be rebuilt
With MQ this is done by periodically taking back ups of the structure. If a structure failure occurs the structure can
be recovered from the back up plus the logs of the queue managers that have accessed the structure since the
failure
Deep queues have important implications for this process:
• Size and number of active and archive logs
• Backup time
• Backup frequency
• Recovery time
BACKUP
CFSTRUCT(DEEPSTRUCT)
Active and
archive logs
RECOVER
CFSTRUCT(DEEPSTRUCT)
24. Shared queues – back ups – archive and active logs
Backing up a structure involves writing the structure contents and the contents of the SMDS to a queue
manager’s active logs. Over time the active logs then get written to the archive logs
Therefore, as shown above, the back up might be only in the active logs, in a mixture of active and archive logs,
or just archive logs
As shown above the contents of the active logs normally mainly overlap the contents of the archive logs
Therefore the limiting factor for a back up is the number and size of the archive logs. The biggest backup you can
have is ~ 4096 GB. NB this is smaller than the maximum size of an SMDS!
Current
active log (0)
Previous
active log (-1)
Archive log
0
Archiving
in process
Previous
active log (-2)
Archive log
-1
Archiving
complete
=
Previous
active log (-3)
Archive log
-2
Archiving
complete
=
Archive log
-3
Data only
in archive
Archive log
-4
Data only
in archive
Up to 310 * 4 GB
active logs
Up to 1000 * 4 GB
archive logs
25. Shared queues – back ups – archive and active logs
In order to recover a backup it needs to be accessible to the queue managers, so you need to make sure that the
start of the backup remains in the available archive logs for that queue manager, otherwise you can’t recover it!
You don’t just need one backup, you need to be able to safely transition from one backup to the next one, should
anything fail while the backup is occurring. The green and yellow “usable backups” above illustrate this
The conclusion of all this is that you really don’t want a backup to be more than about a quarter of the available
archive logs of a queue manager, i.e. < 1 TB at the most
For this extreme case you should also be considering a separate queue manager just to perform the backups.
This removes the risks of application messages pushing the backup from the archive logs, and also means the
back up process can’t affect applications
Archive log 0
(newest available)
Archive log -999
(oldest available)
Usable backup Unusable backup
Messages since
backup
RECOVER CFSTRUCT works RECOVER CFSTRUCT fails
Usable backup
Messages since
backup
Messages since
backup
26. Shared queues – back ups – time and frequency
Backing up a structure takes time. The best backup is one that contains minimal data, as that will be fast. IBM
recommends taking a backup of every structure at least every hour to minimise the amount of time recovery will
take
Care is needed here with deep queues!
Backing up a large structure will take a long time, and as discussed it will take a lot of log space
If your getting application outage can be several days, continuing with your normal backup strategy while the
structure contains lots and lots of messages might not be a good idea
BACKUP
CFSTRUCT(DEEPSTRUCT)
Active and
archive logs
RECOVER
CFSTRUCT(DEEPSTRUCT)
27. Shared queues – back ups – time and frequency
It is worth considering adjusting your back up strategy during extended getting application outages
1) During normal running back up every hour or so (whatever is normal for your site)
2) When the queue starts to get very deep, pause backups, or make them less frequent, until the getting
application restarts and the queue depth has reduced
This approach minimises the repeated costs of taking a large back up both in terms of CPU and log usage.
However it does mean that any recovery will rely on reading a potentially large amount of log data across the
queue managers in your group. Therefore you need to accurately size the active and archive logs across your
group too, and consider how long recovery might take
A good time to do the pause is when the size of the backup starts to become multiple times the amount of data
that would normally get written between backups
Time
Depth
Regular backups
Getting
application
outage
Getting
application
restarts
Regular backups
resume
Pause backups
28. Shared queues – back ups – recovery
Frequent back ups are recommended to minimise the amount of time it takes to recover from a back up
Recovery involves reading the logs in the backup and scanning the logs of all queue managers that used the
structure since the point of the backup. This results in reading the active / archive logs backwards which is
typically slower than reading them forwards
With deep queues this could take a significant period of time. But it does require multiple failures all at the same
time (getting application outage for a significant period of time, and then subsequent CF structure failure)
It might be worth considering CF duplexing to reduce the chance of a structure failure, but bear in mind this will
result in increased CF CPU utilization, and more CF storage being required
Time
Depth
Regular backups
Getting
application
outage
Getting
application
restarts
Structure fails here
Pause backups
30. Queue files
Distributed takes a different approach to z/OS
Each queue gets its own in memory set of buffers for temporarily staging messages. A different set of buffers are
used for persistent and non-persistent messages
These buffers can be tuned, up to a maximum size of 100MB, they default to 128KB for non-persistent messages
and 256 KB for persistent ones. These settings aren’t as fully externalized as buffer pools on z/OS. But similar
performance considerations apply
The buffers asynchronously get written to the queue file, and there is one queue file per queue
Q1
Non-persistent
message buffers
Persistent message
buffers
Queue file
Q2
Non-persistent
message buffers
Persistent message
buffers
Queue file
Q3
Non-persistent
message buffers
Persistent message
buffers
Queue file
31. Queue files
Queue file size is the ultimate upper limit for queue depth on distributed. Default max size is ~2TB
From 9.2.0 adjusting this is simple as shown above. The maximum value is ~255TB
Messages are stored on queue files in blocks. If the queue file < 2TB in size the block size is 512 bytes
Above 2 TB the block size is 4KB, which means a 1KB message will use a whole block
Maximum number of 1KB messages on a single queue is therefore ~68.4 billion
DEFINE QL(NEWQUEUE) MAXFSIZE(500)
ALTER QL(EXISTINGQUEUE) MAXFSIZE(1000)
Create queue with maximum file size of 500MB
Alter existing queue to have a max size of
1000MB
DIS QSTATUS(NEWQUEUE) CURMAXFS
CURFSIZE
Queue is using 39 MB of its 500MB
QUEUE(NEWQUEUE)
CURFSIZE(39) CURMAXFS(500)
32. Logging
Distributed supports both linear and circular logging
Linear logging is of interest with deep queues as it allows you to periodically backup queue files onto the log, i.e.
create a media image
As with shared queues, on distributed you need to think carefully as to when you create a media image of a very
large queue file as it will consume a lot of log space, which you will have to maintain
Queue managers can be configured to create media images automatically based on time, or amount of log usage
since the last image. If you use this you might want to switch it off for long getting application outages
Depth
Regular media images
Getting
application
outage
Getting
application
restarts
Regular media images resume
Last media image
34. Recommended reading
For z/OS much of this information, along with some example values, is in the capacity and planning guide. I
strongly recommend reading it
http://ibm-messaging.github.io/mqperf/mp16.pdf
For distributed, take a look at
https://ibm-messaging.github.io/mqperf/MQ_Performance_Best_Practices_v1.0.1.pdf