Documentation
¶
Index ¶
Constants ¶
View Source
const DefaultPrefix protocol.ID = "/ipfs"
DefaultPrefix 是默认附加到所有 DHT 协议的应用程序特定前缀。
Variables ¶
View Source
var Defaults = func(o *Config) error { o.Validator = record.NamespacedValidator{} o.Datastore = dssync.MutexWrap(ds.NewMapDatastore()) o.ProtocolPrefix = DefaultPrefix o.EnableProviders = true o.EnableValues = true o.QueryPeerFilter = EmptyQueryFilter o.RoutingTable.LatencyTolerance = 10 * time.Second o.RoutingTable.RefreshQueryTimeout = 10 * time.Second o.RoutingTable.RefreshInterval = 10 * time.Minute o.RoutingTable.AutoRefresh = true o.RoutingTable.PeerFilter = EmptyRTFilter o.MaxRecordAge = providers.ProvideValidity o.BucketSize = defaultBucketSize o.Concurrency = 10 o.Resiliency = 3 o.LookupCheckConcurrency = 256 o.OptimisticProvideJobsPoolSize = 60 return nil }
Defaults 是默认的 DHT 选项。 此选项将自动添加到您传递给 DHT 构造函数的任何选项之前。
Functions ¶
func EmptyQueryFilter ¶
EmptyQueryFilter 是一个空的查询对等方过滤器函数,始终返回 true。
func EmptyRTFilter ¶
EmptyRTFilter 是一个空的路由表过滤器函数,始终返回 true。
Types ¶
type Config ¶
type Config struct {
Datastore ds.Batching // 用于存储 DHT 数据的数据存储接口
Validator record.Validator // 用于验证记录的验证器接口
ValidatorChanged bool // 如果 true 意味着验证器已更改并且不应使用默认值
Mode ModeOpt // 描述 DHT 应该运行的模式的选项
ProtocolPrefix protocol.ID // 默认情况下附加到所有 DHT 协议的应用程序特定前缀
V1ProtocolOverride protocol.ID // 用于覆盖 V1 协议的协议前缀
BucketSize int // 路由表中每个桶的最大对等方数量
Concurrency int // 在执行 DHT 查询时允许的最大并发请求数量
Resiliency int // 在查询期间允许的最大重试次数
MaxRecordAge time.Duration // 记录在 DHT 中存储的最长时间
EnableProviders bool // 指示是否启用 DHT 的提供者功能
EnableValues bool // 指示是否启用 DHT 的值存储功能
ProviderStore providers.ProviderStore // 提供者信息的存储接口
QueryPeerFilter QueryFilterFunc // 在查询时考虑要拨号的对等方时应用的过滤器
LookupCheckConcurrency int // 在执行查找操作时允许的最大并发请求数量
RoutingTable struct {
RefreshQueryTimeout time.Duration // 刷新路由表的查询超时时间
RefreshInterval time.Duration // 刷新路由表的时间间隔
AutoRefresh bool // 指示是否自动刷新路由表
LatencyTolerance time.Duration // 在考虑对等方时允许的最大延迟
CheckInterval time.Duration // 检查路由表中对等方的时间间隔
PeerFilter RouteTableFilterFunc // 在考虑保留在本地路由表中的连接时应用的过滤器
DiversityFilter peerdiversity.PeerIPGroupFilter // 用于对对等方进行分组的过滤器
}
BootstrapPeers func() []peer.AddrInfo // 用于引导 DHT 的对等方地址信息的函数
AddressFilter func([]ma.Multiaddr) []ma.Multiaddr // 用于过滤对等方地址的函数
// 测试特定的配置选项
DisableFixLowPeers bool // 指示是否禁用修复低对等方的功能
TestAddressUpdateProcessing bool // 指示是否启用地址更新处理的测试功能
EnableOptimisticProvide bool // 指示是否启用乐观提供功能
OptimisticProvideJobsPoolSize int // 是乐观提供作业池的大小
}
Config 是一个包含构建 DHT 时可以使用的所有选项的结构。
func (*Config) ApplyFallbacks ¶
ApplyFallbacks 设置在配置创建期间无法应用的默认值,因为它们依赖于其他配置参数(例如 optA 默认为 2x optB)和/或主机
type QueryFilterFunc ¶
QueryFilterFunc 是在查询时考虑要拨打的对等方时应用的过滤器
type QuorumOptionKey ¶
type QuorumOptionKey struct{}
type RouteTableFilterFunc ¶
RouteTableFilterFunc 是在考虑要保留在本地路由表中的连接时应用的过滤器。
Click to show internal directories.
Click to hide internal directories.