
☕ CunningFox
22.12.2017
10:30:24

Ad.x ??
22.12.2017
10:30:44

Павел
22.12.2017
10:31:04
Человек может на запросах к БД экономит, а вы
Вопрос сколько страница грузится с таким количеством данных

Google

?
22.12.2017
10:31:49
ну хотя бы если выводи такой паравоз спрятать текст в аккардион

Ad.x ??
22.12.2017
10:32:29

Maxim
22.12.2017
10:33:57
та не. пару секунд - что-то там не то в выводе.

Павел
22.12.2017
10:35:18

Ad.x ??
22.12.2017
10:35:41

Павел
22.12.2017
10:35:49
Йеп

Maxim
22.12.2017
10:35:52

Ad.x ??
22.12.2017
10:35:57
так если нужны

Павел
22.12.2017
10:36:29
Тогда я туплю что за олд атрибуты?

Ad.x ??
22.12.2017
10:37:23
дубль атрибутов обычных. просто когда модифицируешь нормальные, олд остаются как были и есть возможность сравнить их
http://www.yiiframework.com/doc-2.0/yii-db-baseactiverecord.html#getOldAttribute()-detail
они все время тащутся дублем

Google

Павел
22.12.2017
10:39:22
Так если ты из базы тока затянул онеж null
Ты активно меняешь данные?

Ad.x ??
22.12.2017
10:41:27
у нас м.б. какой-то разный юй?
вот тока достал, ниче не менял. и они сразу заполнены

Павел
22.12.2017
10:42:51
Не гоню
Заполнены

Сергей
22.12.2017
10:43:05
Ну сделай свой AR. Отнаследуйся от BaseActiveRecord и переопредели populateRecord, где затри строку $record->_oldAttributes = $record->_attributes;.
http://joxi.ru/NDrlgRF4qblDAP

Ad.x ??
22.12.2017
10:43:57

Сергей
22.12.2017
10:44:10
что не так-то? :)

Ad.x ??
22.12.2017
10:44:29
свой AR я не хочу делать
категорически причем

?
22.12.2017
10:44:55
зачем свой

Сергей
22.12.2017
10:44:58
Тогда смирись :)

?
22.12.2017
10:45:00
переопредели 1 метод и все

Сергей
22.12.2017
10:45:08
Вариантов больше нет

Павел
22.12.2017
10:45:34
не надо делать свой AR
Просто унаследуйся

?
22.12.2017
10:46:04
вариант есть
взять пдо и напрямую писать запросы
:) это конечно костелище но лишних атрибутов не будет

Google

Сергей
22.12.2017
10:46:27

?
22.12.2017
10:46:36
я в курсе
а так отнаследовать будет самый простой вариант

Maxim
22.12.2017
10:49:43
в данном случае я не вижу проблемы в структуре моделей, вижу проблему в неправильном подходе
Даже если нужен весь текст на одном экране 50 статтей по 10к символов - нужно один раз их вывести и сделать вывод, что пользователь может не долистать до второй статьи
Сделать сокращенные body статтей при получении из бд или сделать поле excerpt, которое выводить изначально. Поставить аккордион, по клику на "детальней" грузить полное содержание конкретной статьи по ajax, направляя id
Какая-то странная задача. Наверно и коменты на этой же странице нужно вывести под каждой статьей (lol)
так если нужны
а какая у тебя кодировка в db? Если mb4 - там по 4 символа на каждую букву. Попробуй поставить обычный utf8, чтоб по 3 было. По идее объем на 25% можно сэкономить.
Но это не точно

Ad.x ??
22.12.2017
10:57:54
к тому же это лишняя сериализация. как ни крути очко но ровном месте образуется


Maxim
22.12.2017
11:01:40
Ага. А если убрать олд атрибут и показать все полностью - ты будешь на коне в этой ситуации

Ad.x ??
22.12.2017
11:02:14
думаю 30-40% оперативы сэкономится

☕ CunningFox
22.12.2017
11:02:35
Очко в подходе если ты рендеришь столько данных за один присест
Есть другие варианты

Ad.x ??
22.12.2017
11:03:12
какие?

