Максимальное количество индексных дескрипторов

Fatal error Call to a member function get() on a non-object in

08.03.2016
40 Репосты 1,104 Просмотры

Зачастую причиной неработающего сайта является ошибка — переполнения лимита индексных дескрипторов. Что же это такое и как с этим бороться?

Если объяснять просто: индексный дескриптор – это описатель файла, он содержит все необходимые для работы с файлом служебные атрибуты.
Через индексный дескриптор осуществляется доступ к содержимому файлов. Более детально и технически об этом написано на wiki. Можно сказать, что чем больше количество любых файлов находиться на хостинге, тем больше расход лимита индексных дескрипторов.

Дело в том, что на хостингах зачастую ограничивают допустимое значение индексных дескрипторов в соответствии с тарифным планом. Не путайте этот параметр с объемом дискового пространства, который обычно указывают в характеристиках тарифного плана.

В cPanel Accelerated переполнение индексных дескрипторов выглядит так (красный индикатор):

Максимальное количество индексных дескрипторов

Максимальное количество индексных дескрипторов

Если вы активно занимаетесь наполнением сайта или карточек товара в каталоге, заливаете картинки, расширяете функционал сайта плагинами, вы расходуете не только дисковое пространство, но и лимит по количеству индексных дескрипторов. И в момент переполнения лимита, некоторые функции сайта могут перестать работать.

Вы можете наблюдать различные ошибки:
Fatal error Call to a member function get() on a non-object in

Fatal error Call to a member function get() on a non-object in

Fatal error Call to a member function get() on a non-object in

В каждом конкретном случае необходимо найти решение данной проблемы, но в основном все сводится к двум простым действиям (которые можно реализовать по разному):

1) Поиск и удаление мусорных файлов
Важно понимать, что находиться в папках вашего сайта на хостинге. За продолжительный период работы сайта в «закромах» сайта скапливается множества «мусорных» файлов – временные файлы, остаточные файлы от удаленных расширений, забытые архивы, дубли картинок и т.д. У каждого движка свои особенности «складирования» подобных файлов, так же нужно учитывать особенности вашего хостера.

Поиск подобных файлов удобно производить из панели управления хостинга в «диспетчере файлов» обращая внимания на количество файлов во всех доступных папках (так же можно запросить эту информацию у техподдержки хостинга).

В зависимости от найденного мусора, принимаем действия по его устранению, производим настройку по предотвращения его образования.

Перед любым действием рекомендуется сделать резервную копию проекта.

В моем примере, большое количество файлов находилось в двух папках:
/image/cache/ – Папка кэша движка OpenCart.
/.cagefs/tmp/ – Каталог для хранения кэш файлов акселератора PHP.

Для уменьшения количество созданных копий изображений в папке /cache/ движка OpenCart можно изменить количество разных изображений в панели управления по пути – Система > Настройки [ Изменить ] > Изображения (Правки нужно вносить в соответствии с вашей темой).

Оптимизация изображений в OpenCart

Оптимизация изображений в OpenCart

После сохранения настроек, можно удалить все файлы в папке /image/cache/ – они снова создадутся, но уже с новыми размерами и в значительно меньшем количестве т.к. несколько параметров теперь имеют одинаковый размер.

Папку /.cagefs/tmp/ – Особенность конкретного хостинга, можно просто отчистить от всех старых файлов.

После настройки и удаления, количество индексных дескрипторов значительно сократилось:

Максимальное количество индексных дескрипторов

Максимальное количество индексных дескрипторов — Решение

2) Расширение тарифного плана хостинга (обычно хостер предлагает именно этот вариант), но это скорее отложит проблему на неопределенный срок. Каждый web-проект требует индивидуальное количество ресурсов, в том числе и параметр количества индексных дескрипторов, необходимо учитывать это параметр при выборе тарифного плана.

Возможно стоит задуматься о выборе другого тарифного плана или хостинга. Или настроить задачу на автоматическое удаление мусорных файлов.

Теперь столкнувшись с проблемой «Максимального количества индексных дескрипторов», восстановить нормальную работу сайта для вас не составит труда. Сталкивались ли вы с подобной проблемой и как ее решали?

интересные посты

Как подключить Яндекс кассу на сайт с 54-Ф3
Разработка
0 репосты435 просмотры
Разработка
0 репосты435 просмотры

Как подключить Яндекс кассу на сайт с 54-Ф3

YouKit - Сен 07, 2017

Яндекс.Касса это готовое решение для получения платежей с банковских карт, электронных денег, терминалов на вашем сайте. (далее…)

Структура сайта • как сделать хорошую структуру сайта
Разработка
0 репосты288 просмотры
Разработка
0 репосты288 просмотры

Структура сайта • как сделать хорошую структуру сайта

YouKit - Авг 27, 2017

Один из этапов создания сайта — разработка его структуры (взаимосвязь и расположение всех элементов проекта). У разных сайтов в зависимости…

Как придумать УТП • Уникальное торговое предложение для сайта
Маркетинг
0 репосты484 просмотры
Маркетинг
0 репосты484 просмотры

Как придумать УТП • Уникальное торговое предложение для сайта

YouKit - Июн 15, 2017

Начну с того, что уникальное торговое предложение или УТП для сайта не нужно придумывать, оно должно быть сутью вашего бизнеса.…

Отправить ответ

Уведомлять
avatar
wpDiscuz

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: