pub struct MemorySessionStore { /* private fields */ }Expand description
内存 Session 存储
基于内存的 Session 存储实现,使用 DashMap 提供高并发访问。 支持自动过期清理。
Implementations§
Source§impl MemorySessionStore
impl MemorySessionStore
Sourcepub fn with_config(cleanup_interval: Duration, auto_cleanup: bool) -> Self
pub fn with_config(cleanup_interval: Duration, auto_cleanup: bool) -> Self
使用配置创建内存 Session 存储
Sourcepub fn cleanup_expired(&self)
pub fn cleanup_expired(&self)
手动清理过期 Session
Trait Implementations§
Source§impl Clone for MemorySessionStore
impl Clone for MemorySessionStore
Source§fn clone(&self) -> MemorySessionStore
fn clone(&self) -> MemorySessionStore
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for MemorySessionStore
impl Debug for MemorySessionStore
Source§impl Default for MemorySessionStore
impl Default for MemorySessionStore
Source§impl SessionStore for MemorySessionStore
impl SessionStore for MemorySessionStore
Source§fn get<'life0, 'life1, 'async_trait>(
&'life0 self,
session_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Option<String>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get<'life0, 'life1, 'async_trait>(
&'life0 self,
session_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Option<String>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
获取 Session 数据
Source§fn set<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
session_id: &'life1 str,
data: &'life2 str,
ttl: Duration,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn set<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
session_id: &'life1 str,
data: &'life2 str,
ttl: Duration,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
设置 Session 数据
Source§fn remove<'life0, 'life1, 'async_trait>(
&'life0 self,
session_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn remove<'life0, 'life1, 'async_trait>(
&'life0 self,
session_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
删除 Session
Source§fn exists<'life0, 'life1, 'async_trait>(
&'life0 self,
session_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = bool> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn exists<'life0, 'life1, 'async_trait>(
&'life0 self,
session_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = bool> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
检查 Session 是否存在
Source§fn refresh<'life0, 'life1, 'async_trait>(
&'life0 self,
session_id: &'life1 str,
ttl: Duration,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn refresh<'life0, 'life1, 'async_trait>(
&'life0 self,
session_id: &'life1 str,
ttl: Duration,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
刷新 Session 过期时间
Source§fn get_typed<'life0, 'life1, 'async_trait, T>(
&'life0 self,
session_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Option<T>> + Send + 'async_trait>>where
T: 'async_trait + DeserializeOwned + Send + Sync,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_typed<'life0, 'life1, 'async_trait, T>(
&'life0 self,
session_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Option<T>> + Send + 'async_trait>>where
T: 'async_trait + DeserializeOwned + Send + Sync,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
获取类型化的 Session 数据
Auto Trait Implementations§
impl Freeze for MemorySessionStore
impl !RefUnwindSafe for MemorySessionStore
impl Send for MemorySessionStore
impl Sync for MemorySessionStore
impl Unpin for MemorySessionStore
impl UnsafeUnpin for MemorySessionStore
impl !UnwindSafe for MemorySessionStore
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