Documentation ¶
Index ¶
- Constants
- type Option
- func WithBucketSize(size int) Option
- func WithDataShards(count int64) Option
- func WithDefaultBufSize(size int64) Option
- func WithDefaultFileKey(key string) Option
- func WithDefaultOwnerPriv(key *ecdsa.PrivateKey) Option
- func WithDownloadMaximumSize(size int64) Option
- func WithDownloadPath(path string) Option
- func WithLocalStorage(enable bool) Option
- func WithMaxBufferSize(size int64) Option
- func WithMaxConcurrentDownloads(count int64) Option
- func WithMaxConcurrentUploads(count int64) Option
- func WithMaxPeersPerCpl(count int) Option
- func WithMaxRetries(count int64) Option
- func WithMaxSliceSize(size int64) Option
- func WithMaxUploadRetries(count int) Option
- func WithMaxUploadSize(size int64) Option
- func WithMaxXrefTable(count int64) Option
- func WithMinDownloadServerNodes(count int) Option
- func WithMinSliceSize(size int64) Option
- func WithMinUploadServerNodes(count int) Option
- func WithMinUploadSize(size int64) Option
- func WithNodePubSub(nps *pubsub.NodePubSub) Option
- func WithParityRatio(ratio float64) Option
- func WithParityShards(count int64) Option
- func WithPubSubOption(opt pubsub.NodeOption) Option
- func WithRetryInterval(interval time.Duration) Option
- func WithRootPath(path string) Option
- func WithRoutingTableLow(count int64) Option
- func WithShardSize(size int64) Option
- func WithStorageMode(mode StorageMode) Option
- type Options
- func (opt *Options) ApplyOptions(opts ...Option) error
- func (opt *Options) GetBucketSize() int
- func (opt *Options) GetDataShards() int64
- func (opt *Options) GetDefaultBufSize() int64
- func (opt *Options) GetDefaultFileKey() string
- func (opt *Options) GetDefaultOwnerPriv() *ecdsa.PrivateKey
- func (opt *Options) GetDownloadMaximumSize() int64
- func (opt *Options) GetDownloadPath() string
- func (opt *Options) GetLocalStorage() bool
- func (opt *Options) GetMaxBufferSize() int64
- func (opt *Options) GetMaxConcurrentDownloads() int64
- func (opt *Options) GetMaxConcurrentUploads() int64
- func (opt *Options) GetMaxPeersPerCpl() int
- func (opt *Options) GetMaxRetries() int64
- func (opt *Options) GetMaxSliceSize() int64
- func (opt *Options) GetMaxUploadRetries() int
- func (opt *Options) GetMaxUploadSize() int64
- func (opt *Options) GetMaxXrefTable() int64
- func (opt *Options) GetMinDownloadServerNodes() int
- func (opt *Options) GetMinSliceSize() int64
- func (opt *Options) GetMinUploadServerNodes() int
- func (opt *Options) GetMinUploadSize() int64
- func (opt *Options) GetNodePubSub() *pubsub.NodePubSub
- func (opt *Options) GetParityRatio() float64
- func (opt *Options) GetParityShards() int64
- func (opt *Options) GetPubSubOptions() []pubsub.NodeOption
- func (opt *Options) GetRetryInterval() time.Duration
- func (opt *Options) GetRootPath() string
- func (opt *Options) GetRoutingTableLow() int64
- func (opt *Options) GetShardSize() int64
- func (opt *Options) GetStorageMode() StorageMode
- type StorageMode
Constants ¶
const ( DbFile = "database.db" Version = "0.0.1" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Option ¶
Option 定义了一个函数类型,用于配置 BPFS
func WithBucketSize ¶
WithBucketSize 设置路由表桶的大小 参数:
- size int: 要设置的桶大小
返回值:
- Option: 返回一个配置函数,用于设置路由表桶的大小
func WithDataShards ¶
WithDataShards 设置文件数据片段的���量 参数:
- count int64: 要设置的数据片段数量
返回值:
- Option: 返回一个配置函数,用于设置数据片段数量
func WithDefaultBufSize ¶
WithDefaultBufSize 设置常用缓冲区的大小 参数:
- size int64: 要设置的缓冲区大小(字节)
返回值:
- Option: 返回一个配置函数,用于设置默认缓冲区大小
func WithDefaultFileKey ¶
WithDefaultFileKey 设置默认文件密钥 参数:
- key string: 要设置的默认文件密钥
返回值:
- Option: 返回一个配置函数,用于设置默认文件密钥
func WithDefaultOwnerPriv ¶
func WithDefaultOwnerPriv(key *ecdsa.PrivateKey) Option
WithDefaultOwnerPriv 设置默认所有者私钥 参数:
- key *ecdsa.PrivateKey: 要设置的默认所有者私钥
返回值:
- Option: 返回一个配置函数,用于设置默认所有者私钥
func WithDownloadMaximumSize ¶
WithDownloadMaximumSize 设置下载最大回复大小 参数:
- size int64: 要设置的最大回复大小(字节)
返回值:
- Option: 返回一个配置函数,用于设置最大回复大小
func WithDownloadPath ¶
WithDownloadPath 设置下载路径 参数:
- path string: 要设置的下载路径
返回值:
- Option: 返回一个配置函数,用于设置下载路径
func WithLocalStorage ¶
WithLocalStorage 设置是否开启本地存储 参数:
- enable bool: 是否启用本地存储
返回值:
- Option: 返回一个配置函数,用于设置本地存储开关
func WithMaxBufferSize ¶
WithMaxBufferSize 设置最大缓冲区的大小 参数:
- size int64: 要设置的最大缓冲区大小(字节)
返回值:
- Option: 返回一个配置函数,用于设置最大缓冲区大小
func WithMaxConcurrentDownloads ¶
WithMaxConcurrentDownloads 设置最大并发下载数量 参数:
- count int64: 要设置的最大并发下载数量
返回值:
- Option: 返回一个配置函数,用于设置最大并发下载数量
func WithMaxConcurrentUploads ¶
WithMaxConcurrentUploads 设置最大并发上传数量 参数:
- count int64: 要设置的最大并发上传数量
返回值:
- Option: 返回一个配置函数,用于设置最大并发上传数量
func WithMaxPeersPerCpl ¶
WithMaxPeersPerCpl 设置每个CPL值允许的最大节点数 参数:
- count int: 要设置的最大节点数
返回值:
- Option: 返回一个配置函数,用于设置每个CPL的最大节点数
func WithMaxRetries ¶
WithMaxRetries 设置最大重试次数 参数:
- count int64: 要设置的最大重试次数
返回值:
- Option: 返回一个配置函数,用于设置最大重试次数
func WithMaxSliceSize ¶
WithMaxSliceSize 设置最大片段的大小 参数:
- size int64: 要设置的最大片段大小(字节)
返回值:
- Option: 返回一个配置函数,用于设置最大片段大小
func WithMaxUploadRetries ¶
WithMaxUploadRetries 设置上传失败时的最大重试次数 参数:
- count int: 要设置的最大重试次数
返回值:
- Option: 返回一个配置函数,用于设置最大重试次数
func WithMaxUploadSize ¶
WithMaxUploadSize 设置最大上传大小 参数:
- size int64: 要设置的最大上传大小(字节)
返回值:
- Option: 返回一个配置函数,用于设置最大上传大小
func WithMaxXrefTable ¶
WithMaxXrefTable 设置Xref表中段的最大数量 参数:
- count int64: 要设置的最大段数量
返回值:
- Option: 返回一个配置函数,用于设置最大段数量
func WithMinDownloadServerNodes ¶
WithMinDownloadServerNodes 设置下载所需最小服务端节点数 参数:
- count int: 要设置的最小节点数
返回值:
- Option: 返回一个配置函数,用于设置最小服务端节点数
func WithMinSliceSize ¶
WithMinSliceSize 设置最小片段的大小 参数:
- size int64: 要设置的最小片段大小(字节)
返回值:
- Option: 返回一个配置函数,用于设置最小片段大小
func WithMinUploadServerNodes ¶
WithMinUploadServerNodes 设置上传所需最小服务端节点数 参数:
- count int: 要设置的最小节点数
返回值:
- Option: 返回一个配置函数,用于设置最小服务端节点数
func WithMinUploadSize ¶
WithMinUploadSize 设置最小上传大小 参数:
- size int64: 要设置的最小上传大小(字节)
返回值:
- Option: 返回一个配置函数,用于设置最小上传大小
func WithNodePubSub ¶
func WithNodePubSub(nps *pubsub.NodePubSub) Option
WithNodePubSub 设置发布订阅系统实例 参数:
- nps *pubsub.NodePubSub: 要设置的发布订阅系统实例
返回值:
- Option: 返回一个配置函数,用于设置发布订阅系统实例
func WithParityRatio ¶
WithParityRatio 设置奇偶校段占比 参数:
- ratio float64: 要设置的校验片段占比
返回值:
- Option: 返回一个配置函数,用于设置校验片段占比
func WithParityShards ¶
WithParityShards 设置奇偶校验片段的数量 参数:
- count int64: 要设置的校验片段数量
返回值:
- Option: 返回一个配置函数,用于设置校验片段数量
func WithPubSubOption ¶
func WithPubSubOption(opt pubsub.NodeOption) Option
WithPubSubOption 添加 PubSub 配置选项 参数:
- opt pubsub.NodeOption: 要添加的 PubSub 配置选项
返回值:
- Option: 返回一个配置函数,用于设置 PubSub 选项
func WithRetryInterval ¶
WithRetryInterval 设置重试间隔 参数:
- interval time.Duration: 要设置的重试间隔时间
返回值:
- Option: 返回一个配置函数,用于设置重试间隔
func WithRoutingTableLow ¶
WithRoutingTableLow 设置路由表中连接的最小节点数量 参数:
- count int64: 要设置的最小节点数量
返回值:
- Option: 返回一个配置函数,用于设置最小节点数量
func WithShardSize ¶
WithShardSize 设置文件片段的大小 参数:
- size int64: 要设置的片段大小(字节)
返回值:
- Option: 返回一个配置函数,用于设置片段大小
func WithStorageMode ¶
func WithStorageMode(mode StorageMode) Option
WithStorageMode 设置存储模式 参数:
- mode StorageMode: 要设置的存储模式
返回值:
- Option: 返回一个配置函数,用于设置存储模式
type Options ¶
type Options struct {
// contains filtered or unexported fields
}
Options 是用于创建文件存储对象的参数
func (*Options) ApplyOptions ¶
ApplyOptions 应用给定的选项到 Options 对象 参数:
- opts: 可变参数,包含多个选项函数
返回值:
- error: 应用选项过程中的错误信息
func (*Options) GetDefaultOwnerPriv ¶
func (opt *Options) GetDefaultOwnerPriv() *ecdsa.PrivateKey
GetDefaultOwnerPriv 获取默认所有者私钥 返回值:
- *ecdsa.PrivateKey: 默认所有者的ECDSA私钥
func (*Options) GetMaxConcurrentDownloads ¶
GetMaxConcurrentDownloads 获取最大并发下载数量 返回值:
- int64: 允许同时进行的最大下载任务数
func (*Options) GetMaxConcurrentUploads ¶
GetMaxConcurrentUploads 获取最大并发上传数量 返回值:
- int64: 允许同时进行的最大上传任务数
func (*Options) GetMaxPeersPerCpl ¶
GetMaxPeersPerCpl 获取每个CPL值允许的最大节点数 返回值:
- int: 每个CPL值允许的最大节点数,如未设置则返回默认值3
func (*Options) GetMinDownloadServerNodes ¶
GetMinDownloadServerNodes 获取下载所需最小服务端节点数 返回值:
- int: 下载操作所需的最小服务端节点数量
func (*Options) GetMinUploadServerNodes ¶
GetMinUploadServerNodes 获取上传所需最小服务端节点数 返回值:
- int: 上传操作所需的最小服务端节点数量
func (*Options) GetNodePubSub ¶
func (opt *Options) GetNodePubSub() *pubsub.NodePubSub
GetNodePubSub 获取发布订阅系统实例 返回值:
- *pubsub.NodePubSub: 发布订阅系统实例指针
func (*Options) GetPubSubOptions ¶
func (opt *Options) GetPubSubOptions() []pubsub.NodeOption
GetPubSubOptions 获取所有 PubSub 配置选项 返回值:
- []pubsub.NodeOption: PubSub节点配置选项列表
func (*Options) GetStorageMode ¶
func (opt *Options) GetStorageMode() StorageMode
GetStorageMode 获取存储模式 返回值:
- StorageMode: 当前的存储模式
type StorageMode ¶
type StorageMode int
存储模式
const ( FileMode StorageMode = iota // 文件模式 SliceMode // 切片模式,将文件分割成有限个切片(不使用纠删码) RS_Size // 纠删码(大小)模式 RS_Proportion // 纠删码(比例)模式 )