{"id":25667099,"url":"https://github.com/apache/shardingsphere-plugin","last_synced_at":"2025-04-22T21:29:16.046Z","repository":{"id":193433029,"uuid":"688760465","full_name":"apache/shardingsphere-plugin","owner":"apache","description":"Provides plugins for ShardingSphere pluggable architecture.","archived":false,"fork":false,"pushed_at":"2025-02-24T07:29:41.000Z","size":251,"stargazers_count":29,"open_issues_count":5,"forks_count":21,"subscribers_count":25,"default_branch":"main","last_synced_at":"2025-04-18T02:38:56.965Z","etag":null,"topics":["database-plus","plugin"],"latest_commit_sha":null,"homepage":"https://shardingsphere.apache.org/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/apache.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-09-08T03:42:50.000Z","updated_at":"2025-02-24T07:29:45.000Z","dependencies_parsed_at":"2023-09-27T12:39:47.791Z","dependency_job_id":"d10988ea-b83b-4271-8d45-e58763314a57","html_url":"https://github.com/apache/shardingsphere-plugin","commit_stats":null,"previous_names":["apache/shardingsphere-plugin"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fshardingsphere-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fshardingsphere-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fshardingsphere-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fshardingsphere-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apache","download_url":"https://codeload.github.com/apache/shardingsphere-plugin/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250141855,"owners_count":21381679,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["database-plus","plugin"],"created_at":"2025-02-24T09:21:05.483Z","updated_at":"2025-04-22T21:29:16.028Z","avatar_url":"https://github.com/apache.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Table of Contents\n\n* [Table of Contents](#table-of-contents)\n* [Overview](#overview)\n* [Instruction](#instruction)\n* [Plugin Implementation](#plugin-implementation)\n    * [Feature Plugin](#feature-plugin)\n        * [Encrypt Feature Plugin](#encrypt-feature-plugin)\n            * [Like Encrypt Algorithm](#like-encrypt-algorithm)\n            * [Standard Encrypt Algorithm](#standard-encrypt-algorithm)\n        * [Sharding Feature Plugin](#sharding-feature-plugin)\n            * [Sharding Algorithm](#sharding-algorithm)\n    * [Infra Plugin](#infra-plugin)\n        * [Infra Algorithm Plugin](#infra-algorithm-plugin)\n            * [Distributed Key Generator](#distributed-key-generator)\n            * [Message Digest Plugin](#message-digest-plugin)\n        * [Connection Pool Plugin](#connection-pool-plugin)\n        * [URL Loader Plugin](#url-loader-plugin)\n    * [Kernel Plugin](#kernel-plugin)\n        * [SQL Translator Plugin](#sql-translator-plugin)\n    * [JDBC Adaptor Plugin](#jdbc-adaptor-plugin)\n        * [JDBC Driver Config Plugin](#jdbc-driver-config-plugin)\n    * [Mode Plugin](#mode-plugin)\n        * [Mode Cluster Repository Plugin](#mode-cluster-repository-plugin)\n\n# Overview\n\nShardingSphere plugin is designed to provide a plugin implementation for ShardingSphere pluggable architecture. You can refer to ShardingSphere [Dev Manual](https://shardingsphere.apache.org/document/current/en/dev-manual/) to extend the SPI.\nDevelopers are welcome to contribute to the implementation of plugins and build a distributed database ecosystem of ShardingSphere.\n\n[![EN doc](https://img.shields.io/badge/document-English-blue.svg)](https://github.com/apache/shardingsphere-plugin/blob/main/README.md)\n[![CN doc](https://img.shields.io/badge/文档-中文版-blue.svg)](https://github.com/apache/shardingsphere-plugin/blob/main/README_ZH.md)\n\n# Instruction\n\nThese plugins can be found in [ShardingSphere plugin](https://github.com/apache/shardingsphere-plugin) repository. Plugins in ShardingSphere plugin repository would remain the same release plan with ShardingSphere.\nWhen using ShardingSphere-JDBC, users only need to add maven dependencies to the project to complete the plugin installation. When using ShardingSphere-Proxy, they need to download the plugin jar package and the jar packages that the plugin may depend on, and then copy them to ShardingSphere-Proxy `ext-lib` directory.\n\nWhen developers contribute new plugins, they need to refer to [Contributor Guide](https://shardingsphere.apache.org/community/en/involved/contribute/contributor/) and first execute `./mvnw clean install -DskipITs -DskipTests -Prelease` to package ShardingSphere basic SPI and test components, and then create a new module for plugin development.\nNewly developed plugin code needs to follow ShardingSphere [Code of Conduct](https://shardingsphere.apache.org/community/en/involved/conduct/code/).\n\n# Plugin Implementation\n\n## Feature Plugin\n\n### Encrypt Feature Plugin\n\n#### Like Encrypt Algorithm\n\n* CharDigestLike Encrypt Algorithm\n\nType：CHAR_DIGEST_LIKE\n\nAttributes：\n\n| *Name* | *DataType* | *Description*                                   |\n|--------|------------|-------------------------------------------------|\n| delta  | int        | Character Unicode offset（decimal number）        |\n| mask   | int        | Character encryption mask（decimal number）       |\n| start  | int        | Ciphertext Unicode initial code（decimal number） |\n| dict   | String     | Common words                                    |\n\nMaven dependency:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003eorg.apache.shardingsphere\u003c/groupId\u003e\n    \u003cartifactId\u003eshardingsphere-plugin-features-encrypt-like\u003c/artifactId\u003e\n    \u003cversion\u003e${RELEASE.VERSION}\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n#### Standard Encrypt Algorithm\n\n* RC4 Encrypt Algorithm\n\nType: RC4\n\nAttributes:\n\n| *Name*        | *DataType* | *Description* |\n|---------------|------------|---------------|\n| rc4-key-value | String     | RC4 KEY       |\n\nMaven dependency:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003eorg.apache.shardingsphere\u003c/groupId\u003e\n    \u003cartifactId\u003eshardingsphere-plugin-features-encrypt-rc4\u003c/artifactId\u003e\n    \u003cversion\u003e${RELEASE.VERSION}\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n* SM3 Encrypt Algorithm\n\nType: SM3\n\nAttributes:\n\n| *Name*   | *DataType* | *Description*                              |\n|----------|------------|--------------------------------------------|\n| sm3-salt | String     | SM3 SALT (should be blank or 8 bytes long) |\n\nMaven dependency:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003eorg.apache.shardingsphere\u003c/groupId\u003e\n    \u003cartifactId\u003eshardingsphere-plugin-features-encrypt-sm\u003c/artifactId\u003e\n    \u003cversion\u003e${RELEASE.VERSION}\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n* SM4 Encrypt Algorithm\n\nType: SM4\n\nAttributes:\n\n| *Name*      | *DataType* | *Description*                                                            |\n|-------------|------------|--------------------------------------------------------------------------|\n| sm4-key     | String     | SM4 KEY (should be 16 bytes)                                             |\n| sm4-mode    | String     | SM4 MODE (should be CBC or ECB)                                          |\n| sm4-iv      | String     | SM4 IV (should be specified on CBC, 16 bytes long)                       |\n| sm4-padding | String     | SM4 PADDING (should be PKCS5Padding or PKCS7Padding, NoPadding excepted) |\n\nMaven dependency:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003eorg.apache.shardingsphere\u003c/groupId\u003e\n    \u003cartifactId\u003eshardingsphere-plugin-features-encrypt-sm\u003c/artifactId\u003e\n    \u003cversion\u003e${RELEASE.VERSION}\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n### Sharding Feature Plugin\n\n#### Sharding Algorithm\n\n* Fixed interval sharding algorithm provided by CosId\n\nA fixed time range sharding algorithm implemented by the tool class based on `me.ahoo.cosid:cosid-core`.\nWhen the sharding key is a JSR-310 containing class or a time-related class, it will be converted to `java.time.LocalDateTime` before the next sharding.\nSee the discussion at https://github.com/apache/shardingsphere/issues/14047.\n\nType：COSID_INTERVAL\n\nAttributes：\n\n| *Name*                   | *DataType* | *Description*                                                                                                                                                           | *Default Value* |\n|--------------------------|------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------|\n| zone-id                  | String     | Time zone, which must follow the contained value of `java.time.ZoneId`. For example: Asia/Shanghai                                                                      |                 |\n| logic-name-prefix        | String     | Prefix pattern of sharding data sources or tables                                                                                                                       |                 |\n| datetime-lower           | String     | Datetime sharding lower boundary, pattern is consistent with the timestamp format of `yyyy-MM-dd HH:mm:ss`                                                              |                 |\n| datetime-upper           | String     | Datetime sharding upper boundary, pattern is consistent with the timestamp format of `yyyy-MM-dd HH:mm:ss`                                                              |                 |\n| sharding-suffix-pattern  | String     | Suffix pattern of sharding data sources or tables, must can be transformed to Java LocalDateTime, must be consistent with `datetime-interval-unit`. For example: yyyyMM |                 |\n| datetime-interval-unit   | String     | Unit of sharding value interval, must can be transformed to Java ChronoUnit's Enum value. For example: MONTHS                                                           |                 |\n| datetime-interval-amount | int        | Interval of sharding value, after which the next shard will be entered                                                                                                  |\n\nMaven dependency:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003eorg.apache.shardingsphere\u003c/groupId\u003e\n    \u003cartifactId\u003eshardingsphere-plugin-features-sharding-cosid\u003c/artifactId\u003e\n    \u003cversion\u003e${RELEASE.VERSION}\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n* Snowflake key-based fixed interval sharding algorithm provided by CosId\n\nSnowflake ID sharding algorithm with fixed time range implemented by tool class based on `me.ahoo.cosid:cosid-core`.\nWhen the sharding key is a JSR-310 containing class or a time-related class, it will be converted to `java.time.LocalDateTime` before the next sharding.\nSee the discussion at https://github.com/apache/shardingsphere/issues/14047.\n\nType：COSID_INTERVAL_SNOWFLAKE\n\nAttributes：\n\n| *Name*                   | *DataType* | *Description*                                                                                                                                                           | *Default Value* |\n|--------------------------|------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------|\n| zone-id                  | String     | Time zone, which must follow the contained value of `java.time.ZoneId`. For example: Asia/Shanghai                                                                      |                 |\n| logic-name-prefix        | String     | Prefix pattern of sharding data sources or tables                                                                                                                       |                 |\n| datetime-lower           | String     | Datetime sharding lower boundary, pattern is consistent with the timestamp format of `yyyy-MM-dd HH:mm:ss`                                                              |                 |\n| datetime-upper           | String     | Datetime sharding upper boundary, pattern is consistent with the timestamp format of `yyyy-MM-dd HH:mm:ss`                                                              |                 |\n| sharding-suffix-pattern  | String     | Suffix pattern of sharding data sources or tables, must can be transformed to Java LocalDateTime, must be consistent with `datetime-interval-unit`. For example: yyyyMM |                 |\n| datetime-interval-unit   | String     | Unit of sharding value interval, must can be transformed to Java ChronoUnit's Enum value. For example: MONTHS                                                           |                 |\n| datetime-interval-amount | int        | Interval of sharding value, after which the next shard will be entered                                                                                                  |\n\nMaven dependency:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003eorg.apache.shardingsphere\u003c/groupId\u003e\n    \u003cartifactId\u003eshardingsphere-plugin-features-sharding-cosid\u003c/artifactId\u003e\n    \u003cversion\u003e${RELEASE.VERSION}\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n* Modulo sharding algorithm provided by CosId\n\nModulo sharding algorithm implemented by the tool class based on `me.ahoo.cosid:cosid-core`.\nSee the discussion at https://github.com/apache/shardingsphere/issues/14047 .\n\nType: COSID_MOD\n\nAttributes:\n\n| *Name*            | *DataType* | *Description*                                     |\n|-------------------|------------|---------------------------------------------------|\n| mod               | int        | Sharding count                                    |\n| logic-name-prefix | String     | Prefix pattern of sharding data sources or tables |\n\nMaven dependency:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003eorg.apache.shardingsphere\u003c/groupId\u003e\n    \u003cartifactId\u003eshardingsphere-plugin-features-sharding-cosid\u003c/artifactId\u003e\n    \u003cversion\u003e${RELEASE.VERSION}\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n## Infra Plugin\n\n### Infra Algorithm Plugin\n\n#### Distributed Key Generator\n\n* Nano ID\n\nType:NANOID\n\nConfigurable Property:none\n\nMaven dependency:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003eorg.apache.shardingsphere\u003c/groupId\u003e\n    \u003cartifactId\u003eshardingsphere-plugin-infra-algorithm-key-generator-nanoid\u003c/artifactId\u003e\n    \u003cversion\u003e${RELEASE.VERSION}\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n* CosId\n\nType: COSID\n\nAttributes：\n\n| *Name*    | *DataType* | *Description*                                                                                                                                                                      | *Default Value* |\n|-----------|------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------|\n| id-name   | String     | ID generator name                                                                                                                                                                  | `__share__`     |\n| as-string | bool       | Whether to generate a string type ID: Convert `long` type ID to Base-62 `String` type (`Long.MAX_VALUE` maximum string length is 11 digits), and ensure the ordering of string IDs | `false`         |\n\nMaven dependency:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003eorg.apache.shardingsphere\u003c/groupId\u003e\n    \u003cartifactId\u003eshardingsphere-plugin-infra-algorithm-key-generator-cosid\u003c/artifactId\u003e\n    \u003cversion\u003e${RELEASE.VERSION}\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n* CosId-Snowflake\n\nType: COSID_SNOWFLAKE\n\nAttributes：\n\n| *Name*    | *DataType* | *Description*                                                                                                                                                                      | *Default Value* |\n|-----------|------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------|\n| epoch     | String     | EPOCH of Snowflake ID Algorithm                                                                                                                                                    | `1477929600000` |\n| as-string | bool       | Whether to generate a string type ID: Convert `long` type ID to Base-62 `String` type (`Long.MAX_VALUE` maximum string length is 11 digits), and ensure the ordering of string IDs | `false`         |\n\nMaven dependency:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003eorg.apache.shardingsphere\u003c/groupId\u003e\n    \u003cartifactId\u003eshardingsphere-plugin-infra-algorithm-key-generator-cosid\u003c/artifactId\u003e\n    \u003cversion\u003e${RELEASE.VERSION}\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n#### Message Digest Plugin\n\n* SM3\n\nType: SM3\n\nAttributes：\n\n| *Name*    | *DataType* | *Description*                                                                                                                                                                      | *Default Value* |\n|-----------|------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------|\n| sm3-salt      | String    | SALT used by SM3 (null or 8 Bytes)| empty string  |\n\nMaven dependency:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003eorg.apache.shardingsphere\u003c/groupId\u003e\n    \u003cartifactId\u003eshardingsphere-plugin-infra-algorithm-message-digest-sm3\u003c/artifactId\u003e\n    \u003cversion\u003e${RELEASE.VERSION}\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n### Connection Pool Plugin\n\nShardingSphere-Proxy supports common data source connection pools: HikariCP, C3P0, DBCP.\n\nThe connection pool can be specified through the parameter `dataSourceClassName`. When not specified, the default data source connection pool is HikariCP.\n\n* C3P0 Connection Pool\n\nSample:\n\n```yaml\ndataSources:\n  ds_0:\n    dataSourceClassName: com.mchange.v2.c3p0.ComboPooledDataSource\n    url: jdbc:mysql://localhost:3306/ds_2\n    username: root\n    password:\n```\n\nMaven dependency:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003eorg.apache.shardingsphere\u003c/groupId\u003e\n    \u003cartifactId\u003eshardingsphere-plugin-infra-data-source-pool-c3p0\u003c/artifactId\u003e\n    \u003cversion\u003e${RELEASE.VERSION}\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n* DBCP Connection Pool\n\nSample:\n\n```yaml\ndataSources:\n  ds_0:\n    dataSourceClassName: org.apache.commons.dbcp2.BasicDataSource\n    url: jdbc:mysql://localhost:3306/ds_3\n    username: root\n    password:\n```\n\nMaven dependency:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003eorg.apache.shardingsphere\u003c/groupId\u003e\n    \u003cartifactId\u003eshardingsphere-plugin-infra-data-source-pool-dbcp\u003c/artifactId\u003e\n    \u003cversion\u003e${RELEASE.VERSION}\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n### URL Loader Plugin\n\nShardingsphere-JDBC supports user-defined URL loader plugin, allowing users to load YAML configuration during the initial startup phase through custom methods. For example, YAML configuration information can be stored using relative paths, absolute paths, Apollo. \n\n* Apollo URL Loader\n\nType: Apollo\n\nMaven dependency:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003eorg.apache.shardingsphere\u003c/groupId\u003e\n    \u003cartifactId\u003eshardingsphere-plugin-infra-url-apollo\u003c/artifactId\u003e\n    \u003cversion\u003e${RELEASE.VERSION}\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\nUsing Apollo to store JDBC YAML configuration, as shown below:\n```yaml\n# Declare the use of Apollo as the storage method for configuration in the ShardingSphere-JDBC driver URL, and specify the Apollo Namespace storing the YAML as `test_namespace`.\njdbc:shardingsphere:apollo:test_namespace\n```\n\n## Kernel Plugin\n\n### SQL Translator Plugin\n\n* JooQ SQL translator\n\nType: JOOQ\n\nAttributes:\n\nNone\n\nMaven dependency:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003eorg.apache.shardingsphere\u003c/groupId\u003e\n    \u003cartifactId\u003eshardingsphere-plugin-kernel-sql-translator-jooq\u003c/artifactId\u003e\n    \u003cversion\u003e${RELEASE.VERSION}\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n## JDBC Adaptor Plugin\n\n### JDBC Driver Config Plugin\n\nShardingSphere-JDBC provides a JDBC Driver, which can be used only through configuration changes without rewriting the code.\n\n* Apollo Driver Config\n\nLoad JDBC URL of the yaml configuration file in the specified namespace of apollo:\n```\njdbc:shardingsphere:apollo:TEST.test_namespace\n```\n\nMaven dependency:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003eorg.apache.shardingsphere\u003c/groupId\u003e\n    \u003cartifactId\u003eshardingsphere-plugin-jdbc-driver-apollo\u003c/artifactId\u003e\n    \u003cversion\u003e${RELEASE.VERSION}\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n## Mode Plugin\n\n### Mode Cluster Repository Plugin\n\n* Nacos Repository\n\nType: Nacos\n\nMode: Cluster\n\nAttributes:\n\n| *Name*                    | *Type* | *Description*                                     | *Default Value* |\n|---------------------------|--------|---------------------------------------------------|-----------------|\n| clusterIp                 | String | Unique identifier in cluster                      | Host IP         |\n| retryIntervalMilliseconds | long   | Milliseconds of retry interval                    | 500             |\n| maxRetries                | int    | Max retries for client to check data availability | 3               |\n| timeToLiveSeconds         | int    | Seconds of ephemeral instance live                | 30              |\n\nMaven dependency:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003eorg.apache.shardingsphere\u003c/groupId\u003e\n    \u003cartifactId\u003eshardingsphere-plugin-mode-cluster-repository-nacos\u003c/artifactId\u003e\n    \u003cversion\u003e${RELEASE.VERSION}\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n* Consul Repository\n\nDue to the limitation of the Maven module of `com.ecwid.consul:consul-api:1.4.5`, users cannot connect to the Consul Agent through the gRPC port.\n\nThe `serverLists` property of the `Consul` implementation is by design and can only be connected to a single Consul Agent via an HTTP endpoint.\n`serverLists` uses relaxed URL matching principles.\n1. When `serverLists` is empty, it will be resolved to the Consul Agent instance of `http://127.0.0.1:8500`.\n2. When `serverLists` is `hostName`, it will be resolved to the Consul Agent instance of `http://hostName:8500`.\n3. When `serverLists` is `hostName:port`, it will be resolved to the Consul Agent instance of `http://hostName:port`.\n4. When `serverLists` is `http://hostName:port`, it will be resolved to the Consul Agent instance of `http://hostName:port`.\n5. When `serverLists` is `https://hostName:port`, it will be resolved to the Consul Agent instance of `https://hostName:port`.\n\nType: Consul\n\nMode: Cluster\n\nAttributes:\n\n| *Name*                  | *Type* | *Description*                      | *Default Value* |\n|-------------------------|--------|------------------------------------|-----------------|\n| timeToLiveSeconds       | String | Seconds of ephemeral instance live | 30s             |\n| blockQueryTimeToSeconds | long   | Seconds of query timeout           | 60              |\n\nMaven dependency:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003eorg.apache.shardingsphere\u003c/groupId\u003e\n    \u003cartifactId\u003eshardingsphere-plugin-mode-cluster-repository-consul\u003c/artifactId\u003e\n    \u003cversion\u003e${RELEASE.VERSION}\u003c/version\u003e\n\u003c/dependency\u003e\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapache%2Fshardingsphere-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapache%2Fshardingsphere-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapache%2Fshardingsphere-plugin/lists"}