☕ CunningFox
22.12.2017
11:03:56
Специфично все, подумай что тебе нужно а что можно лениво грузить
Как минимум
Подумай что тебе нужно в выборке а что нет, так и память сэкономишь

Ad.x ??
22.12.2017
11:04:53
уже подумал бро

☕ CunningFox
22.12.2017
11:05:00
Если тебе нужны тексты 10к+ в выборке 50 значит ты что-то не то или не так хранишь/делаешь
Да и 10к+ это мелкотексты)

Ad.x ??
22.12.2017
11:06:07
хуй с ними с текстами. это делают несколько человек. основная масса обычные статейники. Но даже так в пиковое время на сервере бывает около 4к народу. при этом одновременно до 250 запросов примерно

Google

☕ CunningFox
22.12.2017
11:06:31
если прям специфично надо с чем-то тяжелым работать, откажись от AR
но уверен в 99.999% случаев это не нужно)

Ad.x ??
22.12.2017
11:06:51
сайты разные, от 24 до 100 постов на страницу (сео ебучее)
включаешь ар и охуваешь от количества потребляемой памяти. умножаешь на 250 и надо докупать оперативу

?
22.12.2017
11:08:20
если будет норм по производительности может все таки оно того стоит ?

☕ CunningFox
22.12.2017
11:08:26
+ кеш, если у тебя 1к хитов в сек, кешируй вывод
вот тебе уже и не нужна озушка

Admin
ERROR: S client not available

Ad.x ??
22.12.2017
11:10:34
кешируются массивы щас. если я начну кешировать AR объекты это будет фиаско

☕ CunningFox
22.12.2017
11:10:43
нафига тебе массивы кешировать?

Ad.x ??
22.12.2017
11:11:01
до вывода еще дожить нада. контроллер жи перед вью
чтобы небыло лишних запросов и построения этих массивов

☕ CunningFox
22.12.2017
11:11:28
контроллер ок, вернул датасет, там все лениво
дошел до вывода если есть в кеше запросов нет, возвращается из кеша
если есть, дергает из датасета модели строит и кеширует

Ad.x ??
22.12.2017
11:11:59
получается датасет + кеш

☕ CunningFox
22.12.2017
11:12:36
эктив дата провайдер лениво запросы делает

Google

☕ CunningFox
22.12.2017
11:13:09
таким образом если у тебя вью в кеше есть то никаких запросов выполняться не будет, память жраться не будет

Ad.x ??
22.12.2017
11:13:14
эктив дава провайдера нет ;D
во вью уходит готовое

☕ CunningFox
22.12.2017
11:13:14
вернет только вью из кеша
ну вот это косяк
во вью надо отдавать лениво
тогда можно фрагментарно вывод кешировать

Ad.x ??
22.12.2017
11:14:44
возможно, но сейчас так. переделывать это очень накладно. да и грид вивы всякие с лист вивами сраными совсем не подходят для фронта

☕ CunningFox
22.12.2017
11:14:50
http://www.yiiframework.com/doc-2.0/guide-caching-fragment.html

Ad.x ??
22.12.2017
11:16:22
я то могу. верстала чот не такой охуенный как я ;D

Vladislav
22.12.2017
11:22:33

Сергей
22.12.2017
11:22:53
Привет, там же вроде написано всё в ошбике)

Vladislav
22.12.2017
11:24:18
фишка в том, что работает на localhost'е а на хостинге REG ru вот такую ошибку выдаёт

Сергей
22.12.2017
11:26:29
Напиши в саппорт хостинга

Vladislav
22.12.2017
11:27:21
написал уже)
сижу жду

?
22.12.2017
11:29:13
как вариант посмотри ip и впиши айпишник

Vladislav
22.12.2017
11:35:37
через ip тоже не хотит
всё проблема решена, проблема была в htaccess

Ad.x ??
22.12.2017
13:04:26
во вью надо отдавать лениво
сижу думаю чот не то. когда сет отдаешь вроде лениво ок выглядит, а когда просто статью просматриваешь (отдельная страница) тогда туда отправляется сама модель, а не коллекция. хуйня какая-то же.
там так тут так... как-то не по феншую все это дело

☕ CunningFox
22.12.2017
13:30:13
ну все норм