Giter Site home page Giter Site logo

pubsub's People

Stargazers

 avatar

Watchers

 avatar  avatar

pubsub's Issues

Add CI

Github actions seems like a prudent way to go about this.

Check Message Type Hashes

In most places only the message type name is checked. This allows things to potentially get out of sync.

Add Safety Checks

Currently lots of things can overflow/crash/do horrible things if you use topic or node names that are too long or if you have some insane really long message definition.

Need to add checks that throw errors if any of these happen and die normally.

Come up with a fun name

Ideas include CatROS (topic meow to pub)
Something acronym related, in a similar fashion to OMG.

Add Node Query

Lets you determine who and how a node is connected to others

Create wrapper with utility functions

This should enable:

  • spinning in a background thread
  • subscriber callbacks
  • timers
  • intra-process message passing
    • should be conditionally compiled in to disable on bare metal type embedded platforms

Implement distributed multi-master concept

Have nodes start up in interactive discovery mode (or have option to force to a particular master or disable this completely) then they will pick the nearest master if there is one. Otherwise continue in discovery mode.

If a node has a master it will query it for topic discovery and advertisement. This should greatly reduce non-data traffic and make the system actually scalable.

The masters should be able to discover and talk among themselves to sync topics between them.

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.