Onyx plugin for redis.
In your project file:
[org.onyxplatform/onyx-redis "0.14.1.0"]
In your peer boot-up namespace:
(:require [onyx.plugin.redis])
Example:
{:onyx/name :out-to-redis
 :onyx/plugin :onyx.plugin.redis/writer
 :onyx/type :output
 :onyx/medium :redis
 :redis/uri "redis://127.0.0.1:6379"
 :redis/allowed-commands [:set :get]
 :onyx/batch-size batch-size}
| key | type | description | 
|---|---|---|
| :redis/uri | string | Redis uri | 
| :redis/read-timeout-ms | int | Time to wait (in ms) before giving up on trying to write to Redis. | 
| :redis/allowed-commands | vectorofkeyword | Optional list of Redis commands that are allowed (default: all). | 
Segments should be supplied to the plugin in the form:
{:op :sadd :args [redis-key redis-value]}
Where op is a keyword that corresponds 1:1 to a Redis command function
in taoensso.carmine, e.g. :sadd -> taoensso.carmine/sadd. Other
examples are :set, :del, :pfadd, :zadd, :lpush. For more
information on the commands supported by carmine, see
its documentation.
Injects an carmine connection spec into the event map. Will also inject as an :onyx/fn param if :onyx/param? is true.
{:lifecycle/task :use-redis-task
 :lifecycle/calls :onyx.plugin.redis/reader-conn-spec
 :redis/uri "redis://127.0.0.1:6379"
 :redis/read-timeout-ms <<optional-timeout>>
 :onyx/param? true
 :lifecycle/doc "Initialises redis conn spec into event map, or as a :onyx.core/param"}
When used with task :use-redis-task and with :onyx/param? true, you can use it from your function e.g.
(ns your.ns
  (:require [taoensso.carmine :as car :refer (wcar)]))
(defn use-redis-task-fn [conn segment]
  (wcar conn
        [(car/smembers (:key segment)])))
Alternatively, the conn that is created is placed under :redis/conn in the
event map, for use within lifecycles e.g. :before-batch. Use in this way allows
requests to be batched.
Please see the Carmine documentation for examples for how to use Carmine.
Pull requests into the master branch are welcomed.
Copyright © 2016 Distributed Masonry
Distributed under the Eclipse Public License, the same as Clojure.
Can you improve this documentation?Edit on GitHub
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs | 
| ← | Move to previous article | 
| → | Move to next article | 
| Ctrl+/ | Jump to the search field |