Propan
ApacheKafka
Propan | ApacheKafka | |
---|---|---|
16 | 104 | |
466 | 28 | |
- | - | |
8.8 | 0.0 | |
about 1 month ago | 5 months ago | |
Python | ||
MIT License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Propan
-
FastStream: Python's framework for Efficient Message Queue Handling
Later, we discovered Propan, a library created by Nikita Pastukhov, which solved similar problems but for RabbitMQ. Recognizing the potential for collaboration, we joined forces with Nikita to build a unified library that could work seamlessly with both Kafka and RabbitMQ. And that's how FastStream came to be—a solution born out of the need for simplicity and efficiency in microservices development.
-
How we deprecated two successful projects and joined forces to create an even more successful one
The next step was to figure out what to do next. We posted questions on a few relevant subreddits and got quite a few feature requests, mostly around supporting other protocols, encoding schemas etc. But, we also got a message from a developer of a similar framework Propan that was released at about the same time and was gaining quite a traction in the RabbitMQ community. That developer was Nikita Pastukhov and he made an intriguing proposal: let's join our efforts and create one framework with the best features of both. Both projects were growing at roughly the same speed but targeted different communities. So the potential for double growth was there. After a quick consideration, we realized there was not much to lose and there was a lot to gain. Of course, we would lose absolute control over the project but losing control to the community is the only way for an open-source project to succeed. On the positive side, we would gain a very skilled maintainer who single-handedly created a similar framework all by himself. The frameworks were conceptually very similar so we concluded there would not be much friction of ideas and we should be able to reach consensus on the most important design issues.
-
Introducing FastStream: the easiest way to write microservices for Apache Kafka and RabbitMQ in Python
FastStream simplifies the process of writing producers and consumers for message queues, handling all the parsing, networking and documentation generation automatically. It is a new package based on the ideas and experiences gained from FastKafka and Propan. By joining our forces, we picked up the best from both packages and created a unified way to write services capable of processing streamed data regardless of the underlying protocol. We'll continue to maintain both packages, but new development will be in this project.
-
FastStream: the easiest way to add Kafka and RabbitMQ support to FastAPI services
FastStream (https://github.com/airtai/faststream) is a new Python framework, born from Propan and FastKafka teams' collaboration (both are deprecated now). It extremely simplifies event-driven system development, handling all the parsing, networking, and documentation generation automatically. Now FastStream supports RabbitMQ and Kafka, but supported brokers are constantly growing (wait for NATS and Redis a bit). FastStream itself is a really great tool to build event-driven services. Also, it has a native FastAPI integration. Just create a StreamRouter (very close to APIRouter) and register event handlers the same with the regular HTTP-endpoints way:
-
Propan – Python Framework for building messaging services has a big update
Hello everyone!
Two months ago I told you about Propan - the Python framework to build messaging services based on Any Message Broker. So, there were a lot of changes for this time and I want you to tell me again about them.
At first, we added Kafka, Redis Pub/Sub, SQS, and NatsJS support (to RabbitMQ and regular NATS). At now you can interact with these brokers via the same Propan interfaces.
Also, we added an AsyncAPI schema autogeneration, so you already have documentation for your services if you are using Propan.
And the last (but not least) - PydanticV2 support! You can use V1 and V2 both, but V2 is much faster - it is a preferred way to write new services.
By the way: we have a new Propan major version draft, so if you want to participate in the discussion and suggest a new feature, it is time to join our discord and tell about it!
Propan: https://github.com/Lancetnik/Propan
- Looking for Python contributors to a new Messaging Framework
-
Help wanted: support for PR
Also it is important for my own Propan package implementing some custom routers.
- FLaNK Stack Weekly 29 may 2023
-
Propan is a best way to interact SQS from Python
As you may know, I am developing Propan framework to interact with various message brokers single way. When I published a post about the existence of the framework, users immediately asked "When to expect SQS support?". Now!
-
Propan 0.1.2 - new way to interact with Kafka from Python
A couple of days ago I wrote about the release of my framework for working with various message brokers - Propan!
ApacheKafka
- PubNubとIFTTTによるSMS通知システム
- PubNub 및 IFTTT를 사용한 SMS 알림 시스템
- Système de notification par SMS avec PubNub et IFTTT
-
Wie man Ereignisse von PubNub zu RabbitMQ streamt
Senden an Kafka (d. h. Senden der Daten an Apache Kafka)
-
Choosing Between a Streaming Database and a Stream Processing Framework in Python
Stream-processing platforms such as Apache Kafka, Apache Pulsar, or Redpanda are specifically engineered to foster event-driven communication in a distributed system and they can be a great choice for developing loosely coupled applications. Stream processing platforms analyze data in motion, offering near-zero latency advantages. For example, consider an alert system for monitoring factory equipment. If a machine's temperature exceeds a certain threshold, a streaming platform can instantly trigger an alert and engineers do timely maintenance.
-
How to Use Reductstore as a Data Sink for Kafka
Apache Kafka is a distributed streaming platform capable of handling high throughput of data, while ReductStore is a databases for unstructured data optimized for storing and querying along time.
-
🦿🛴Smarcity garbage reporting automation w/ ollama
*Push data *(original source image, GPS, timestamp) in a common place (Apache Kafka,...)
-
How to Build & Deploy Scalable Microservices with NodeJS, TypeScript and Docker || A Comprehesive Guide
RabbitMQ comes with administrative tools to manage user permissions and broker security and is perfect for low latency message delivery and complex routing. In comparison, Apache Kafka architecture provides secure event streams with Transport Layer Security(TLS) and is best suited for big data use cases requiring the best throughput.
-
Easy Guide to Integrating Kafka: Practical Solutions for Managing Blob Data
Apache Kafka is a distributed streaming platform to share data between applications and services in real-time.
-
Go concurrency simplified. Part 4: Post office as a data pipeline
also, this knowledge applies to learning more about data engineering, as this field of software engineering relies heavily on the event-driven approach via tools like Spark, Flink, Kafka, etc.
What are some alternatives?
DB-GPT - AI Native Data App Development framework with AWEL(Agentic Workflow Expression Language) and Agents
dramatiq - A fast and reliable background task processing library for Python 3.
faststream - FastStream is a powerful and easy-to-use Python framework for building asynchronous services interacting with event streams such as Apache Kafka, RabbitMQ, NATS and Redis.
outbox-inbox-patterns - Repository to support the article "Building a Knowledge Base Service With Neo4j, Kafka, and the Outbox Pattern"
kafka-native - Kafka broker compiled to native using Quarkus and GraalVM.
Jenkins - Jenkins automation server
fastgron - High-performance JSON to GRON (greppable, flattened JSON) converter
RabbitMQ - Open source RabbitMQ: core server and tier 1 (built-in) plugins
bunny-storm - RabbitMQ asynchronous connector library for Python with built in RPC support
istio - Connect, secure, control, and observe services.
FastDepends - FastDepends - FastAPI Dependency Injection system extracted from FastAPI and cleared of all HTTP logic. Async and sync modes are both supported.
Grafana - The open and composable observability and data visualization platform. Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.