Benefits
-
Lightweight message queues
SMQ provides simple and lightweight message queues and focuses on building core messaging capabilities. The service offers a lightweight queue/topic resource model that is simple and easy to use, without complex model concepts. As a platform-independent service, it provides a lightweight HTTP RESTful API with native support for the HTTP protocol. In addition, it provides SDKs in different languages, including C++, Java, C#, Python, PHP, Go (third-party), and Node.js (third-party).
-
Serverless
SMQ is a standard Serverless service designed to handle nearly unlimited concurrent requests without the need to perceive or configure any cluster information in advance. It is ready to use out of the box and adopts the pay-as-you-go billing method. You do not need to reserve any instance resources, and you only pay for the actual usage.
-
Security and stability
In terms of stability, SMQ adopts the triplicate storage mechanism to ensure data redundancy, with a reliability of 99.99999999% and a service availability of up to 99.95%. It provides the "Always Writable" capability and multiple-layer security and anti-DDoS protection, and features multi-tenant isolation with separate namespaces for different users. The service also fully supports Resource Access Management (RAM) mechanisms and resources such as Alibaba Cloud accounts, RAM users, and temporary AccessKey pairs, and allows secure access over HTTPS and virtual private clouds (VPCs).
-
Support for advanced features
SMQ supports various advanced features, such as settings of the message delay, scheduled messages, message size, message lifecycle, tag filtering, and dead-letter queues. The service provides a comprehensive messaging solution that helps developers freely transmit data and notification messages between the distributed components of their applications. This enables the construction of a loosely coupled system.
Features
Queue-based messaging model
Configurable diverse queue attributes
SMQ provides diverse queue attributes that you can customize based on your business requirements in different scenarios. Multiple queue modes, such as standard queues and delayed queues, are supported.
Concurrent access requests
An SMQ queue can process concurrent access requests from multiple producers and consumers. You can easily customize the limit of concurrent requests based on your business requirements. After a message is pulled from a queue, the message cannot be pulled again within a specific period.
Guaranteed message delivery
SMQ ensures that a message in a queue can be consumed at least once during the validity period of the message. Resources are isolated among users to ensure that only authorized entities can retrieve your messages in SMQ queues.
Topic-based messaging model
Notification messages
SMQ sends messages to the specified endpoints to prevent unnecessary polling and resource consumption.
Broadcast messages
A notification message can be subscribed to and consumed by multiple subscribers.
Multiple subscription methods
Multiple subscription methods are supported, such as HTTP/HTTPS, email, SMS, and mobile devices.
Guaranteed message delivery
Messages published to a topic are automatically pushed to subscriber clients during the validity period of the messages based on the specified policies and formats.
Message filtering
The messages of the same topic can be pushed to different subscribers based on tags.
Scenarios
Decoupled Transaction System
When an order is placed in the core transaction system of Taobao and Tmall primary sites, the order data is used by hundreds of downstream business systems, including logistics, shopping carts, credits, Alimama, and stream computing analytics. The overall business system is large and complex. In this case, a distributed and decoupled system is required to ensure the business continuity of primary sites.
Benefits
-
Highly available and loosely coupled architecture
Designs the loosely coupled upstream and downstream business systems to ensure the normal running of the core transaction system even if the downstream subsystems such as logistics and credits are unavailable or down.
-
Flexible adaption to the growing business
Adds new business systems without affecting the basic technical architecture or the normal running of other systems.
Peak-load Shifting for Large-volume Traffic
Large-scale activities, such as flash sales, red envelope snatching, and enterprise opening ceremonies, may cause traffic spikes and a large number of request failures. In this case, SMQ prevents your system from being overloaded or crashed and improves user experience.
Benefits
-
Processing of traffic spikes
Ensures the availability of the system while processing traffic spikes and quickly and effectively responds to requests based on high-performance message processing capabilities. This improves user experience.
-
Accumulation of large numbers of messages
Ensures the smooth and stable running of the downstream business within the security threshold. This protects the downstream business against ultra-large-volume traffic.
-
Reasonable cost control
Controls the cluster scale of the downstream business system by using the peak-load shifting method to reduce costs.
Automatic Closure of Unpaid Orders
You can process unpaid orders and trigger scheduled tasks based on the underlying business logic. You can create scheduled messages by using SMQ queues. After the order of a product is placed, the product inventory is decreased by one, and a scheduled message about the payment check task is sent to an SMQ queue. The scheduled message is visible and consumed by the backend service after 30 minutes. You can also use SMQ to implement real-time notification. In this case, the backend service checks the payment status of the order. If the order is still unpaid, the order is rolled back and the product inventory is increased by one.
Benefits
-
Scheduled message
Checks whether an order that is created in the e-commerce platform is paid within a specific period of time, or whether an order needs to be closed. This creates an interval between message production and message consumption.
-
Scheduled notifications
Triggers scheduled tasks by using messages. In preceding scenarios, SMQ automatically sends notifications to users who do not complete the payment.
User Information Registration
SMQ converts a form-based synchronous registration system to an asynchronous one to implement synchronous notification. After a user registers, the system must send an email notification that indicates successful registration, credits for new users, and coupons to the user. SMQ increases the response speed of the primary process and user registration process and asynchronously handles secondary processes or unimportant tasks such as sending notifications in a centralized manner. These tasks can be merged and handled at a time.
Benefits
-
Increased efficiency, concurrency, and throughput of the system and reduced number of requests
Sends notifications to a callback URL if the backend completes a task. This reduces a large number of unnecessary polling requests between users, the web frontend, and the backend service.
-
Operation notifications
Notifications are frequently used in business operations. You can send notifications to users at a specific point in time to remind users of new activities, interesting news, and coupon distribution. This helps you enhance customer stickiness.
Online Lucky Drawing
If a user accesses the frontend cluster of the lucky drawing system, the backend management cluster randomly generates the information about the prize and adds the information to the prize queue. The frontend cluster reads the prize information from the prize queue and checks whether the user wins the prize. If the request of the user is hit, the winner information is sent to the winner information queue. The backend cluster reads the winner information from the winner information queue and sends notifications to the notification topic. Then, the notifications are pushed to the user by using SMS messages or emails, and the real-time statistics system uses HTTP callbacks for data collection.
Benefits
-
Loosely coupled frontend lucky drawing system and backend prize system
Implements the online lucky drawing and the random generation of prizes by using the prize queue.
-
Determination, synchronization, and notification of the winner
Pushes the user event in real time based on queues, topics and messages to ensure the timeliness of the winner information.
Task System Design
SMQ allows you to design a task system for HTTP callbacks. When a user submits a task, a task execution message is sent to the task queue. The message is consumed by the task execution cluster and a computing task is asynchronously executed. After the computing tasks is complete, a real-time notification is sent to the notification topic. Then, the topic calls back HTTP requests to the task management server and sends notifications to the user by using SMS messages or emails.
Benefits
-
Prevention of traffic spikes caused by concurrent requests and shortened response time of venue web pages
During Double 11, the price changes of thousands of products in venues must be perceived in real time. Databases are under huge access workloads caused by a large number of concurrent requests.
-
Bandwidth bottleneck prevention and real-time user notifications of product data
Data Exchange across Internal Networks
SMQ allows you to exchange data between isolated intranets over the Internet.
Benefits
-
Data synchronization and exchange
Implements the data synchronization and exchange between Enterprise A and Enterprise B without the need to connect or expose the internal networks of two enterprises.
-
Flexible access policies
Supports RAM and Security Token Service (STS). You can configure a flexible Internet access policy for your queues.
Video System Architecture
SMQ decouples the upload and processing of videos. After a video file is uploaded to Object Storage Service (OSS), an upload completion event is sent to the task queue and read by ApsaraVideo Media Processing (MPS). MPS pulls the video file based on time messages and transcodes the video file. The transcoded video file is returned to OSS, and a message is sent to the notification topic. Then, the data on the video website is updated, and the video is available. CDN accelerates the transmission of the transcoded video file to provide a better experience for users.
Benefits
-
Loosely coupled architecture improving the capabilities of processing concurrent requests
-
Ordered running of multiple tasks ensuring the smooth process of your business
Upgraded Support For You
1 on 1 Presale Consultation, 24/7 Technical Support, Faster Response, and More Free Tickets.