Codeigniter を使用し、Facebook ライブラリを含めて Facebook 認証を実装しています。ライブラリを次のようにオートロードしています:
$autoload['libraries'] = array('database', 'session', 'facebook_lib', 'aescryption');
そして、facebook_lib.php ライブラリーは facebook.php を呼び出しています (それがさらに base_facebook.php を呼び出します)。現在、これによりサイトが非常に遅くなっています。ローカルホストでページをロードするのに約 4 ~ 8 秒かかります。これは以前は知りませんでした。ページの読み込みが非常に遅かった。次に、アプリケーションのプロファイリングを行ったところ、空白のページを呼び出すだけでも、非常に遅いことがわかりました。その後、何か他のことが起こっていると思い、最初に考えたのは自動ロード構成でした。「facebook_lib」ライブラリを削除すると、ページがすぐに読み込まれます。
ここでできることはありますか?誰かが同様の問題に遭遇しましたか?
ありがとう。
アップデート:
これが私が Facebook ライブラリに持っているコードです: $this->ci =& get_instance();
// Create our Application instance
//(replace this with your appId and secret).
$this->ci->load->file(APPPATH.'/third_party/facebook.php');
$this->data['facebook'] = new Facebook(array(
'appId' => $this->ci->config->item('fb_app_id'),
'secret' => $this->ci->config->item('fb_secret_key')));
$this->data['fb_user'] = $this->data['facebook']->getUser();
if ($this->data['fb_user']) {
try {
$this->data['$user_profile']=$this->data['facebook']->api('/me');
$this->ci->load->model('login_signup_model');
$this->ci->login_signup_model->storeFBUser($this->data['$user_profile']['id']);
return true;
} catch (FacebookApiException $e){
error_log($e);
$this->data['fb_user']=null;
}
}