Server not responding

5 views
Skip to first unread message

Vaideki

unread,
Dec 11, 2009, 2:03:39 PM12/11/09
to ColdSpring-Users
We have an application with FLEX & CF8. FLEX is interacting with CF
through web services. We are using cold spring framework 1.2. It is
data intense application. Huge packets of data is sent back and forth.
When I have unto 10 users everything works perfectly. When the number
of users go beyond 30 , requests are not getting responded after 10
mins of CF restart. When I was checking the JRUN log files, It says,
Invalid invocation exception and always it complains about line 52 in
the CFC. In line 52 I have following statement.

<cfset variables.proxyId = CreateUUId() />

I found the following two threads regarding createUUID().

http://www.webapper.com/blog/index.php/2009/05/05/createuuid_friendly_function_or_server_killer/

http://www.boyzoid.com/blog/index.cfm/2005/10/5/createUUID--resource-hog


Is this causing the issue? I am not that familiar with cold spring. We
are using CF 8,0,1,195765 with JVM - 1.6.0_04 .


Any help would be appreciated.

Brian Kotek

unread,
Dec 11, 2009, 5:11:20 PM12/11/09
to coldspri...@googlegroups.com
CreateUUID() is slow on CF8 and earlier, but it would only make a difference at a very high number of method calls. How many remote service calls are being processed?




--

You received this message because you are subscribed to the Google Groups "ColdSpring-Users" group.
To post to this group, send email to coldspri...@googlegroups.com.
To unsubscribe from this group, send email to coldspring-use...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/coldspring-users?hl=en.



Vaideki

unread,
Dec 11, 2009, 5:40:25 PM12/11/09
to ColdSpring-Users
Every call to CF is remote service call. When there are 30 users,
there might be around 70 remote service calls to CF. In some
scenarios, one click might call multiple service.

On Dec 11, 5:11 pm, Brian Kotek <brian...@gmail.com> wrote:
> CreateUUID() is slow on CF8 and earlier, but it would only make a difference
> at a very high number of method calls. How many remote service calls are
> being processed?
>
> On Fri, Dec 11, 2009 at 2:03 PM, Vaideki <vaidek...@hotmail.com> wrote:
> > We have an application with FLEX & CF8. FLEX is interacting with CF
> > through web services. We are using cold spring framework 1.2. It is
> > data intense application. Huge packets of data is sent back and forth.
> > When I have unto 10 users everything works perfectly. When the number
> > of users go beyond 30 , requests are not getting responded after 10
> > mins of CF restart. When I was checking the JRUN log files, It says,
> > Invalid invocation exception and always it complains about line 52 in
> > the CFC. In line 52  I have following statement.
>
> >  <cfset variables.proxyId = CreateUUId() />
>
> >  I found the following two threads regarding createUUID().
>
> >http://www.webapper.com/blog/index.php/2009/05/05/createuuid_friendly...
>
> >  http://www.boyzoid.com/blog/index.cfm/2005/10/5/createUUID--resource-hog
>
> > Is this causing the issue? I am not that familiar with cold spring. We
> > are using CF 8,0,1,195765   with JVM - 1.6.0_04 .
>
> > Any help would be appreciated.
>
> > --
>
> > You received this message because you are subscribed to the Google Groups
> > "ColdSpring-Users" group.
> > To post to this group, send email to coldspri...@googlegroups.com.
> > To unsubscribe from this group, send email to
> > coldspring-use...@googlegroups.com<coldspring-users%2Bunsu...@googlegroups.com>
> > .

Brian Kotek

unread,
Dec 11, 2009, 7:08:21 PM12/11/09
to coldspri...@googlegroups.com
70 server calls per user? Or 70 total? Either way, it sounds like something else is wrong in the application and you're running out of threads or using up all of the memory. You probably need to try turning on the server monitor, or set up something like SeeFusion or FusionReactor and see what's happening.

One thing, are you positive that "report execution times" is unchecked in the CF administrator?

João Fernandes

unread,
Dec 12, 2009, 5:58:08 AM12/12/09
to coldspri...@googlegroups.com
Did you try to increase the number of remoting calls allowed in the CF
administrator?
--

Jo�o Fernandes

Adobe Certified Expert
Adobe Community Expert
http://www.twitter.com/joaofernandes
http://www.riapt.org
Portugal Adobe User Group (http://aug.riapt.org)



Vaideki

unread,
Dec 12, 2009, 11:28:13 AM12/12/09
to ColdSpring-Users
70 is total calls. "report execution times" is checked in CF
administrator. My request settings are a follows

10,5,30,60. # of JRUN threads is set to 160. We are using fusion
reactor to monitor it. The memory usage is high and it gets released
properly. I was trying to log GC details. I made changes in jvm
config. But it is not logging? Any idea?

IN fusion reactor it shows only the webservice name that is being
called and the execution time. All methods are exposed from one
service called pointofsalewebservice.cfc. IN each request I see only
pointofsalewebservice.cfc and the execution time in seconds. Is there
a way in fusion reactor to see the actual function name that is being
called for ex getsites() with execution time? If I can see this
details it would help me big time.






On Dec 12, 5:58 am, João Fernandes
<joaopedromartinsfernan...@gmail.com> wrote:
> Did you try to increase the number of remoting calls allowed in the CF
> administrator?
> --
>
> Jo o Fernandes
>
> Adobe Certified Expert
> Adobe Community Experthttp://www.twitter.com/joaofernandeshttp://www.riapt.org

sipa...@gmail.com

unread,
Dec 12, 2009, 11:35:26 AM12/12/09
to coldspri...@googlegroups.com
Yeah, we assumed that would be the case.

Report Execution Times is diabolical in OO and CFC based applications.

Not only are the times reported several orders of magnitude off from normalicy, but often your application will be unstable, if it works at all.

Uncheck the setting and run your application again.

--

You received this message because you are subscribed to the Google Groups "ColdSpring-Users" group.
To post to this group, send email to coldspri...@googlegroups.com.

To unsubscribe from this group, send email to coldspring-use...@googlegroups.com.


For more options, visit this group at http://groups.google.com/group/coldspring-users?hl=en.


Sent from my Verizon Wireless BlackBerry

Vaideki

unread,
Dec 12, 2009, 11:54:49 AM12/12/09
to ColdSpring-Users
One more thing I noticed. When I check the available memory it shows
between 80 - 120 MB all the time. The allocated memory 1GB and GC
getting invoked every minute. Is that right? Should I check something
else?
> For more options, visit this group athttp://groups.google.com/group/coldspring-users?hl=en.

Dan Wilson

unread,
Dec 12, 2009, 12:13:20 PM12/12/09
to coldspri...@googlegroups.com
Generally, Garbage Collection logs (if you are using JVM arguments) get put in the same directory as the jvm.config so you might want to check there.

It looks like you set the number of JRUN threads to 160. How did you come up with this number?  It seems a little high to me, but that doesn't mean it is wrong. Some applications need a lot of threads and can release them quickly. Having too many threads available to JRUN could lead to a situation where the threads are all stuck in a wait status and the processor or JVM spends too much time context switching to actually get any work done. 

However, if you see all of your threads are being released in proper time and you aren't having too many threads stuck in a wait status, 160 might very well be a fine setting. 

As to your question about garbage collection running every minute, that isn't so bad at all. You should see memory in a stable state over all. If you see peaks and valleys in your memory, that is ok, as long as memory is being released. What you do not want to see is a steady accumulation of memory and less and less memory freed up after garbage collection.

You also would not want to see Full Garbage Collections happening every few seconds. That could be an indication your server is choking. Full Garbage Collections stop all activity during the collection and nothing will process until the Full GC finished. As such, if the Full GC takes 1 second, and Full GCs happen every few seconds, the server isn't really going to do any real work, make sense?


As far as fusion reactor goes, I'm not able to help with the configuration or setup of that product myself. I've not used it in any great detail.

DW
--
“Come to the edge, he said. They said: We are afraid. Come to the edge, he said. They came. He pushed them and they flew.”

Guillaume Apollinaire quotes

Brian Kotek

unread,
Dec 12, 2009, 1:05:48 PM12/12/09
to coldspri...@googlegroups.com
As I said in my message (please read more closely going forward), report execution times MUST BE UNCHECKED. If it is checked, it will destroy the performance of a production server.
Reply all
Reply to author
Forward
0 new messages