slo_nik, если бы у вас не было проблем с вашим простым решением, то этого поста и не было. Не обязательно использовать мое решение, но если вы потратите пару минут и посмотреть описание то сможете понять отличие в наших подходах. А если загляните глубже то сможете подсмотреть и реализацию.
slo_nik, ты можешь описать список полей которые будут валидироватся в методе `scenarios()` или добавить к некоторым валидаторам параметр `'on' => self::SCENARIO_CALC_FORM`
это уже как тебе удобнее
Но на практике проще описать список полей в `scenarios()`
А кэшить уже не модно?
При первом запросе можно закешить данные хотябы на час и "Дисковая БД" тут не причем.
Тарантул подайдет в том случае если это будет не чат, а например онлайн доска для рисования. Когда нескалько людей однавлеменно меняют состаяние произвольной точки на поли. В этом случае кеширование будет просто беспалезно.