This topic compares ApsaraMQ for Kafka and open source Apache Kafka in terms of stability, kernel capabilities, governance capabilities, and user habits.
Stability
Item | ApsaraMQ for Kafka | Apache Kafka |
Disk usage | Earlier data is deleted when no free disk space is available. | Breakdowns occur when no free disk space is available. |
Thread pool isolation | Data writes are normal when cold data is read. | Threads are blocked when cold data is read. This causes frequent data write failures. |
Partition size | Data writes are stable even when the number of partitions is over 10,000. | Jitters occur frequently when the number of partitions exceeds 1,000. |
Inspection system | Deadlocks and breakdowns can be automatically detected and fixed. | None. |
Bug fixing | Bugs can be detected and fixed at the earliest opportunity. | Bugs cannot be fixed until the community releases new versions. This takes a long time. |
Kernel capabilities
Item | ApsaraMQ for Kafka | Apache Kafka |
Scalability | Scaling is completed in seconds without affecting the business. | Scaling is completed in hours. Cluster performance is affected by increased replication traffic. |
Storage | The highly reliable cloud storage is used by Professional Edition instances. This helps you save a large amount of storage space. | For availability and reliability reasons, data is stored in three replicas. This imposes a heavy load on storage. |
Governance capabilities
Item | ApsaraMQ for Kafka | Apache Kafka |
Version upgrade | One-click upgrades are supported. | Manual upgrades that are prone to errors are supported. |
Metric curve | Complete metric curves are provided to facilitate traffic tracing and troubleshooting. | Only real-time metrics are displayed. Historical data is difficult to access. |
Message accumulation alert | Alerts on message accumulation can be triggered for troubleshooting at the earliest opportunity. | None. |
Subscription | Complete subscription information is provided. | Brief subscription information is provided. |
Partition status | Complete partition status diagrams are provided. | Brief partition status diagrams are provided. |
Message sending | You can send messages in the ApsaraMQ for Kafka console. | You can send messages only by running commands on the CLI. This results in high costs. |
Message query | You can query messages by point in time or offset in the ApsaraMQ for Kafka console. | You can consume messages by running commands on the CLI. However, you cannot query messages by point in time or offset. |
User habits
ApsaraMQ for Kafka uses the same client protocols as open source Apache Kafka. Therefore, you can seamlessly migrate applications and code that are developed by using open source Apache Kafka to ApsaraMQ for Kafka. To enrich the capabilities in message management and governance, ApsaraMQ for Kafka imposes the following limits on user habits.
Item | ApsaraMQ for Kafka | Apache Kafka | Reason |
Topic | |||
Creation method |
|
| ApsaraMQ for Kafka allows you to manage topics in the ApsaraMQ for Kafka console or by calling API operations to implement security management of features such as fine-grained permission control and resource operation audit. Note
|
Naming convention |
| The name of a topic must be 3 to 249 characters in length and can contain letters, digits, underscores (_), hyphens (-), and periods (.). | To prevent issues caused by limits on the length of resource names in other systems, ApsaraMQ for Kafka does not allow topic names to be excessively long. |
Deletion method |
|
| ApsaraMQ for Kafka allows you to manage topics in the ApsaraMQ for Kafka console or by calling API operations to implement security management of features such as fine-grained permission control and resource operation audit. Note ApsaraMQ for Kafka does not allow you to delete topics by using Kafka CLI or Kafka Manager. |
Group | |||
Creation method |
| Automatic topic creation on an Apache Kafka broker | ApsaraMQ for Kafka allows you to manage groups in the ApsaraMQ for Kafka console and by calling API operations to implement features such as fine-grained permission control, resource operation audit, and the alerting and monitoring of message accumulation. Important For information about how to flexibly create groups, see Use the flexible group creation feature. After you enable the flexible group creation feature, you can no longer use features such as fine-grained permission control, resource operation audit, or monitoring and alerting of message accumulation. |
Naming convention |
| The name of a group must be 3 to 249 characters in length and can contain letters, digits, underscores (_), hyphens (-), and periods (.). | To prevent issues caused by limits on the length of resource names in other systems, ApsaraMQ for Kafka does not allow group names to be excessively long. |
Deletion method |
| Kafka CLI | ApsaraMQ for Kafka allows you to manage groups in the ApsaraMQ for Kafka console or by calling API operations to implement security management of features such as fine-grained permission control and resource operation audit. Note ApsaraMQ for Kafka does not allow you to delete groups by using Kafka CLI. |