[ 
https://issues.apache.org/jira/browse/CASSANDRA-18438?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17738623#comment-17738623
 ] 

Stefan Miklosovic edited comment on CASSANDRA-18438 at 6/29/23 3:40 PM:
------------------------------------------------------------------------

This is my idea about the simplification of all snitches

https://github.com/apache/cassandra/pull/2458

[~jlewandowski] what do you think?

Coding Azure snitch as [~xgerman42] wants that would be even easier. For 
example, this is refactored Alibaba ([~maxwellguo]) (1)

Google snitch is similar (2).

Ec2 snitches also extends abstract cloud snitch but there is some additional 
logic so it is not so straightforward.

I think that this approach is good enough in not repeating the same logic but 
flexible enough to implement something custom if necessary.

(1) 
https://github.com/apache/cassandra/blob/56ad1ffa2921530b44bcdfab4ffdcf0c375c2448/src/java/org/apache/cassandra/locator/AlibabaCloudSnitch.java
(2) 
https://github.com/apache/cassandra/blob/56ad1ffa2921530b44bcdfab4ffdcf0c375c2448/src/java/org/apache/cassandra/locator/GoogleCloudSnitch.java


was (Author: smiklosovic):
This is my idea about the simplification of all snitches

https://github.com/apache/cassandra/pull/2458

[~jlewandowski] what do you think?

Coding Azure snitch as [~xgerman42] wants that would be even easier. For 
example, this is refactored Alibaba ([~maxwellguo]) (1)

(1) 
https://github.com/apache/cassandra/blob/56ad1ffa2921530b44bcdfab4ffdcf0c375c2448/src/java/org/apache/cassandra/locator/AlibabaCloudSnitch.java

> Refactor the code for public cloud platform snitch to be configurable
> ---------------------------------------------------------------------
>
>                 Key: CASSANDRA-18438
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-18438
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Local/Other
>            Reporter: Maxwell Guo
>            Assignee: Maxwell Guo
>            Priority: Normal
>             Fix For: 5.x
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> Nowadays we have got about four public cloud platform snitchs : EC2 snitch 
> for aws, google cloud snitch for google cloud, alibaba cloud snitch for 
> alibaba cloud and multi region snitch for ec2. And the common place for the 
> first three is that we just need to query the zone center to get the ec2 / 
> ecs id , so I think we can refactor the code , and  if some new public cloud 
> platform want to add one more snitch for himself, there is no need to pull a 
> pr for him and  configure some options in yaml is enough .
> Besides it would be even better that we may reuse the multic region snitch 
> for ec2 for other public cloud platform.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to