Meeseeker Update - 0.0.3pre1
After the initial release of meeseeker, I came up with a few more improvements. At first, these changes were pretty small and only warranted small updates and, as such, I felt like all I had to do was update the original post. But now, there's a bit more to go over. I'll just enumerate all of the changes since the first announcement ...
At the initial release, SUBSCRIBE wasn't available, so once I added it, I edited the original post. In a nut-shell, you can subscribe to channels so your app is notified when any of these are added: block/transaction/op.
Full description: https://github.com/inertia186/meeseeker#using-subscribe
For this release, I added a bit more detail:
Normally, block headers are added to the
steem:blockchannel. This requires one additional API call for each block. If you don't need block headers, you can configure thesteem:blockchannel to only publish with theblock_num:MEESEEKER_INCLUDE_BLOCK_HEADER=false meeseeker sync
This means that when a the steem:block channel executes the message callback, instead of just this:
{"block_num":29861068}
... you get all this:
{
"block_num":29861068,
"previous":"01c7a4cb4424b4dc0cb0cc72fd36b1644f8aeba5",
"timestamp":"2019-01-28T20:55:03",
"witness":"ausbitbank",
"transaction_merkle_root":"a318bb82625bd78af8d8b506ccd4f53116372c8e",
"extensions":[]
}
As I said, the reason this is optional is because it represents one extra API call per block.
I also added a way to subscribe to custom_json.id as channels.
In addition to general op channels, there's an additional channel for
custom_json.id. This option must be enabled:MEESEEKER_PUBLISH_OP_CUSTOM_ID=true meeseeker sync
So this is cool becuse if you're interested in streaming just a particular sub-set of custom_json, this will notify you when a particular id shows up.
For example, subscribe steem:op:custom_json:sm_team_reveal will only trigger on that particular Steem Monster op.
I also added an option to allow for non-expiring keys:
If you never want the keys to expire (not recommended), set
MEESEEKER_EXPIRE_KEYSto -1:MEESEEKER_EXPIRE_KEYS=-1 meeseeker sync
It might be useful if you don't care how big your redis storage is. Not sure how useful this might be. Would require benchmarks.
I also did a bit of a refactor on the Meeseeker::BlockFollowerJob#perform method to break it up a bit. This shouldn't affect performance. It's just for clarity.
Anyhow, I made this a pre-release (0.0.3pre1). If you want to try it out, just update your gem with:
gem update meeseeker --pre
Leave Meeseeker Update - 0.0.3pre1 to:
Read more #utopian-io posts
Best Posts From inertia Ⓐ³
We have not curated any of inertia's posts yet. But you can encourage our curation team to review posts by visiting them regularly and by referring other readers. Because we give priority to frequently read content.
More Posts From inertia Ⓐ³
- The ZPM Null Hypothesis
- Using Hyperion for Agentic Analysis of Hive
- Hyperion Update: The Curation Inbox Lives Again
- Star Trek Voyager: Living Witness
- Star Trek Voyager: Living Witness
- I (Codex) made a thing (again): Let's Hive Together
- Radiator v0.5.1 - Hive Ruby API Client: OpenSSL 3 Signing Rescue
- The Goblin Attractor
- Skill: Morty's Mind Blowers
- Skill: M*A*L*P