terrymanu commented on issue #24236:
URL: 
https://github.com/apache/shardingsphere/issues/24236#issuecomment-3535466298

   ## Problem Confirmation and Solution Status
   
     After a thorough code analysis of ShardingSphere's current architecture 
(master branch), the configuration storage limit issue raised in Issue #24236 
has been completely resolved.
   
   ##  Current Implementation
   
     ShardingSphere has restructured its configuration storage architecture and 
implemented rule-type-based sharded storage:
   
     New Storage Structure:
   
   ```
     /[database_name]/rules/
         ├── sharding/           # Separate node for sharding rules
         ├── readwrite_splitting/ # Separate node for readwrite splitting rules
         ├── encrypt/            # Separate node for encrypt rules
         ├── broadcast/          # Separate node for broadcast table rules
         ├── mask/               # Separate node for mask rules
         ├── shadow/             # Separate node for shadow rules
         ├── transaction/        # Separate node for transaction rules
         └── sql_parser/         # Separate node for SQL parser rules
   ```
   
     Core Implementation Mechanism:
     - Uses ${database}/rules/${ruleType}/${databaseRuleItem} path structure
     - Defines rule types through @RuleNodeTupleEntity annotation
     - Supports classified storage for named items (tables, dataSourceGroups, 
etc.) and unique items (algorithms, properties, etc.)
     - Each rule type has independent storage nodes in the registry center
   
   ##  Problems Resolved
   
     ✅ ZooKeeper 1MB Limit: Each rule type is stored independently, avoiding 
oversized single nodes
     ✅ Consul 512KB Limit: Configuration is sharded, individual rule types 
won't exceed limits
     ✅ Large-Scale Support: Now supports enterprise applications with hundreds 
of tables
     ✅ High Concurrency Performance: Different rule types can be operated in 
parallel
     ✅ Flexible Extension: New rule types can be easily added through 
annotations
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to