Documentation
¶
Index ¶
- Constants
- Variables
- func AccessTime(info os.FileInfo) int64
- func NewServer() *bcacheStore
- type BcacheClient
- type BcacheManager
- type BlockCachePacket
- func (p *BlockCachePacket) GetOpMsg() (m string)
- func (p *BlockCachePacket) GetResultMsg() (m string)
- func (p *BlockCachePacket) MarshalData(v interface{}) error
- func (p *BlockCachePacket) MarshalHeader(out []byte)
- func (p *BlockCachePacket) PacketErrorWithBody(code uint8, reply []byte)
- func (p *BlockCachePacket) PacketOkReplay()
- func (p *BlockCachePacket) PacketOkWithBody(reply []byte)
- func (p *BlockCachePacket) ReadFromConn(c net.Conn, timeoutSec int) (err error)
- func (p *BlockCachePacket) String() string
- func (p *BlockCachePacket) UnMarshalHeader(in []byte) error
- func (p *BlockCachePacket) UnmarshalData(v interface{}) error
- func (p *BlockCachePacket) WriteToConn(c net.Conn) (err error)
- type ConnObject
- type ConnPool
- type DelCacheRequest
- type DiskStore
- type GetCacheDataResponse
- type GetCachePathResponse
- type GetCacheRequest
- type PutCacheRequest
- type ReadCloser
Constants ¶
View Source
const ( DefaultTimeOut = 1 * time.Second ConnectExpireTime = 20 )
View Source
const ( PathListSeparator = ";" CacheConfSeparator = ":" SpaceCheckInterval = 60 * time.Second TmpFileCheckInterval = 20 * 60 * time.Second FilePerm = 0o644 Basedir = "blocks" )
View Source
const ( OpBlockCachePut uint8 = 0xB1 OpBlockCacheGet uint8 = 0xB2 OpBlockCacheDel uint8 = 0xB3 )
View Source
const ( UnixSocketPath = "/var/run/cubefscache/bcache.socket" // config CacheDir = "cacheDir" CacheLimit = "cacheLimit" CacheFree = "cacheFree" BlockSize = "blockSize" MaxFileSize = 128 << 30 MaxBlockSize = 128 << 20 BigExtentSize = 32 << 20 )
View Source
const (
CacheMagic uint8 = 0xFF
)
View Source
const (
PacketHeaderSize = 11
)
Variables ¶
View Source
var Buffers *buf.BufferPool
Functions ¶
func AccessTime ¶
Types ¶
type BcacheClient ¶
type BcacheClient struct {
// contains filtered or unexported fields
}
func NewBcacheClient ¶
func NewBcacheClient() *BcacheClient
func (*BcacheClient) Evict ¶
func (c *BcacheClient) Evict(key string) error
type BcacheManager ¶
type BcacheManager interface {
// contains filtered or unexported methods
}
type BlockCachePacket ¶
type BlockCachePacket struct {
Magic uint8
Opcode uint8
ResultCode uint8 // 3
CRC uint32
Size uint32 // Data's size ; header size: 3 + 8 = 11
Data []byte
StartT int64
}
func NewBlockCachePacket ¶
func NewBlockCachePacket() *BlockCachePacket
func (*BlockCachePacket) GetOpMsg ¶
func (p *BlockCachePacket) GetOpMsg() (m string)
func (*BlockCachePacket) GetResultMsg ¶
func (p *BlockCachePacket) GetResultMsg() (m string)
func (*BlockCachePacket) MarshalData ¶
func (p *BlockCachePacket) MarshalData(v interface{}) error
func (*BlockCachePacket) MarshalHeader ¶
func (p *BlockCachePacket) MarshalHeader(out []byte)
func (*BlockCachePacket) PacketErrorWithBody ¶
func (p *BlockCachePacket) PacketErrorWithBody(code uint8, reply []byte)
func (*BlockCachePacket) PacketOkReplay ¶
func (p *BlockCachePacket) PacketOkReplay()
func (*BlockCachePacket) PacketOkWithBody ¶
func (p *BlockCachePacket) PacketOkWithBody(reply []byte)
func (*BlockCachePacket) ReadFromConn ¶
func (p *BlockCachePacket) ReadFromConn(c net.Conn, timeoutSec int) (err error)
func (*BlockCachePacket) String ¶
func (p *BlockCachePacket) String() string
func (*BlockCachePacket) UnMarshalHeader ¶
func (p *BlockCachePacket) UnMarshalHeader(in []byte) error
func (*BlockCachePacket) UnmarshalData ¶
func (p *BlockCachePacket) UnmarshalData(v interface{}) error
func (*BlockCachePacket) WriteToConn ¶
func (p *BlockCachePacket) WriteToConn(c net.Conn) (err error)
type ConnObject ¶
type ConnObject struct {
// contains filtered or unexported fields
}
type ConnPool ¶
type ConnPool struct {
// contains filtered or unexported fields
}
func (*ConnPool) NewConnect ¶
type DelCacheRequest ¶
type DelCacheRequest struct {
CacheKey string `json:"key"`
}
type DiskStore ¶
func NewDiskStore ¶
type GetCacheDataResponse ¶
type GetCacheDataResponse struct {
Data []byte `json:"data"`
}
type GetCachePathResponse ¶
type GetCachePathResponse struct {
CachePath string `json:"path"`
}
type GetCacheRequest ¶
type PutCacheRequest ¶
Click to show internal directories.
Click to hide internal directories.