Package

com.twitter.finagle

memcached

Permalink

package memcached

Visibility
  1. Public
  2. All

Type Members

  1. trait BaseClient[T] extends AnyRef

    Permalink

    A friendly client to talk to a Memcached server.

  2. case class CacheNode(host: String, port: Int, weight: Int, key: Option[String] = None) extends SocketAddress with Product with Serializable

    Permalink
  3. trait CachePoolCluster extends Cluster[CacheNode]

    Permalink
  4. case class CachePoolConfig(cachePoolSize: Int, detectKeyRemapping: Boolean = false) extends Product with Serializable

    Permalink

    Cache pool config data format Currently this data format is only used by ZookeeperCachePoolManager to read the config data from zookeeper serverset parent node, and the expected cache pool size is the only attribute we need for now.

    Cache pool config data format Currently this data format is only used by ZookeeperCachePoolManager to read the config data from zookeeper serverset parent node, and the expected cache pool size is the only attribute we need for now. In the future this can be extended for other config attributes like cache pool migrating state, backup cache servers list, or replication role, etc

  5. sealed trait CasResult extends AnyRef

    Permalink
  6. trait Client extends BaseClient[Buf]

    Permalink
  7. class ClientAdaptor[T] extends BaseClient[T] with Proxy

    Permalink
  8. class ConnectedClient extends Client

    Permalink

    A Client connected to an individual Memcached server.

    A Client connected to an individual Memcached server.

    Attributes
    protected
  9. case class Entry(value: Buf, expiry: Time) extends Product with Serializable

    Permalink
  10. class FailureAccrualException extends RequestException

    Permalink
  11. case class GetResult extends Product with Serializable

    Permalink
  12. case class GetsResult(getResult: GetResult) extends Product with Serializable

    Permalink
  13. class Interpreter extends AnyRef

    Permalink

    Evaluates a given Memcached operation and returns the result.

  14. class InterpreterService extends Service[Command, Response]

    Permalink
  15. abstract class KetamaClientKey extends AnyRef

    Permalink
  16. class MockClient extends Client

    Permalink

    Map-based mock client for testing

    Map-based mock client for testing

    Note: expiry and flags are ignored on update operations.

  17. class PHPMemCacheClient extends PartitionedClient

    Permalink

    PHP memcache-client (memcache.so) compatible client.

  18. case class PHPMemCacheClientBuilder(_nodes: Seq[(String, Int, Int)], _hashName: Option[String], _clientBuilder: Option[ClientBuilder[_, _, _, _, Yes]]) extends Product with Serializable

    Permalink

    Builder for memcache-client (memcache.so) compatible client.

  19. trait PartitionedClient extends Client

    Permalink

    A partitioned client is a client that delegates to an actual client based on the key value.

    A partitioned client is a client that delegates to an actual client based on the key value. Subclasses implement clientOf to choose the Client.

  20. class PoolingReadRepairClient extends Client

    Permalink

    This class is designed to support replicated memcached setups.

    This class is designed to support replicated memcached setups. It supports a limited subset of operations (just get, set, and delete).

  21. trait ProxyClient extends Client

    Permalink
  22. class RubyMemCacheClient extends PartitionedClient

    Permalink

    Ruby memcache-client (MemCache) compatible client.

  23. case class RubyMemCacheClientBuilder(_nodes: Seq[(String, Int, Int)], _clientBuilder: Option[ClientBuilder[_, _, _, _, Yes]]) extends Product with Serializable

    Permalink

    Builder for memcache-client (MemCache) compatible client.

  24. class StaticCachePoolCluster extends CachePoolCluster

    Permalink

    Cache pool based on a static list

  25. trait TwemcacheClient extends Client

    Permalink
  26. trait TwemcacheConnectedClient extends TwemcacheClient

    Permalink

    Twemcache commands implementation.

    Twemcache commands implementation. This trait can only be mixed into a memcache client implementation as extension.

  27. trait TwemcachePartitionedClient extends TwemcacheClient

    Permalink

    Twemcache commands implemenation for a partitioned client.

    Twemcache commands implemenation for a partitioned client. This trait can only be mixed into a ParitionedClient that is delegating twemcache compatible clients.

  28. class TwitterCacheResolver extends Resolver

    Permalink

    A com.twitter.finagle.Resolver for resolving destination names associated with Twitter cache pools.

  29. class TwitterCacheResolverException extends Exception

    Permalink

    Indicates that an error occurred while resolving a cache address.

    Indicates that an error occurred while resolving a cache address. See com.twitter.finagle.memcached.TwitterCacheResolver for details.

  30. class ZookeeperCachePoolCluster extends CachePoolCluster with ZookeeperStateMonitor

    Permalink

    Zookeeper based cache pool cluster with a serverset as the underlying pool.

    Zookeeper based cache pool cluster with a serverset as the underlying pool. It will monitor the underlying serverset changes and report the detected underlying pool size. It will also monitor the serverset parent node for cache pool config data, cache pool cluster update will be triggered whenever cache config data change event happens.

  31. trait ZookeeperStateMonitor extends AnyRef

    Permalink

    A zk monitor trait that assists with monitoring a given zk path for any node data change, in which the provided zk data handling implementation will be invoked.

    A zk monitor trait that assists with monitoring a given zk path for any node data change, in which the provided zk data handling implementation will be invoked.

    This monitor will maintain a queue so that every work item triggered by zk event will be processed in an order with a back off policy. It also set-up a zookeeper connection watcher by default to re-set the data change watcher even during zk re-connect.

    The monitor will set-up all watcher properly kick off the loop to process future event; you can also invoke loadZKData() in your class anytime to force reading zk data and apply it.

    Example use cases are: - zookeeper based CachePoolCluster uses this to monitor cache pool members change - zookeeper based MigrationClient uses this ot monitor migration state transitioning

  32. case class KetamaClientBuilder extends Product with Serializable

    Permalink
    Annotations
    @deprecated
    Deprecated

    (Since version 2015-02-22) Use the com.twitter.finagle.Memcached builder

  33. class Server extends AnyRef

    Permalink

    An in-process memcached server.

    An in-process memcached server.

    Annotations
    @deprecated
    Deprecated

    (Since version 7.0.0) Moved into test

