лучше всего иметь минимальное количество таких преконфигурированных объектов. Поэтому мне очень нравится концепция контейнеров, как например в dry-system
но при этом круто иметь их НЕ синглтонами или модульфункциями, потому что в этом случае они будут глобальными, а иметь возможность создать инстанс — это очень полезно