Hay una gran cantidad de configuraciones relacionadas con los nodos que se pueden personalizar en Bitxor.
La forma m谩s f谩cil de cambiarlos es usando los ajustes preestablecidos personalizados de Bitxor Bootstrap (l茅ase Using Bitxor Bootstrap): Ponga la configuraci贸n en un archivo YAML y p谩selo a `` bitxor-bootstrap config`` usando el par谩metro -c
. Por ejemplo:
friendlyName: my-uber-node
dataDirectory: ./data
Esta configuraci贸n tambi茅n se puede proporcionar directamente a bitxorcore-client a trav茅s de archivos .properties
. El encabezado de cada una de las siguientes tablas indica qu茅 archivo contiene las propiedades de esa tabla.
resources/config-user.properties
v1.0.2.0
Property | Type | Default value PRIVATE | Default value MAINNET | |||
---|---|---|---|---|---|---|
account | ||||||
enableDelegatedHarvestersAutoDetection | bool | true | true | |||
true if potential delegated harvesters should be automatically detected. | ||||||
storage | ||||||
seedDirectory | string | ../seed | ./seed | |||
Seed directory containing genesis. | ||||||
dataDirectory | string | ../data | ./data | |||
Data directory. | ||||||
certificateDirectory | string | ../certificate | ./cert | |||
Certificate directory. | ||||||
votingKeysDirectory | string | ../votingkeys | ./votingkeys | |||
Voting keys directory. | ||||||
pluginsDirectory | string | . | /usr/bitxorcore/lib | |||
Plugins directory. |
resources/config-node.properties
v1.0.2.0
Property | Type | Default value PRIVATE | Default value MAINNET | |||
---|---|---|---|---|---|---|
node | ||||||
port | unsigned short | 7900 | 7900 | |||
Server port. | ||||||
maxIncomingConnectionsPerIdentity | uint32_t | 3 | 6 | |||
Maximum number of incoming connections per identity over primary port. | ||||||
enableAddressReuse | bool | false | false | |||
true if the server should reuse ports already in use. | ||||||
enableSingleThreadPool | bool | false | false | |||
true if a single thread pool should be used, false if multiple thread pools should be used. | ||||||
enableCacheDatabaseStorage | bool | true | true | |||
true if cache data should be saved in a database. | ||||||
enableAutoSyncCleanup | bool | true | false | |||
true if temporary sync files should be automatically cleaned up. Note: This should be false if broker process is running. | ||||||
fileDatabaseBatchSize | uint32_t | 100 | 100 | |||
Maximum number of payloads to store in each file database disk file. Note: This is recommended to be a factor of 10000. | ||||||
enableTransactionSpamThrottling | bool | true | true | |||
true if transaction spam throttling should be enabled. | ||||||
transactionSpamThrottlingMaxBoostFee | Amount | 10'000'000 | 10'000'000 | |||
Maximum fee that will boost a transaction through the spam throttle when spam throttling is enabled. | ||||||
maxHashesPerSyncAttempt | uint32_t | 84 | 370 | |||
Maximum number of hashes per sync attempt. | ||||||
maxBlocksPerSyncAttempt | uint32_t | 42 | 360 | |||
Maximum number of blocks per sync attempt. | ||||||
maxChainBytesPerSyncAttempt | utils::FileSize | 100MB | 100MB | |||
Maximum chain bytes per sync attempt. | ||||||
shortLivedCacheTransactionDuration | utils::TimeSpan | 10m | 10m | |||
Duration of a transaction in the short lived cache. | ||||||
shortLivedCacheBlockDuration | utils::TimeSpan | 100m | 100m | |||
Duration of a block in the short lived cache. | ||||||
shortLivedCachePruneInterval | utils::TimeSpan | 90s | 90s | |||
Time between short lived cache pruning. | ||||||
shortLivedCacheMaxSize | uint32_t | 10'000'000 | 10'000'000 | |||
Maximum size of a short lived cache. | ||||||
minFeeMultiplier | BlockFeeMultiplier | 0 | 100 | |||
Minimum fee multiplier of transactions to propagate and include in blocks. | ||||||
maxTimeBehindPullTransactionsStart | utils::TimeSpan | 5m | 5m | |||
Transaction pulls will only be initiated when the timestamp of the last block in the local chain is within this value of the network time. | ||||||
transactionSelectionStrategy | model::TransactionSelectionStrategy | oldest | oldest | |||
Transaction selection strategy used for syncing and harvesting unconfirmed transactions. | ||||||
unconfirmedTransactionsCacheMaxResponseSize | utils::FileSize | 5MB | 5MB | |||
Maximum size of an unconfirmed transactions response. | ||||||
unconfirmedTransactionsCacheMaxSize | utils::FileSize | 20MB | 20MB | |||
Maximum size of the unconfirmed transactions cache. | ||||||
connectTimeout | utils::TimeSpan | 10s | 15s | |||
Timeout for connecting to a peer. | ||||||
syncTimeout | utils::TimeSpan | 60s | 5m | |||
Timeout for syncing with a peer. | ||||||
socketWorkingBufferSize | utils::FileSize | 512KB | 16KB | |||
Initial socket working buffer size (socket reads will attempt to read buffers of roughly this size). | ||||||
socketWorkingBufferSensitivity | uint32_t | 100 | 1 | |||
Socket working buffer sensitivity (lower values will cause memory to be more aggressively reclaimed). Note: 0 will disable memory reclamation. | ||||||
maxPacketDataSize | utils::FileSize | 150MB | 150MB | |||
Maximum packet data size. | ||||||
blockDisruptorSlotCount | uint32_t | 4096 | 4096 | |||
Number of slots in the block disruptor circular buffer. | ||||||
blockDisruptorMaxMemorySize | utils::FileSize | 300MB | 300MB | |||
Maximum memory of all elements in the block disruptor circular buffer. | ||||||
blockElementTraceInterval | uint32_t | 1 | 1 | |||
Multiple of elements at which a block element should be traced through queue and completion. | ||||||
transactionDisruptorSlotCount | uint32_t | 8192 | 8192 | |||
Number of slots in the transaction disruptor circular buffer. | ||||||
transactionDisruptorMaxMemorySize | utils::FileSize | 20MB | 20MB | |||
Maximum memory of all elements in the transaction disruptor circular buffer. | ||||||
transactionElementTraceInterval | uint32_t | 10 | 10 | |||
Multiple of elements at which a transaction element should be traced through queue and completion. | ||||||
enableDispatcherAbortWhenFull | bool | true | false | |||
true if the process should terminate when any dispatcher is full. | ||||||
enableDispatcherInputAuditing | bool | true | false | |||
true if all dispatcher inputs should be audited. | ||||||
maxTrackedNodes | uint32_t | 5'000 | 5'000 | |||
Maximum number of nodes to track in memory. | ||||||
minPartnerNodeVersion | ionet::NodeVersion | 1.0.1.0 | ||||
Minimum supported version of partner nodes. | ||||||
maxPartnerNodeVersion | ionet::NodeVersion | 1.0.255.255 | ||||
Maximum supported version of partner nodes. | ||||||
trustedHosts | unordered_set | 127.0.0.1, 172.20.0.25 | ||||
Trusted hosts that are allowed to execute protected API calls on this node. | ||||||
localNetworks | unordered_set | 127.0.0.1 | 127.0.0.1, 172.20.0.25 | |||
Networks that should be treated as local. | ||||||
listenInterface | string | 0.0.0.0 | 0.0.0.0 | |||
Network interface on which to listen. | ||||||
cache_database | ||||||
enableStatistics | bool | false | false | |||
true if operational statistics should be captured and logged. | ||||||
maxOpenFiles | uint32_t | 0 | 0 | |||
Maximum number of open files. | ||||||
maxBackgroundThreads | uint32_t | 0 | 0 | |||
Maximum number of background threads. | ||||||
maxSubcompactionThreads | uint32_t | 0 | 0 | |||
Maximum number of threads that will concurrently perform a compaction. | ||||||
blockCacheSize | utils::FileSize | 0MB | 0MB | |||
Block cache size. Note: Optimizes for point lookup when nonzero. | ||||||
memtableMemoryBudget | utils::FileSize | 0MB | 0MB | |||
Memtable memory budget. Note: Optimizes level style compaction when nonzero. | ||||||
maxWriteBatchSize | utils::FileSize | 5MB | 5MB | |||
Maximum write batch size. | ||||||
localnode | ||||||
host | string | |||||
Node host (leave empty to auto-detect IP). | ||||||
friendlyName | string | 03A8F7D | ||||
Node friendly name (leave empty to use address). | ||||||
version | ionet::NodeVersion | 1.0.2.0 | ||||
Node version. | ||||||
roles | ionet::NodeRoles | IPv4,Peer | Peer,Api | |||
Node roles. | ||||||
outgoing_connections | ||||||
maxConnections | uint16_t | 10 | 10 | |||
Maximum number of active connections. | ||||||
maxConnectionAge | uint16_t | 200 | 200 | |||
Maximum connection age. | ||||||
maxConnectionBanAge | uint16_t | 20 | 20 | |||
Maximum connection ban age. | ||||||
numConsecutiveFailuresBeforeBanning | uint16_t | 3 | 3 | |||
Number of consecutive connection failures before a connection is banned. | ||||||
incoming_connections | ||||||
maxConnections | uint16_t | 512 | 512 | |||
Maximum number of active connections. | ||||||
maxConnectionAge | uint16_t | 200 | 200 | |||
Maximum connection age. | ||||||
maxConnectionBanAge | uint16_t | 20 | 20 | |||
Maximum connection ban age. | ||||||
numConsecutiveFailuresBeforeBanning | uint16_t | 3 | 3 | |||
Number of consecutive connection failures before a connection is banned. | ||||||
backlogSize | uint16_t | 512 | 512 | |||
Maximum size of the pending connections queue. | ||||||
banning | ||||||
defaultBanDuration | utils::TimeSpan | 12h | 12h | |||
Default duration for banning. | ||||||
maxBanDuration | utils::TimeSpan | 72h | 12h | |||
Maximum duration for banning. | ||||||
keepAliveDuration | utils::TimeSpan | 48h | 48h | |||
Duration to keep account in container after the ban expired. | ||||||
maxBannedNodes | uint32_t | 5'000 | 5'000 | |||
Maximum number of banned nodes. | ||||||
numReadRateMonitoringBuckets | uint16_t | 4 | 4 | |||
Number of read rate monitoring buckets ( 0 to disable read rate monitoring). | ||||||
readRateMonitoringBucketDuration | utils::TimeSpan | 15s | 15s | |||
Duration of each read rate monitoring bucket. | ||||||
maxReadRateMonitoringTotalSize | utils::FileSize | 100MB | 100MB | |||
Maximum size allowed during full read rate monitoring period. | ||||||
minTransactionFailuresCountForBan | uint32_t | 8 | 8 | |||
Minimum number of transaction failures to trigger a ban. | ||||||
minTransactionFailuresPercentForBan | uint32_t | 10 | 10 | |||
Minimum percentage of transaction failures to trigger a ban. |
resources/config-harvesting.properties
v1.0.2.0
Property | Type | Default value PRIVATE | Default value MAINNET | |||
---|---|---|---|---|---|---|
harvesting | ||||||
harvesterSigningPrivateKey | string | |||||
Harvester signing private key. Used only when harvesting is enabled. | ||||||
harvesterVrfPrivateKey | string | |||||
Harvester VRF private key. Used only when harvesting is enabled. | ||||||
enableAutoHarvesting | bool | true | true | |||
Enables harvesting using configured harvester keys when true . | ||||||
maxUnlockedAccounts | uint32_t | 5 | 10 | |||
Maximum number of unlocked accounts, i.e., the maximum number of delegated harvesting accounts. | ||||||
delegatePrioritizationPolicy | harvesting::DelegatePrioritizationPolicy | Importance | Importance | |||
Prioritization policy used to keep accounts once the maximum number of delegated harvesting accounts is reached. Possible values are Age and Importance . | ||||||
beneficiaryAddress | Address | |||||
Address of the account receiving part of the harvested fee. |