지난 몇 주 동안 우리는 다른 Cassandra clients
을 평가하려고 했으므로 지금은 Netflix/Astyanax client
으로 진행하는 것처럼 보입니다.Astyanax Cassandra 클라이언트의 연결 풀 유형
주로 read performance
에 대해 Cassandra database
을 최적화하려고합니다. 현재, 나는 this-
/**
* Creating Cassandra connection using Astyanax client
*
*/
private CassandraAstyanaxConnection() {
context = new AstyanaxContext.Builder()
.forCluster(ModelConstants.CLUSTER)
.forKeyspace(ModelConstants.KEYSPACE)
.withAstyanaxConfiguration(new AstyanaxConfigurationImpl()
.setDiscoveryType(NodeDiscoveryType.RING_DESCRIBE)
)
.withConnectionPoolConfiguration(new ConnectionPoolConfigurationImpl("MyConnectionPool")
.setPort(9160)
.setMaxConnsPerHost(40)
.setSeeds("node1:9160,node2:9160,node3:9160,node4:9160")
)
.withAstyanaxConfiguration(new AstyanaxConfigurationImpl()
.setCqlVersion("3.0.0")
.setTargetCassandraVersion("1.2"))
.withConnectionPoolMonitor(new CountingConnectionPoolMonitor())
.buildKeyspace(ThriftFamilyFactory.getInstance());
context.start();
keyspace = context.getEntity();
emp_cf = ColumnFamily.newColumnFamily(
ModelConstants.COLUMN_FAMILY,
StringSerializer.get(),
StringSerializer.get());
}
문제 설명처럼 Astyanax connection
를 만드는 오전 : -가
그래서 기본적으로 내가 Astyanax client
이 ConnectionPoolType as ROUND_ROBIN
를 사용하는 것으로 판단된다.
이제 아래 옵션 중 어떤 것이 더 좋을지 알기 위해 read performance
의 관점에서 이해하려고합니다.
TOKEN_AWARE or ROUND_ROBIN or BAG
그리고 그 세 가지의 차이점은 무엇입니까? 그리고 우리는 어떻게 위에서 3 개 중 하나를 사용해야한다고 결정합니까?
Google 클러스터에 대한 배경 정보 우리는 cross colo cluster
과 24 nodes
이라는 싱글을 가질 예정입니다. 의미는 12 nodes in SLC colo
및 12 nodes in PHX colo
입니다.
NetworkTopologyStrategy
은 replication factor of 4
이고, 의미는 2 in each colo
입니다. 우리는 LeveledCompactionStrategy
을 사용할 것입니다.
위의 질문에 대한 설명은 도움이 될 것입니다. 프로덕션 환경에서 Astyanax 클라이언트를 사용할 많은 사람들이있을 것입니다. 모든 피드백은 큰 도움이 될 것입니다.
도움 주셔서 감사합니다.
업데이트 : -
아직도 내가 더 잘 이해할 수 있도록 예와 그 세 사이의 주요 차이점을 무엇 나를 설명 할 수있는 대답을 찾고. 나는 그것이 일반적으로 무엇을 의미하는지 알지만, 그것이 어떻게 작용할 것인지에 대한 견해의 예를 이해할 수는 없습니다.
감사합니다. abhi. 네가 나에게 말한 것들은 이미 알고있다.나는 그것이 어떻게 작동하는지 간단한 예제를 통해 자세히 이해하려고 노력했습니다. ROUND_ROBIN 대 TOKEN_AWARE 연결 풀 유형의 차이점과 읽기 성능을 위해 권장되는 점에 주로 관심이 있습니까? – ferhan
흠 ... 추천 TOKEN_WARE됩니다 – abhi