vvvv / VL.StandardLibs

A collection of standard libraries for vvvv including VL.Stride, VL.Skia, VL.ImGui, msgpack.org[VL]
https://visualprogramming.net
GNU Lesser General Public License v3.0
35 stars 14 forks source link

Initial Redis node set #637

Closed kopffarben closed 9 months ago

kopffarben commented 1 year ago

Node set

In a first iteration we will only focus on strings. To make this explicit all nodes are suffixed as such. In a later iteration we can add a generic node set which works with all primitive types (T where T is unmanaged or string).

Event based nodes

Persistent nodes

Reddis allows to read and write keys in a transactional manner. We decided to expose this via two new nodes

They place their work into a Redis transaction which gets executed in background before and after each vvvv frame.

Client side caching

The Reddis documentation also speaks quite a bit about client side caching. This would be relevant for the GetString nodes. However whether or not a key should be cached shouldn t be decided in the moment one reads the key, but in general when "setting up" the key. So maybe it should be an option on the Redis node itself, taking a spread of keys which should be cached on client side. Also note that this feature still has to be researched by @kopffarben how it actually works in the StackExchange implementation.

HDE extension

An extension to easily run a local Redis dev server.

kopffarben commented 10 months ago

Base Node Set

RedisClient

Inputs

Outputs

Binding, Binding (Hashmap) , Binding (List)

Inputs

Outputs

Event based nodes

Publish <T>

Allows to send messages on a Redis channel.

Inputs

Outputs

Subscribe <T>

Allows to receive messages of a Redis channel.

Inputs

joreg commented 9 months ago
joreg commented 9 months ago