Coder Social home page Coder Social logo

totoro's Introduction

Under Construction ๐Ÿšง

Logo

Totoro

A single topic in-memory message queue server written in Rust

Description

  • One instance has exactly one queue
    • No multi topic functionality
  • Max messages in queue: 64000

Run Server

cargo run --bin totoro

Run Examples

cargo run --bin sub-client
cargo run --bin pub-client

Example Publisher

use anyhow::Result;
use totoro::client::TotoroPublisher;
use tracing::info;

#[tokio::main]
async fn main() -> Result<()> {
    tracing_subscriber::fmt::init();
    let mut publisher = TotoroPublisher::new(Default::default()).await?; 
    let mut msg_counter = 0;
    loop {
        let message = format!("Message counter: {}", msg_counter);
        publisher.publish(message.clone()).await?;
        msg_counter += 1;
        info!("Sent message: {}", message);
    }
}

Example Subscriber

use anyhow::Result;
use totoro::client::TotoroSubscriber;
use tracing::info;

#[tokio::main]
async fn main() -> Result<()> {
    tracing_subscriber::fmt::init();
    let mut subscriber = TotoroSubscriber::new(Default::default()).await?; 
    loop {
        let message = subscriber.consume().await?;
        info!("Received message: {}", message);
    }
}

About the name

ChatGPT came up with the name (and logo above) TotoroTransfer, which I shortened to Totoro. Here is the explanation from ChatGPT:

The name "TotoroTransfer" for your Rust message queue project is inspired by Totoro, the iconic character from the Studio Ghibli film "My Neighbor Totoro." Here's a breakdown of the thought process behind this name:

Totoro's Popularity and Appeal: Totoro is a beloved character known for his friendly and comforting presence. By naming your message queue after Totoro, you're tapping into this positive association, suggesting that your project is approachable, user-friendly, and reliable.

Symbolism of Comfort and Reliability: Totoro in the film is a figure of comfort, support, and reliability for the main characters. Similarly, "TotoroTransfer" implies a system that users can rely on for efficient and dependable message handling, much like how Totoro is a dependable character in the film.

Ease and Simplicity: The film "My Neighbor Totoro" is celebrated for its simplicity and the warm, easy-going nature of its narrative. This can reflect on your project as well, suggesting that "TotoroTransfer" offers a straightforward, hassle-free experience in message queuing and processing.

Cultural Recognition: Totoro is a globally recognized character, and using this name can make your project more memorable and engaging, especially for fans of anime and Studio Ghibli. It's a name that's likely to stand out and be remembered.

Friendly and Welcoming Tone: Finally, the name conveys a sense of warmth and friendliness. In the often complex and technical world of software, a name like "TotoroTransfer" can make your project seem more accessible and less intimidating to potential users.

In summary, "TotoroTransfer" leverages the character's attributes of friendliness, reliability, and simplicity, suggesting a message queue that is both efficient and user-friendly, while also being memorable and culturally engaging.

totoro's People

Contributors

lukasmetzner avatar

Watchers

 avatar

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.