blob: dac71acdd7f7b88bface88ac06e9e15479a8c563 [file] [log] [blame]
#/**
# * Licensed to the Apache Software Foundation (ASF) under one
# * or more contributor license agreements. See the NOTICE file
# * distributed with this work for additional information
# * regarding copyright ownership. The ASF licenses this file
# * to you under the Apache License, Version 2.0 (the
# * "License"); you may not use this file except in compliance
# * with the License. You may obtain a copy of the License at
# *
# * http://www.apache.org/licenses/LICENSE-2.0
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# */
########################
# ZooKeeper Client Settings
########################
# zookeeper settings
zkSessionTimeoutSeconds=30
zkNumRetries=0
zkRetryStartBackoffMillis=100
zkRetryMaxBackoffMillis=200
# bkc zookeeper settings
bkcZKSessionTimeoutSeconds=60
bkcZKNumRetries=20
bkcZKRetryStartBackoffMillis=100
bkcZKRetryMaxBackoffMillis=200
########################
# BookKeeper Client Settings
########################
# bookkeeper client timeouts
bkcWriteTimeoutSeconds=10
bkcReadTimeoutSeconds=1
bkcNumWorkerThreads=16
# bkcNumIOThreads=16
bkc.numChannelsPerBookie=1
bkc.enableTaskExecutionStats=true
bkc.connectTimeoutMillis=1000
bkc.enablePerHostStats=true
########################
# DL Settings
########################
# lock timeout
lockTimeoutSeconds=0
# dl worker threads
numWorkerThreads=16
### Recovery Related Settings
# recover log segments in background
recoverLogSegmentsInBackground=true
# disable max id in proxy
maxIdSanityCheck=true
# use allocator pool for proxy
enableLedgerAllocatorPool=false
# ledger allocator pool size
ledgerAllocatorPoolCoreSize=20
# check stream exists or not
createStreamIfNotExists=true
# encode dc id in version
encodeDCIDInVersion=true
# logSegmentNameVersion
logSegmentNameVersion=1
### Write Performance Related Settings
# ensemble size
ensemble-size=3
write-quorum-size=3
ack-quorum-size=2
bkc.ensemblePlacementPolicy=org.apache.bookkeeper.client.RackawareEnsemblePlacementPolicy
bkc.delayEnsembleChange=true
# sync settings
# buffer size is large because when we rewrite we perform a very large write to persist
# all queue state at once (up to max queue memory size, ex. 16MB). the write will be
# throttled if it takes too long, which can hurt performance, so important to optimize
# for this case.
output-buffer-size=512000
enableImmediateFlush=false
periodicFlushFrequencyMilliSeconds=6
logFlushTimeoutSeconds=120
### Ledger Rolling Related Settings
# retention policy
retention-size=0
# rolling ledgers (disable time rolling/enable size rolling)
rolling-interval=0
# max logsegment bytes=2GB
# much larger than max journal size, effectively never roll and let drpc do it
maxLogSegmentBytes=2147483648
# rolling concurrency
logSegmentRollingConcurrency=1
# disable sanityCheckDelete
sanityCheckDelete=false
ledgerAllocatorPoolName=drpc-alloc-pool
### Readahead settings
enableReadAhead=true
ReadAheadBatchSize=10
ReadAheadMaxEntries=100
ReadAheadWaitTime=10
### Rate limit
rpsSoftWriteLimit=1
rpsHardWriteLimit=5
rpsHardServiceLimit=15
### Config
dynamicConfigReloadIntervalSec=5