:original_name: mrs_01_1033.html
.. _mrs_01_1033:
Kafka Common Parameters
=======================
Navigation path for setting parameters:
---------------------------------------
For details about how to set parameters, see :ref:`Modifying Cluster Service Configuration Parameters `.
Common Parameters
-----------------
.. table:: **Table 1** Parameter description
+----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------+
| Parameter | Description | Default Value |
+============================+==================================================================================================================================================================+======================================+
| log.dirs | List of Kafka data storage directories. Use commas (,) to separate multiple directories. | %{@auto.detect.datapart.bk.log.logs} |
+----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------+
| KAFKA_HEAP_OPTS | Specifies the JVM option used for Kafka to start broker. It is recommended that you set this parameter based on service requirements. | -Xmx6G -Xms6G |
+----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------+
| auto.create.topics.enable | Indicates whether a topic is automatically created. If this parameter is set to **false**, you need to run a command to create a topic before sending a message. | true |
+----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------+
| default.replication.factor | Default number of replicas of a topic is automatically created. | 2 |
+----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------+
| monitor.preInitDelay | Delay of the first health check after the server is started. If the startup takes a long time, increase the value of the parameter. Unit: millisecond | 600,000 |
+----------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------+
Timeout Parameters
------------------
.. table:: **Table 2** Broker-related timeout parameters
+---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Parameter | Description | Default Value | Impact |
+=================================+=======================================================================================================================================================================================================================================================================================+=================+===========================================================================================================================================================================================================================================================================+
| controller.socket.timeout.ms | Specifies the timeout for connecting controller to broker. Unit: millisecond | 30,000 | Generally, retain the default value of this parameter. |
+---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| group.max.session.timeout.ms | Specifies the maximum session timeout during the consumer registration. Unit: millisecond | 1800000 | The configured value must be less than the value of this parameter. |
+---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| group.min.session.timeout.ms | Specifies the minimum session timeout during the consumer registration. Unit: millisecond | 6,000 | The configured value must be greater than the value of this parameter. |
+---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| offsets.commit.timeout.ms | Specifies the timeout for the Offset to submit requests. Unit: millisecond | 5,000 | This parameter specifies the maximum delay for processing an Offset request. |
+---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| replica.socket.timeout.ms | Specifies the timeout of the request for synchronizing replica data. Its value must be greater than or equal to that of the **replica.fetch.wait.max.ms** parameter. Unit: millisecond | 30,000 | Specifies the maximum timeout for establishing a channel before the synchronization thread sends a synchronization request. The value must be greater than that of the **replica.fetch.wait.max.ms** parameter. |
+---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| request.timeout.ms | Specifies the timeout for waiting for a response after the client sends a connection request. If no response is received within the timeout, the client resends the request. A request failure is returned after the maximum retry times is reached. Unit: millisecond | 30,000 | This parameter is configured when the networkclient connection is transferred in the controller and replica threads on the broker node. |
+---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| transaction.max.timeout.ms | Specifies the maximum timeout allowed by the transaction. If the client request time exceeds the value of this parameter, broker returns an error in InitProducerIdRequest. This prevents a long client request timeout, ensuring that consumer can receive topics. Unit: millisecond | 900,000 | Specifies the maximum timeout for transactions. |
+---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| user.group.cache.timeout.sec | Specifies the time when the user group information is stored in the cache. Unit: second | 300 | Specifies the time for caching the mapping between users and user groups. If time exceeds the threshold, the system automatically runs the **id -Gn** command to query the user information. During this period, the mapping in the cache is used. |
+---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| zookeeper.connection.timeout.ms | Specifies the timeout for connecting to ZooKeeper. Unit: millisecond | 45,000 | This parameter specifies the duration for connecting the ZooKeeper and zkclient for the first time. If the duration exceeds the value of this parameter, the zkclient automatically disconnects the connection. |
+---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| zookeeper.session.timeout.ms | Specifies the ZooKeeper session timeout duration. During this period, ZooKeeper disconnects the connection if broker does not report its heartbeats to ZooKeeper. Unit: millisecond | 45,000 | ZooKeeper session timeout has the following functions: |
| | | | |
| | | | 1) Based on value of this parameter and the number of ZooKeeper URLs in ZKURL, if the connection duration exceeds the node timeout value (sessionTimeout/Number of transferred ZooKeeper URLs), the connection fails and the system attempts to connect to the next node. |
| | | | |
| | | | 2) After the connection is established, a session (for example, the temporary BrokerId node registered on the ZooKeeper) is cleared by the ZooKeeper a session timeout later if the broker is stopped. |
+---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
.. table:: **Table 3** Producer-related timeout parameters
+--------------------+---------------------------------------------+---------------+----------------------------------------------------------------------------------------------------------------------+
| Parameter | Description | Default Value | Impact |
+====================+=============================================+===============+======================================================================================================================+
| request.timeout.ms | Specifies the timeout of a message request. | 30,000 | If a network fault occurs, increase the value of this parameter. If the value is too small, the Batch Expire occurs. |
+--------------------+---------------------------------------------+---------------+----------------------------------------------------------------------------------------------------------------------+
.. table:: **Table 4** Consumer-related timeout parameters
+-------------------------+--------------------------------------------------------------+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------+
| Parameter | Description | Default Value | Impact |
+=========================+==============================================================+===============+===============================================================================================================================================+
| connections.max.idle.ms | Specifies the maximum retention period for idle connections. | 600,000 | If the idle connection time is greater than this parameter value, this connection is disconnected. If necessary, a new connection is created. |
+-------------------------+--------------------------------------------------------------+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------+
| request.timeout.ms | Specifies the timeout for consumer requests. | 30,000 | If the request times out, the request will fail and be sent again. |
+-------------------------+--------------------------------------------------------------+---------------+-----------------------------------------------------------------------------------------------------------------------------------------------+