Hi community,

Currently, ShardingSphere database discovery feature provides the function of 
automatically discovery the master-slave relationship of the database and 
dynamically correct the status of the data source. It supports  MYSQL、openGauss 
database type.

We consider remove this feature, beancase the design of db-discovery and 
dynamic readwrite-splitting of ShardingSphere seems unreasonable, 
ShardingSphere readwrite-splitting should kept concise and not should rely 
master-slave role and read datasource lists of database discovery.

During the actual development and use, we encountered many problems:

- The database discovery does not meet the pluggable architecture of 
ShardingSphere, it needs to pass the constructed rule to readwrite-splitting.

- ShardingSphere does not provide database high availability, it relies on 
three-party high-availability solutions to find master-slave topological 
relationship, there are too many three-party high-availability solutions and 
they are very complicated, so it is a great challenge for the ShardingSphere 
database discovery feature.

- The database discovery function awareness may cause the entire read cluster 
to be unavailable when use ApsaraDB for reading cluster domain names.

Therefore, we intend to remove db-discovery feature in ShardingSphere into a 
separate branch for maintenance to reduce the cost of understanding and 
maintaining the main code.

Please voice your opinions as fully as possible. Thank you.




[1] https://github.com/apache/shardingsphere/issues/24486




Regards,
JinChao



| |
赵锦超
|
|
13718687...@163.com
|

Reply via email to