Value Members

  1. object CacheNodeGroup

    Permalink
  2. object CachePoolCluster

    Permalink

    Cache specific cluster implementation.

    Cache specific cluster implementation. - A cache pool is a Cluster of cache nodes. - cache pool requires a underlying pool manager as the source of the cache nodes - the underlying pool manager encapsulates logic of monitoring the cache node changes and deciding when to update the cache pool cluster

  3. object CachePoolConfig extends Serializable

    Permalink

    Cache pool config data object

  4. object CasResult

    Permalink
  5. object Client

    Permalink
  6. object GetResult extends Serializable

    Permalink
  7. object KetamaClient

    Permalink
  8. object KetamaClientBuilder extends Serializable

    Permalink
  9. object KetamaClientKey

    Permalink
  10. object PHPMemCacheClientBuilder extends Serializable

    Permalink
  11. object PartitionedClient

    Permalink
  12. object TwemcacheClient

    Permalink
  13. object ZookeeperCachePoolCluster

    Permalink

    ZooKeeper based cache pool cluster companion object

  14. object ZookeeperStateMonitor

    Permalink
  15. package exp

    Permalink
  16. package java

    Permalink
  17. package migration

    Permalink
  18. package protocol

    Permalink
  19. package replication

    Permalink

    Package replication implements a base cache client that can manage multiple cache replicas.

    Package replication implements a base cache client that can manage multiple cache replicas.

    The base replication client will forward cache command to all replicas, as well as collect and aggregate each replica's response into a ReplicationStatus object representing the replication consistency. The BaseReplicationClient will not handle the consistency between replicas in anyway, but only to report its view of the replication state. For instance, BaseReplicationClient provides interfaces similar to generic memcache client but always returns ReplicationStatus object which can be one of these three forms:

    • ConsistentReplication, indicating a consistent state across all replicas
    • InconsistentReplication, indicating an inconsistent state across all replicas
    • FailedReplication, indicating a failure state

    By checking the returned ReplicationStatus object, one can tell the cache replication status and then handle it with application specific logic.

    In addition to a base replication client, a simple replication client wrapper that's compatible with generic cache client interface is also provided. The SimpleReplicationClient only supports a subset of all memcached commands for now, and will succeed only if the command succeed on all cache replicas. In a more complicate caching scenario, this simple/naive replication client may not be applicable.

  20. package util

    Permalink

Ungrouped