The Evolution History of RoP(RocketMQ-on-Pulsar) - Pulsar Summit Asia 2021StreamNative
?
Recently, the Tencent Cloud MQ team open sourced the 0.1.0 version of RoP(RocketMQ on Pulsar). However, many problems occurred during production practices, such as message ID overflow, incomplete message consumption, unbalanced load on consumption model, and invalid consumption requests. We made a series of optimizations for the above problems in RoP 0.2.0, and improved the overall performance and stability of the current RoP version.
In this session, we will introduce the RoP MessageID refactoring, design and implementation of RoP delayed message and routing protocol, RoP ACL design and implementation, RoP performance optimization and the application of RoP in Tencent Cloud.
Key takeaways:
1. Common design and implementation ideas for delayed messages in message queues
2. Implementation ideas and practical applications of Apache Pulsar Broker Entry metadata
3. Different ideas for the realization of message routing between Apache RocketMQ and Apache Pulsar
4. The similarities, differences and combination of authentication implementation schemas between Apache Pulsar and Apache RocketMQ.
Improvements Made in KoP 2.9.0 - Pulsar Summit Asia 2021StreamNative
?
KoP(Kafka on Pulsar) is a protocol handler that provides a convenient method for Kafka clients to connect to Pulsar without any change.
Since the first GA version (2.8.0) of KoP (Kafka on Pulsar) was released several months ago, there has been a lot of significant bug fixes and enhancements, such as the support for authorization, and lower version Kafka client. This talk will walk through the basics of KoP, then introduce the improvements in the 2.9.0 version.
The document discusses ReactiveX (RxJava) and the Observable pattern. It begins with an overview of Observables which emit streams of data and how subscribers observe and react to those streams. It then covers various RxJava operators like map, flatMap, and compose that allow transforming and combining Observable streams. The document also discusses threading with RxJava using subscribeOn and observeOn and how to structure applications using an MVVM architecture with RxJava.
This document provides a summary of dependency injection and Dagger 2 in Android applications. It explains that dependency injection separates configuration from usage to improve maintainability, testability and reduce coupling. It describes how Dagger generates code to inject dependencies using annotations and component and module definitions. Modules provide dependencies while components inject them into classes. Scopes like per activity are supported. Overall Dagger improves architecture by managing object creation and dependencies through compile time verification rather than runtime errors.
The document introduces RxJava, a library for composing asynchronous and event-based programs using observable sequences for the Java Virtual Machine. It discusses the problems with asynchronous programming, provides an overview of reactive programming and reactive extensions, and describes RxJava's core types like Observable and Observer. It also covers key concepts like operators, schedulers, subjects, and dealing with backpressure in RxJava.
Java 8 Stream API and RxJava ComparisonJosé Paumard
?
The slides of my JavaOne talk: Java 8 Stream API and RxJava Comparison: Patterns and Performances.
The spliterators patterns can be found here: https://github.com/JosePaumard/jdk8-spliterators.
This document provides instructions for getting started with Docker and Docker Compose. It explains how to install Docker and Docker Compose, basic Docker commands like running containers and viewing logs, mapping ports, and using Docker Compose to define and run multi-container applications.
The document discusses ReactiveX (RxJava) and the Observable pattern. It begins with an overview of Observables which emit streams of data and how subscribers observe and react to those streams. It then covers various RxJava operators like map, flatMap, and compose that allow transforming and combining Observable streams. The document also discusses threading with RxJava using subscribeOn and observeOn and how to structure applications using an MVVM architecture with RxJava.
This document provides a summary of dependency injection and Dagger 2 in Android applications. It explains that dependency injection separates configuration from usage to improve maintainability, testability and reduce coupling. It describes how Dagger generates code to inject dependencies using annotations and component and module definitions. Modules provide dependencies while components inject them into classes. Scopes like per activity are supported. Overall Dagger improves architecture by managing object creation and dependencies through compile time verification rather than runtime errors.
The document introduces RxJava, a library for composing asynchronous and event-based programs using observable sequences for the Java Virtual Machine. It discusses the problems with asynchronous programming, provides an overview of reactive programming and reactive extensions, and describes RxJava's core types like Observable and Observer. It also covers key concepts like operators, schedulers, subjects, and dealing with backpressure in RxJava.
Java 8 Stream API and RxJava ComparisonJosé Paumard
?
The slides of my JavaOne talk: Java 8 Stream API and RxJava Comparison: Patterns and Performances.
The spliterators patterns can be found here: https://github.com/JosePaumard/jdk8-spliterators.
This document provides instructions for getting started with Docker and Docker Compose. It explains how to install Docker and Docker Compose, basic Docker commands like running containers and viewing logs, mapping ports, and using Docker Compose to define and run multi-container applications.
24. Rx Powered Libs
? RxLifecycle - Lifecycle handling APIs for Android apps using RxJava
? RxBinding - RxJava binding APIs for Android's UI widgets.
? SqlBrite - A lightweight wrapper around SQLiteOpenHelper and ContentResolver which introduces reactive stream semantics to queries.
? Android-ReactiveLocation - Library that wraps location play services API boilerplate with a reactive friendly API.
? rx-preferences - Reactive SharedPreferences for Android
? RxFit - Reactive Fitness API Library for Android
? RxWear - Reactive Wearable API Library for Android
? RxPermissions - Android runtime permissions powered by RxJava
? RxNoti?cation - Easy way to register, remove and manage noti?cations using RxJava
? RxClipboard - RxJava binding APIs for Android clipboard.
Source: https://github.com/ReactiveX/RxAndroid/wiki