Трудно сказать, основываясь на вашем вопросе, поскольку мы не знаем точно, что показывает ваша домашняя страница или как она отображается, но при условии, что вы имеете в виду вызов AJAX (на основе тега), который извлекает что-то из базы данных, которая будет отображаться на вашей домашней странице, есть несколько вещей, которые вы можете попробовать:
Разбейте элементы. Вы загружаете длинный список предметов? Если это так, извлекайте только несколько одновременно, и пусть пользователь решит, хотят ли они видеть больше.
Загрузите оставшуюся часть страницы (верхний колонтитул, нижний колонтитул, панель навигации и т. Д.), А затем поместите спиннер с загрузкой gif в область, где должен быть загружен контент. Если вы используете библиотеку javascript, такую как jQuery, это довольно тривиально, и для этого есть множество обучающих программ. Вот хороший сайт для индикаторов бесплатной загрузки: http://ajaxload.info/. Что вы хотите сделать, это сделать вызов AJAX и использовать вашу библиотеку javascript, чтобы установить изображение загрузки. Затем в успешном обратном вызове для вашего вызова ajax скройте счетчик и покажите содержимое.
Загрузка по одному предмету за раз. Сделайте отдельный вызов ajax для каждого элемента, который вы собираетесь загрузить, чтобы пользователь мог видеть, что они входят. Это, вероятно, в конечном итоге займет больше времени (вы чаще обращаетесь к базе данных), но визуальный эффект может быть хорошим психологический взлом.
Посмотрите, как настроены ваши запросы к базе данных. Вы получаете все необходимое в одной находке? Это лучший способ сделать это, так как каждый раз, когда вам приходится совершать очередную поездку в базу данных, вы увеличиваете время ожидания.
Кроме того, лучшее, что вы можете сделать, - это получить лучшее оборудование, если это возможно, возможно, посмотрите на VPS, например, linode.com.