Возьмём, например php. Постоянно упоминаются раздутые модели, контроллеры. Что такое раздутый, жирный, что в нём должно быть, чего не долго, где этот признак раздутости и есть ли из него исключения?
Жирный тролль бывает, а архитектурные слои/единицы бывают толстые - где тяжелая логика или много ее.
Про модели/контроллеры не скажу, а вот если на бек-енде API тупо берет данные из БД и выдает браузеру JSON, а клиентский JS уже колупается в нем и визуализирует в DOM, то это тонкий сервер, а клиент толстый, и толсто троллит юзера тормозами, если у юзера слабое железо.
Есть два подхода:
1) Толстый контроллер и тонкая модель - в этом случае вся бизнес логика находится в контроллере, а модель просто транслирует данные.
2) Тонкий контроллер и толстая модель - в этом случае вся бизнес логика находиться в модели, а в контроллере находится только связь между вью и моделью.
Оба из этих двух подходов плохи и выбирать из них не нужно. При любой возможности выделяйте логику приложения в отдельные сущности, а не в контроллер или модель, и будет вам счастье.