2009-12-09 2 views
0

Я работаю над тем, чтобы включить фейсбук с моим сайтом, и, похоже, он работает до сих пор. Тем не менее, загрузка библиотеки facebook api на каждой странице моего сайта затухает. Все остальные классы php, которые я использую, скомпилированы в течение менее 1 секунды, но я вижу время от 3 до 20 секунд, чтобы загрузить фейсбук api. Есть ли что-нибудь, что я могу сделать, чтобы ускорить подключение к Facebook? Это только потому, что я на (mt) общем сервере?Ускорение Facebook Connect

ответ

1

Facebook позволяет вам cache user data for 24 hours. Это может очень помочь, когда вы делаете много запросов в Facebook для более тяжелых данных, таких как друзья. Это не помогает для таких вещей, как профили, которые нелегко кэшировать, но может сэкономить вам много места.

Имейте в виду, что некоторые из замедлений могут быть на JavaScript-сайте кросс-сайта, который действительно не имеет ничего общего с вашим сервером, но может действительно скомпоновать. Приложение, подобное скрипачу, поможет определить, где происходит замедление в этих случаях.

+0

Узкое место, похоже, находится на стороне сервера, а не на клиенте. Таким образом, измерение HTTP-трафика на стороне клиента с помощью скрипача не похоже на то, что это поможет - потому что страница загружается в достойное количество времени после того, как она выполнена динамически созданной на стороне сервера. Перед тем, как сервер выдает все заголовки, FB api занимает 3-20 секунд. Кэширование пользовательских данных в течение 24 часов может быть полезно в некоторых случаях - я новичок в подключении к Facebook, поэтому исправьте меня, если ошибаетесь; вам необходимо проверить существующий сеанс FB с использованием API? –

+0

Вам все равно нужно проверить, но вы можете кэшировать все, что вам нужно, чтобы вы только попали в хит, когда они впервые вошли в систему. –

0

Я не уверен, что я просто заявляю очевидное, но вам нужно загружать API на каждую страницу вашего сайта? Пользователь взаимодействует с facebook на каждой странице? Есть ли способ ограничить использование API перенаправлением на специализированную конечную точку, когда вам нужно общаться с facebook.

+0

У меня создалось впечатление, что API необходим для запуска подключения к facebook. Вырезать его полностью было бы (указать на очевидное :), очевидно, ускорить ситуацию совсем немного. –

+0

Что я имел в виду, вам нужно запустить соединение facebook на каждой странице? Чтобы использовать точку Ник, если вы используете ее для вытягивания пользовательских данных, вы можете кэшировать ее в течение 24 часов и в этот период не загружать API вообще. –

0

@JOEL Сохраните данные пользователя в базе данных и извлеките их там, где это необходимо. Используйте API Facebook только на конечных точках, где это необходимо.