В нашем приложении ColdFusion у нас есть объекты модели без сохранения состояния.
Все данные, которые я хочу получить, можно получить одним вызовом метода (он вызывает другие внутренне без сохранения состояния).
Методы обычно запрашивают данные в базе данных. Все методы доступны только для чтения, поэтому мне не нужно беспокоиться о безопасности потоков (исправьте меня, если я ошибаюсь).
Так что вообще не нужно создавать экземпляры объектов. Я мог бы вызывать их статически, но ColdFusion не имеет статических методов - вызов метода означал бы сначала создание экземпляра объекта.
Для повышения производительности я создал синглтоны для каждого объекта Model.
Пока что это прекрасно работает - каждый объект создается один раз, а затем вызывается по мере необходимости.
Теперь меня беспокоит то, что все запросы на данные будут проходить только через один объект модели.
Нужно ли мне? Я имею в виду, если на моем объекте у меня есть метод getOfferData (), и это отнимает много времени.
Что если несколько клиентов захотят получить к нему доступ?
Будет ли второй ждать завершения первого запроса или он выполняется в отдельном потоке?
В конце концов, это один и тот же объект.
Должен ли я реализовать какой-то пул объектов для этого?