Я работаю на сайт для управления облаком файла с CakePHP, где пользователь может загрузить множество файлов, такие как изображения, документы, PDF и т.д., и все эти загруженные файлы будут в aws s3 bucket, ничего в локальном.нагрузки CakePHP вид файл Fastly с большим количеством изображений
Этот документ будет загружаться с использованием jstree ie. когда пользователь нажимает на папку jstree, соответствующие документы этой папки будут загружаться с помощью AJAX.
Теперь проблема заключается в том, что он занимает огромное количество времени для загрузки соответствующих файлов в папку, когда есть множество файлов. Например: у меня есть папка с 50 + изображениями, а также с некоторыми файлами doc. Когда я выбираю эти папки, для загрузки этой папки требуется пару минут, и каждый раз, когда это занимает такое количество времени.
Я уже использовал кеш для этого загруженного представления ajax, а также установил cache : true
в настройке jquery ajax для этого файла вида.
Что-то вроде:
public $cacheAction = array(
'index' => 36000,
'ajax_documents' => 3600 // this is the view file that render documents
);
.....
public function ajax_documents() {
// Here is all query data that set to corresponding ajax_document.ctp file
// I also cached the query result for each folder request
}
И JQuery
$.ajax({
type: 'GET',
cache: true,
ifModified: true,
data : {},
url: '..ajax_documents',
......
});
Но ничего не работает. Тем не менее требуется огромное количество времени для рендеринга ajax_document.ctp
. Кэширование файлов работает правильно, потому что я их вижу.
Так что в этой ситуации мне нужна ваша помощь и предложение, как повысить эту кодировку и как лучше всего следовать за такой ситуацией?
Примечание:
Главная проблема заключается загрузка изображений с s3 на каждую временной нагрузке вида. Поэтому мне нужно в основном решение для этого кэша изображений.
Пожалуйста, помогите мне с этим.
Вы пытались сузить узкое место? Не удается ли получить список документов? Загрузка документов? Код, указанный в вашем вопросе, не содержит информации об этой части. – thaJeztah
К сожалению, у меня нет опыта работы с Amazon s3, но быстрый поиск по «управлению кешем для s3»; http://stackoverflow.com/questions/10435334/set-cache-control-for-entire-s3-bucket-automatically-using-bucket-policies и это http://www.labnol.org/internet/lower-amazon -s3-bill-better-website-load-time/5193/Возможно, эти ссылки могут помочь вам? – thaJeztah