pub struct ShardCacheDirectClient { /* private fields */ }Expand description
Blocking SCNP client that automatically routes each key to its shard port.
Implementations§
Source§impl ShardCacheDirectClient
impl ShardCacheDirectClient
Sourcepub fn connect(addr: impl ToSocketAddrs, shard_count: usize) -> Result<Self>
pub fn connect(addr: impl ToSocketAddrs, shard_count: usize) -> Result<Self>
Connects to every shard-owned port starting at addr.
addr must be the first direct shard port, not the fanout port.
Sourcepub fn connect_with_route_mode(
addr: impl ToSocketAddrs,
shard_count: usize,
route_mode: ShardCacheRouteMode,
) -> Result<Self>
pub fn connect_with_route_mode( addr: impl ToSocketAddrs, shard_count: usize, route_mode: ShardCacheRouteMode, ) -> Result<Self>
Connects to every shard-owned port using an explicit route mode.
Sourcepub fn get_into(&mut self, key: &[u8], out: &mut Vec<u8>) -> Result<bool>
pub fn get_into(&mut self, key: &[u8], out: &mut Vec<u8>) -> Result<bool>
Reads key from its owning shard into out, returning true on hit.
Sourcepub fn set_ex(&mut self, key: &[u8], value: &[u8], ttl_ms: u64) -> Result<()>
pub fn set_ex(&mut self, key: &[u8], value: &[u8], ttl_ms: u64) -> Result<()>
Sets key on its owning shard with a millisecond TTL.
Sourcepub fn get_ex_into(
&mut self,
key: &[u8],
ttl_ms: u64,
out: &mut Vec<u8>,
) -> Result<bool>
pub fn get_ex_into( &mut self, key: &[u8], ttl_ms: u64, out: &mut Vec<u8>, ) -> Result<bool>
Reads key from its owning shard into out and sets a millisecond TTL.
Sourcepub fn exists(&mut self, key: &[u8]) -> Result<bool>
pub fn exists(&mut self, key: &[u8]) -> Result<bool>
Returns whether key exists on its owning shard.
Sourcepub fn ttl(&mut self, key: &[u8]) -> Result<i64>
pub fn ttl(&mut self, key: &[u8]) -> Result<i64>
Returns Redis-compatible TTL seconds for key on its owning shard.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ShardCacheDirectClient
impl RefUnwindSafe for ShardCacheDirectClient
impl Send for ShardCacheDirectClient
impl Sync for ShardCacheDirectClient
impl Unpin for ShardCacheDirectClient
impl UnsafeUnpin for ShardCacheDirectClient
impl UnwindSafe for ShardCacheDirectClient
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more