-
Notifications
You must be signed in to change notification settings - Fork 45
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
BulkGet 요청 처리 재검증 #27
Comments
@hjyun328 @sUpniverse 모두 확인해 주면 좋겠습니다. |
BulkGetFuture - get
BulkGetFuture - getSome
local caching 동작은 정상인 것으로 보입니다. key list중 일부 key만 local cache에 있다면 서버로 요청되지 않습니다. 또한 local caching을 제외한 응답에 성공한 key들은 local cache에 저장됩니다. |
지금은 하나의 operation이라도 실패(operation error, inactive node)가 발생한다면, 일부 성공한 key의 결과를 받을 수 없는 문제가 있습니다. BulkGetFuture에 새로운 API를 만들어서, 모든 Key에 대한 응답을 Map에 담아 리턴하면 어떨까 싶습니다. class Result<T> {
Exception e; // Error, Cancel, Timeout Exception
T t; // data
}
public Map<String, Result<T>> get(long duration, TimeUnit units) {
...
} 또는 getSome을 수정해서 성공한 Operation만 Map에 담아 리턴해볼 수도 있을 것 같네요. |
@sUpniverse |
@jhpark816 @hjyun328 성공한 key의 결과만 받는것 보단, 모든 Key의 응답을 담는게 응용에서도 실패한 키에 대해서만 현재 getSome()을 이용한 조회 패턴은 자신이 가지고 있는 키 리스트에서 그렇기 때문에 전체 조회 결과를 들고오는 API가 더 응용의 관점에서는 편리하다고 생각합니다. 구현 관점에서는 모든 결과를 들고 오는 API를 get()으로 지원하는게 더 적절하다고 생각됩니다. |
@hjyun328
|
bulk get 수행 방식이 현재 최적인지 확인하고, 개선 부분을 도출한다.
특히, 아래 경우들을 고려한다.
추가적으로, local cache 활용도 정상적인지 확인한다.
The text was updated successfully, but these errors were encountered: