-
Notifications
You must be signed in to change notification settings - Fork 16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ketama hash collision 시의 owner 결정 #113
Labels
Comments
java-client에서 해당 부분을 보니 TreeMap<Long, SortedSet< MemcachedNode >> 으로 관리하고 있습니다. // hash ring update
...
std::map<uin32_t, std::set<memcached_server_instance_st>> new_continumm;
...
for (uint32_t x= 0; x < pointer_per_hash; x++)
{
uint32_t hash= ketama_server_hash(sort_host, (size_t)sort_host_length, x);
list[host_index].index= host_index;
new_continumm[hash].set_compare_function(compare_servers)
new_continuum[hash].add(list[host_index]);
}
...
// hash ring read
return ptr->ketama.info->continuum[continuum.ceilling_key(hash)].first_item()->index; |
|
|
@uhm0311 |
|
@uhm0311 |
uhm0311
added a commit
to uhm0311/arcus-c-client
that referenced
this issue
Feb 24, 2022
uhm0311
added a commit
to uhm0311/arcus-c-client
that referenced
this issue
Feb 25, 2022
uhm0311
added a commit
to uhm0311/arcus-c-client
that referenced
this issue
Feb 25, 2022
uhm0311
added a commit
to uhm0311/arcus-c-client
that referenced
this issue
Feb 25, 2022
uhm0311
added a commit
to uhm0311/arcus-c-client
that referenced
this issue
Feb 25, 2022
uhm0311
added a commit
to uhm0311/arcus-c-client
that referenced
this issue
Feb 25, 2022
uhm0311
added a commit
to uhm0311/arcus-c-client
that referenced
this issue
Feb 25, 2022
uhm0311
added a commit
to uhm0311/arcus-c-client
that referenced
this issue
Feb 25, 2022
uhm0311
added a commit
to uhm0311/arcus-c-client
that referenced
this issue
Feb 25, 2022
uhm0311
added a commit
to uhm0311/arcus-c-client
that referenced
this issue
Feb 28, 2022
uhm0311
added a commit
to uhm0311/arcus-c-client
that referenced
this issue
Feb 28, 2022
uhm0311
added a commit
to uhm0311/arcus-c-client
that referenced
this issue
Feb 28, 2022
uhm0311
added a commit
to uhm0311/arcus-c-client
that referenced
this issue
Feb 28, 2022
uhm0311
added a commit
to uhm0311/arcus-c-client
that referenced
this issue
Feb 28, 2022
uhm0311
added a commit
to uhm0311/arcus-c-client
that referenced
this issue
Mar 1, 2022
uhm0311
added a commit
to uhm0311/arcus-c-client
that referenced
this issue
Mar 2, 2022
uhm0311
added a commit
to uhm0311/arcus-c-client
that referenced
this issue
Mar 2, 2022
uhm0311
added a commit
to uhm0311/arcus-c-client
that referenced
this issue
Mar 7, 2022
uhm0311
added a commit
to uhm0311/arcus-c-client
that referenced
this issue
Mar 7, 2022
uhm0311
added a commit
to uhm0311/arcus-c-client
that referenced
this issue
Mar 7, 2022
jhpark816
added a commit
that referenced
this issue
Mar 8, 2022
ENHANCE: Select smallest host as owner when ketama hash collided #113
본 이슈에 대해 PR merge 되었으므로, close 합니다. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Hash collision 발생 시의 owner 결정 방식으로
hostname 비교하여 작은 hostname의 cache node가 owner가 되도록 한다.
현재 cache server, java-client는 모두 반영된 상태이고,
c-client만 남아있는 상태이다.
수백개 이상의 캐시 인스턴스를 가지는 대규모 클러스터인 경우
ketama hash collision이 발생하므로,
이러한 대규모 클러스터에서 사용하기 위해서는 수정해야 한다.
The text was updated successfully, but these errors were encountered: