ノードプロパティ⚓︎
Symbolには、カスタマイズ可能なノード関連の設定が多数あります。
これらの設定は、.propertiesファイルを通じて直接Catapultクライアントに提供できます。
設定を変更する最も簡単な方法は、Shoestringとoverrides.iniファイルを使用することです。
以下の各テーブルのヘッダーは、そのテーブルのプロパティが含まれるファイルを示しています。
メモ
ネットワーク関連のプロパティについては、ネットワークプロパティのページを参照してください。
ユーザー設定⚓︎
User configuration settings.
From
From
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 nemesis. | |||
dataDirectory | string | ../data | ./data |
| Data directory. | |||
certificateDirectory | string | ../certificate | ./cert |
| Certificate directory. | |||
votingKeysDirectory | string | ../votingkeys | ./votingkeys |
| Voting keys directory. | |||
pluginsDirectory | string | . | /usr/catapult/lib |
| Plugins directory. | |||
ノード設定⚓︎
Node configuration settings.
From
From
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. | |||
ハーベスティング設定⚓︎
Harvesting configuration settings.
From
From
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. | |||