WordPress — Скорость чтения файла json против его жесткого кодирования в том же файле?

#php #wordpress #performance

#php #wordpress #Производительность

Вопрос:

Мне нужно выполнить следующее

acf_add_local_field_group($array)

примерно в 15 раз, при общем количестве переданных строк в массиве из всех вызовов, что составляет около 7500 строк. Мне интересно, какая разница в скорости будет между двумя следующими сценариями:

  1. Массивы жестко закодированы в том же файле
  2. Каждый массив верхнего уровня помещается в файл json в вызываемом каталоге acf-json .

Второй метод для меня предпочтительнее, но меня беспокоит стоимость производительности, связанная с необходимостью считывать содержимое 15 разных файлов общим объемом 7500 строк. Это будет выполняться каждый раз для WordPress (вызывается в functions.php ), поэтому я не хочу подвергаться снижению производительности.

Я мог бы кэшировать файлы, но кэш нужно было бы сбрасывать каждый раз, когда новый код загружается с github, поэтому я не уверен, как это можно сделать, тем более, что мы не можем использовать сторонние плагины для кэширования

Комментарии:

1. Я не могу сказать ничего точного о том, какой производительности вы можете ожидать, но я думаю, что PHP будет кэшировать байт-код, который он генерирует из кода PHP, тогда как синтаксический анализ JSON, вероятно, будет происходить снова и снова каждый раз (что приведет к снижению производительности). Я думаю, PHP управляет этим автоматически, поскольку Zend OpCache был в комплекте с PHP.

Ответ №1:

Почему вы не используете массивы PHP вместо файлов Json?, таким образом, вам не нужно открывать файл, но требовать его и делать все, что вы хотите.

Комментарии:

1. Потому что, к сожалению, именно так acf хранит их, и если бы я изменил его на массивы, он не смог бы его прочитать