WebStorm

Рейтинг
162
Регистрация
01.11.2008
Sly32 #:
Дальше. Простой запрос по языку типа SELECT * FROM table WHERE table.lang='ru',  мне выдаст n-ое количество строк, как мне потом обрабатывать это?

ещё раз повторяю, я не агитировал за хранение текстов интерфейса в базе, а обратил внимание на глупый вопрос "как мне потом обрабатывать это? "

и на вашу текущую реализацию

1 - во-первых с портянкой со всеми языками в одном файле, зачем если нужен только один язык, подгружать сразу все переводы? их надо как минимум разнести по разным файлам для каждого языка отдельно, а как максимум и отдельно для каждого модуля, плюс один общий

2 - во-вторых каждый раз при загрузке этих переводов будет парситься json, это тоже накладные расходы, по-хорошему надо или хранить в отдельных py файлах, чтобы далее сгенерировался байт код pyc или прикрутить компиляцию джейсона в py, а далее в pyc

где я агитировл за хранение текстов интерфейса в базе? я просто ответил на твой вопрос "а что я буду делать со строками из базы"
Sly32 #:

Вот интересно, что? Это очень дилетанские подход. Хранить прямо в коде можно данные, которые гарантированно никогда не изменятся после выхода в прод. И даже в этом случае это лучше хранить в переменных окружения, вычитывая их из .env файла. 

и расходы на чтение файла и на работу интерпретатора одинаковые

языковые файлы, если вы не в курсе, они есть во многих популярных cms (например DLE) и хранятся также, как и у меня в  отдельных пхп файлах с объявлениями массивов, в отдельных директориях для каждого языка, они как раз и не изменяются, в вашем интерпретаторе расходы может быть и одинаковые, а в пхп нет, при включённом opcache они компилируются в байт код и никакого парсинга кода программы в дальнейшем не происходит, всё работает очень быстро, более того, даже скомпилированные пхп файлы я храню на рам диске, всё читается из оперативной памяти

PS: и да, если хотите не по дилетантски, используйте gettext  https://habr.com/ru/articles/73554/ , а я буду наслаждаться высокой скоростью своего велосипеда

vitaliy11 #:

(json или просто обычный массив в php файле).

вот здесь разница существенная, обычно везде уже включен opcache, поэтому там где он включен, то быстрее будет хранение в пхп файлах, сам так храню, а json требует постоянного парсинга каждый раз

Ruslan02 #:
Сегодня забыл и не включил ВПН, а Ютуб отлично работает и на вайфай и на мобильной сети, или это временно?

аналогично, со вчерашнего дня

Mik Foxi #:

вы самое главное не учитываете, еще раз самое важное: это имеет значение когда вы единственный единоличный пользователь диска, т.е. когда это выделенный сервер. вдс и тем более шаред хостинг - там тыщи пользователей, которые займут ресурсы и будет скорость диска 1 мб/с, я видел как в тарифе было написано гордо про nvme диски, а скорость записи 1 мб/с.

в каждом отдельном случае надо сравнивать параметры тарифов

Andrey_One , видимо предыдущие ораторы вас троллят, разница конечно же будет ощутимой, в HDD механика позиционирует считывающую головку, это всегда будет медленнее, чем мгновенный электронный доступ к нужным данным в SSD, кроме того есть колоссальная разница и в случайном доступе к файлам в пользу SSD, несмотря на то, что в HDD применяются кэши, все данные все равно не закэшируешь в их оперативной памяти (обычно до 256 МБ)

Sly32 #:
Да, можно так хранить. Но я сразу  вижу несколько сложностей, одну из которых ты уже привел - разные запросы под разные меню.

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

Sly32 #:
Простой запрос по языку типа SELECT * FROM table WHERE table.lang='ru',  мне выдаст n-ое количество строк, как мне потом обрабатывать это?
голубчик, таким вопросом вы показываете свою безграмотность, очевидно же  - построить массив с ключами по полю "name"


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

Shelton724 #:

Современное SEO и монетизация как они есть 👍 Банда полуграмотных псевдоспециалистов (включая меня) делают вид, что от них всё ещё что-то зависит. 😁

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