memcached

package
v1.6.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 6, 2023 License: Apache-2.0 Imports: 10 Imported by: 0

README

Kubemq Memcached Target Connector

Kubemq memcached target connector allows services using kubemq server to access memcached server functions such set, get and delete.

Prerequisites

The following are required to run the memcached target connector:

  • kubemq cluster
  • memcached server
  • kubemq-targets deployment

Configuration

Memcached target connector configuration properties:

Properties Key Required Description Example
hosts yes memcached servers list address separated by comma "localhost:11211,localhost:11212"
max_idle_connections no set max idle connection "2"
default_timeout_seconds no set default timeout seconds for operation "10"

Example:

bindings:
  - name: kubemq-query-memcached
    source:
      kind: kubemq.query
      name: kubemq-query
      properties:
        address: "kubemq-cluster:50000"
        client_id: "kubemq-query-memcached-connector"
        auth_token: ""
        channel: "query.memcached"
        group:   ""
        concurrency: "1"
        auto_reconnect: "true"
        reconnect_interval_seconds: "1"
        max_reconnects: "0"
    target:
      kind: cache.memcached
      name: target-memcached
      properties:
        hosts: "localhost:11211"
        max_idle_connections: "2"
        default_timeout_seconds: "10"

Usage

Get Request

Get request metadata setting:

Metadata Key Required Description Possible values
key yes memcached key string any string
method yes get "get"

Example:

{
  "metadata": {
    "key": "your-memcached-key",
    "method": "get"
  },
  "data": null
}
Set Request

Set request metadata setting:

Metadata Key Required Description Possible values
key yes memcached key string any string
method yes set "set"

Set request data setting:

Data Key Required Description Possible values
data yes data to set for the memcached key base64 bytes array

Example:

{
  "metadata": {
    "key": "your-memcached-key",
    "method": "set"
  },
  "data": "c29tZS1kYXRh" 
}
Delete Request

Delete request metadata setting:

Metadata Key Required Description Possible values
key yes memcached key string any string
method yes delete "delete"

Example:

{
  "metadata": {
    "key": "your-memcached-key",
    "method": "delete"
  },
  "data": null
}

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Connector

func Connector() *common.Connector

Types

type Client

type Client struct {
	// contains filtered or unexported fields
}

Client is a Client state store

func New

func New() *Client

func (*Client) Connector

func (c *Client) Connector() *common.Connector

func (*Client) Delete

func (c *Client) Delete(ctx context.Context, meta metadata) (*types.Response, error)

func (*Client) Do

func (c *Client) Do(ctx context.Context, req *types.Request) (*types.Response, error)

func (*Client) Get

func (c *Client) Get(ctx context.Context, meta metadata) (*types.Response, error)

func (*Client) Init

func (c *Client) Init(ctx context.Context, cfg config.Spec, log *logger.Logger) error

func (*Client) Set

func (c *Client) Set(ctx context.Context, meta metadata, value []byte) (*types.Response, error)

func (*Client) Stop

func (c *Client) Stop() error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL