パフォーマンスに問題がありますが、それがどこから来るのかわかりません。
createLogoutURL と最初のデータストア クエリの間のギャップは非常に大きく、次のコード パッセージの間です。
loginInfo.setLogoutUrl(userService.createLogoutURL(requestUri));
...
ch.zhaw.ams.server.auth.user.User userAms = DatabaseHelper.findByParama(user.getEmail(), "emailAddress",
"String", ch.zhaw.ams.server.auth.user.User.class);
@Override
public GoogleLoginInfo login(String requestUri) {
UserService userService = UserServiceFactory.getUserService();
User user = userService.getCurrentUser();
GoogleLoginInfo loginInfo = new GoogleLoginInfo();
if (user != null) {
loginInfo.setLoggedIn(true);
loginInfo.setEmailAddress(user.getEmail());
loginInfo.setNickname(user.getNickname());
loginInfo.setLogoutUrl(userService.createLogoutURL(requestUri));
loginInfo.setIsGoogleLogin(true);
ch.zhaw.ams.server.auth.user.User userAms = DatabaseHelper.findByParama(user.getEmail(), "emailAddress",
"String", ch.zhaw.ams.server.auth.user.User.class);
if (userAms != null) {
loginInfo.setFirstname(userAms.getFirstName());
loginInfo.setLastname(userAms.getLastName());
}
// Set Memcache
try {
SessionCache.setupCache(user.getEmail());
loginInfo.setIsCached(true);
} catch (CacheException e) {
// TODO Auto-generated catch block
e.printStackTrace();
loginInfo.setIsCached(false);
}
} else {
loginInfo.setLoggedIn(false);
loginInfo.setLoginUrl(userService.createLoginURL(requestUri));
}
return loginInfo;
}
なぜそんなに遅いのか誰にも分かりますか?