Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a very basic many to many pubsub #3202

Merged
merged 10 commits into from
Oct 1, 2016
Merged

Add a very basic many to many pubsub #3202

merged 10 commits into from
Oct 1, 2016

Conversation

whyrusleeping
Copy link
Member

This is experimental, but will very likely be merged into master.

For more information on the general protocol, take a look at: https://github.com/libp2p/pubsub-notes

and for the implementation being used here: https://github.com/whyrusleeping/go-floodsub

@whyrusleeping whyrusleeping added the status/in-progress In progress label Sep 10, 2016
Pubsub subsub pubsub hubbub dubtub? Wub. Wub. Pubsub.
Nubs, Tubs, Wubs, pub Dubs. Pub subdub pub pub sub nub.

ipfs pubsub pub "pubsub hubbub"
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

whoops, forgot the topic flag here

@whyrusleeping
Copy link
Member Author

Voting for the name, thumbs up comments to vote:

@whyrusleeping
Copy link
Member Author

OPTION: floodsub

@whyrusleeping
Copy link
Member Author

OPTION: hubbub

@whyrusleeping
Copy link
Member Author

OPTION: libp2p-flooding-based-publish-subscribe-system

@haadcode
Copy link
Member

OPTION: hub

pub. Pubsub subsub subpubsub hubbub pub sub grub subhubbub.
Pubsubs sub hubbub sub tub, dub dub dub wub wub wub wub wub. Pubsub.
Pubsub subsub pubsub hubbub dubtub? Wub. Wub. Pubsub.
Nubs, Tubs, Wubs, pub Dubs. Pub subdub pub pub sub nub.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fix desc. Add a description, denoting experimental

@whyrusleeping
Copy link
Member Author

@jbenet should we have the command set to be enabled by a config option? Or do you think that just stating in each commands helptext that its experimental is enough?

@jbenet
Copy link
Member

jbenet commented Sep 11, 2016

should we have the command set to be enabled by a config option? Or do you think that just stating in each commands helptext that its experimental is enough?

Hmmm. yeah i'd hide them unless either:

  • a flag like ipfs daemon --experiment-pubsub or something, that flips a switch and everything is there.
  • a config option like Experimental.PubSub = true

@ghost
Copy link

ghost commented Sep 11, 2016

  • a flag like ipfs daemon --experiment-pubsub or something, that flips a switch and everything is there.
  • a config option like Experimental.PubSub = true

a flag would be better because a config option is hard to remove once it's there.

@djdv
Copy link
Contributor

djdv commented Sep 11, 2016

What about "subhub"?

@jbenet
Copy link
Member

jbenet commented Sep 12, 2016

2016-09-12 at 6 08 pm

@jbenet
Copy link
Member

jbenet commented Sep 12, 2016

it works :neckbeard: 👍

@whyrusleeping
Copy link
Member Author

Rebased on top of new libp2p changes that let us interop with js-ipfs. Also cleaned up a bunch of the code

@whyrusleeping whyrusleeping self-assigned this Sep 14, 2016
@jbenet jbenet modified the milestone: pubsub: floodsub Sep 14, 2016
License: MIT
Signed-off-by: Jeromy <why@ipfs.io>
License: MIT
Signed-off-by: Jeromy <why@ipfs.io>
License: MIT
Signed-off-by: Jeromy <why@ipfs.io>
License: MIT
Signed-off-by: Jeromy <why@ipfs.io>
License: MIT
Signed-off-by: Jeromy <why@ipfs.io>
License: MIT
Signed-off-by: Jeromy <why@ipfs.io>
License: MIT
Signed-off-by: Jeromy <why@ipfs.io>
License: MIT
Signed-off-by: Jeromy <why@ipfs.io>
License: MIT
Signed-off-by: Jeromy <why@ipfs.io>
License: MIT
Signed-off-by: Jeromy <why@ipfs.io>
@whyrusleeping
Copy link
Member Author

Alright, merging this in. Its experimental, definitely subject to change, but man is it fun to play with.

@whyrusleeping whyrusleeping merged commit e1c40df into master Oct 1, 2016
@whyrusleeping whyrusleeping deleted the feat/floodsub branch October 1, 2016 18:10
@whyrusleeping whyrusleeping removed the status/in-progress In progress label Oct 1, 2016
@elimisteve
Copy link

@whyrusleeping Sweet! Are there any Go code examples using this functionality that I can check out?

@whyrusleeping
Copy link
Member Author

Not yet! It's on my to-do list :)

On Sat, Oct 1, 2016, 19:16 Steve Phillips notifications@github.com wrote:

@whyrusleeping https://github.com/whyrusleeping Sweet! Are there any Go
code examples using this functionality that I can check out?


You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub
#3202 (comment), or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABL4HEDU36fbwQKo612sR2olmZf2uSyzks5qvxPtgaJpZM4J5wVz
.

@leeola
Copy link

leeola commented Oct 16, 2016

Also some notes on performance. I just stumbled upon this (had no idea!), and am really interested. With that said, i've got no idea how well it scales, very broad performance characteristics, etc.

A high level paper would be very appreciated! Excellent work 💯 !

@ghost ghost mentioned this pull request Dec 23, 2016
@kikoncuo
Copy link

@whyrusleeping That is amazing, are you still planning to do any examples?

hacdias pushed a commit to ipfs/boxo that referenced this pull request Jan 27, 2023
Add a very basic many to many pubsub

This commit was moved from ipfs/kubo@e1c40df
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants