У меня есть CFC, который обрабатывает сообщения, сделанные пользователями. Некоторая обработка включает в себя обработку изображений и текста, о которых я прошу другой cfc с именем imagehandler.cfc
и (еще предстоит сделать) texthandler.cfc
, чтобы позаботиться.
В моем post.cfc
я выполняю следующий вызов, когда предоставляется изображение обложки, которое передается с использованием AJAX:
<cfinvoke component="pathtofolder.imagehandler" method="CoverImage" argumentcollection="#VARIABLES#">
<cfinvokeargument name="Argument1" value="#SomeValue#" />
<cfinvokeargument name="Argument2" value="#SomeValue#" />
<cfinvokeargument name="Argument3" value="#SomeValue#" />
</cfinvoke>
Тогда, если пользователь разместит какие-либо встроенные изображения, мне нужно будет вызвать это при отправке второй формы, снова используя AJAX:
<cfinvoke component="pathtofolder.imagehandler" method="InlineImage" argumentcollection="#VARIABLES#">
<cfinvokeargument name="Argument1" value="#SomeValue#" />
<cfinvokeargument name="Argument2" value="#SomeValue#" />
<cfinvokeargument name="Argument3" value="#SomeValue#" />
</cfinvoke>
Я бы также назвал это, если бы текст был представлен:
<cfinvoke component="pathtofolder.texthandler" method="PostText" argumentcollection="#VARIABLES#">
<cfinvokeargument name="Argument1" value="#SomeValue#" />
<cfinvokeargument name="Argument2" value="#SomeValue#" />
<cfinvokeargument name="Argument3" value="#SomeValue#" />
</cfinvoke>
Все вышеперечисленное происходит в одном сообщении, но в течение дня можно отправлять сотни или тысячи сообщений.
Безопасно ли продолжать использовать cfinvoke таким образом? Я бы поместил CFC в область APPLICATION, но эта область уже полна экземпляров других CFC, которые часто используются. Я не могу поместить его в область SESSION, и если я добавлю его в область REQUEST, он все равно умрет после каждой частичной отправки сообщения (сначала изображение обложки, затем встроенные изображения, затем текст и т. Д.).
Есть ли лучший способ сделать это?