Datastax C/C++ 드라이버에는로드 균형 조정 컨트롤의 일부로 블랙리스트 필터링 기능이 있습니다.Datastax Cassandra C/C++ 드라이버 cass_cluster_set_blacklist_filtering 기능
https://docs.datastax.com/en/developer/cpp-driver/2.5/topics/configuration/
내가 모르는 뭔가가하지만 내 이해가 CQL 클라이언트가 블랙리스트에 호스트에 연결할 수없는 경우 나 수정합니다.
나는 C/C++ 드라이버 V2.5 및 아래의 코드 블록을 사용하여 다중 노드 클러스터에 연결하려고 해요 :이 코드 블록에서
CassCluster* cluster = cass_cluster_new();
CassSession* session = cass_session_new();
const char* hosts = "192.168.57.101";
cass_cluster_set_contact_points(cluster, hosts);
cass_cluster_set_blacklist_filtering(cluster, hosts);
CassFuture* connect_future = cass_session_connect(session, cluster);
CQL 클라이언트가 연결을 시도되는이 호스트를 블랙리스트로 설정. 그러나 CQL 클라이언트는이 호스트에 연결하여 모든 쿼리를 실행합니다. 위의 코드 블럭에 문제가 있습니까? 그렇지 않은 경우 예상되는 동작입니까? 다중 노드 클러스터이고 다른 피어와의 연결을 설정하기 때문에 다르게 작동합니까?
도움이 될 것입니다. 당신은 하나의 접점을 공급하고 있기 때문에
는 IP 주소가 클러스터에 제어 연결을 설정하는 데 사용되는 것을 사전
제안 해 주셔서 감사합니다. 블랙리스트 정책은 C/C++ 드라이버에서 지원됩니다. C/C++ 드라이버 및 기타 언어 드라이버에서 지원하는 화이트리스트 정책도 있습니다. C/C++ 드라이버의 화이트리스트 정책을 사용하면 클라이언트는 화이트리스트에 포함되어 있지 않더라도 화이트리스트 호스트에 데이터를 저장합니다 (블랙리스트와 동일한 방식으로 작동). 화이트리스트 정책에 따라 Python 드라이버는 클라이언트가 화이트리스트에 포함되지 않은 노드에 연결하지 않습니다. 그래서, 나는 다른 언어의 datastax 드라이버가 화이트리스트 정책의 다른 구현을 가지고 있다고 가정합니다. –
@MariosBraho 당신이 맞습니다, 파이썬 드라이버는 화이트리스트 호스트를 존중하고 호스트에 연결을 설정하지 않습니다. 당신이 그것을 추적하고자한다면 DataStax C/C++ Jira 보드에 티켓을 만들었습니다. https://datastax-oss.atlassian.net/browse/CPP-447. – Fero