Code Monkey home page Code Monkey logo

memphis's Introduction

Please pay attention that Memphis.dev is no longer supported officially by the Superstream team (formerly Memphis.dev) and was released to the public.

Github (4)

Discord Code Of Conduct GitHub release (latest by date)

Memphis.dev Is The First Data Streaming Platform Designed For Backend Developers
To Build Event-driven And Real-time Features Faster Than Ever.

20 About

Before Memphis came along, handling ingestion and processing of events on a large scale took months to adopt and was a capability reserved for the top 20% of mega-companies. Now, Memphis opens the door for the other 80% to unleash their event and data streaming superpowers quickly, easily, and with great cost-effectiveness.

πŸš€ Getting Started

Tutorials | Videos

☸ Kubernetes

helm repo add memphis https://k8s.memphis.dev/charts/ --force-update && \
helm install my-memphis memphis/memphis --create-namespace --namespace memphis

🐳 Docker Compose

curl -s https://memphisdev.github.io/memphis-docker/docker-compose.yml -o docker-compose.yml && \
docker compose -f docker-compose.yml -p memphis up

✨ Key Features v1.4.4

20 Production-ready message broker in under 3 minutes
20 Easy-to-use UI, CLI, and SDKs
20 Data-level observability
20 Dead-Letter Queue with automatic message retransmit
20 Schemaverse - Embedded schema management for produced data (Protobuf/JSON/GraphQL/Avro)
20 Functions for real-time processing
20 Graph visualization
20 Storage tiering
20 SDKs: Node.JS, Go, Python, Typescript, NestJS, REST, .NET, Kotlin
20 Kubernetes-native
20 Community driven

End-to-end Observability "Feel" your producers, consumers, and records
Screenshot 2023-09-29 at 10 17 01
Quickly analyze system health using a graph overview Never lose a message with automatic dead-letter
Screenshot 2023-09-29 at 10 17 12
Save up 96% storage costs with Storage tiering Increase data quality with schemas
Screenshot 2023-09-29 at 10 17 58 Screenshot 2023-09-29 at 10 16 40

Public case studies

Network diagram

memphis.dev Architecture

SDKs supported features

Feature Go Python JS .NET Java Rust
Connection βœ… βœ… βœ… βœ… βœ… βœ…
Disconnection βœ… βœ… βœ… βœ… βœ… βœ…
Create a station βœ… βœ… βœ… βœ… ❌ βœ…
Destroy a station βœ… βœ… βœ… βœ… ❌ βœ…
Retention βœ… βœ… βœ… βœ… ❌ βœ…
Retention values βœ… βœ… βœ… βœ… ❌ βœ…
Storage types βœ… βœ… βœ… βœ… ❌ βœ…
Create a new schema βœ… βœ… βœ… βœ… ❌ ❌
Enforce a schema Protobuf βœ… βœ… βœ… βœ… ❌ ❌
Enforce a schema Json βœ… βœ… βœ… βœ… ❌ 🚧 (WIP)
Enforce a schema GraphQL βœ… βœ… βœ… βœ… ❌ ❌
Enforce a schema Avro βœ… βœ… βœ… βœ… ❌ ❌
Detach a schema βœ… βœ… βœ… βœ… ❌ ❌
Produce βœ… βœ… βœ… βœ… βœ… βœ…
Add headers βœ… βœ… βœ… βœ… ❌ βœ…
Async produce βœ… βœ… βœ… βœ… ❌ βœ…
Message ID βœ… βœ… βœ… βœ… ? βœ…
Destroy a producer βœ… βœ… βœ… βœ… Partial βœ…
Consume βœ… βœ… βœ… βœ… βœ… βœ…
Context to message handler βœ… βœ… βœ… βœ… ❌ Not Applicable
Ack a message βœ… βœ… βœ… βœ… βœ… βœ…
Nack a Message βœ… βœ… βœ… βœ… ❌ ❌
Send a message to dead-letter βœ… βœ… βœ… βœ… ❌ ❌
Get message time sent βœ… βœ… βœ… βœ… ❌ ❌
Fetch βœ… βœ… βœ… βœ… βœ… ❌
Message delay βœ… βœ… βœ… βœ… ❌ βœ…
Get Headers βœ… βœ… βœ… βœ… ❌ βœ…
Get message sequence number βœ… βœ… βœ… βœ… βœ… βœ…
Destroying a Consumer βœ… βœ… βœ… βœ… ❌ βœ…
Check if broker is connected βœ… βœ… βœ… βœ… βœ… βœ…
Consumer prefetch βœ… βœ… ❌ βœ… ❌ βœ…
Schema deserialization βœ… βœ… βœ… βœ… ❌ ❌

πŸ‘‰ Use-cases

  • Async task management
  • Real-time streaming pipelines
  • Data ingestion
  • Cloud Messaging
    • Services (microservices, service mesh)
    • Event/Data Streaming (observability, analytics, ML/AI)
  • Queuing
  • N:N communication patterns
  • Ingest Grafana Loki logs at scale

Support πŸ™‹β€β™‚οΈπŸ€

Have any questions ❓

We welcome you to our discord server with your questions, doubts and feedback.

Create a bug 🐞 report

If you see an error message or run into an issue, please create bug report. This effort is valued and it will help all Memphis{dev} users.

Submit a feature πŸ’‘ request

If you have an idea, or you think that we're missing a capability that would make development easier and more robust, please Submit feature request.

If an issue❗with similar feature request already exists, don't forget to leave a "+1". If you add some more information such as your thoughts and vision about the feature, your comments will be embraced warmly :)

Contributing

Memphis.dev is an open-source project.
We are committed to a fully transparent development process and appreciate highly any contributions.
Whether you are helping us fix bugs, proposing new features, improving our documentation or spreading the word - we would love to have you as part of the Memphis.dev community.

Please refer to our Contribution Guidelines and Code of Conduct.

Contributors ✨

Thanks goes to these wonderful people ❀:

License πŸ“ƒ

Memphis is open-sourced and operates under the "Memphis Business Source License 1.0" license Built out of Apache 2.0, the main difference between the licenses is: "You may make use of the Licensed Work (i) only as part of your own product or service, provided it is not a message broker or a message queue product or service; and (ii) provided that you do not use, provide, distribute, or make available the Licensed Work as a Service. A β€œService” is a commercial offering, product, hosted, or managed service, that allows third parties (other than your own employees and contractors acting on your behalf) to access and/or use the Licensed Work or a substantial set of the features or functionality of the Licensed Work to third parties as a software-as-a-service, platform-as-a-service, infrastructure-as-a-service or other similar services that compete with Licensor products or services." Please check out License to read the full text.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.