One easy way to improve performance a lot

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

One easy way to improve performance a lot

Daniel Sun
Hi all,

I found more than 90% time is spent in compiling.
So I think caching these latest compiled groovy class will improve performance a lot.
The cache pool should be provided with gdk and instance of the pool should be store in a Thread which is started when we run our application.

pseudocode as follows:
find the requested class from cache.
if (the class is cached) {
  if (modifying timestamp of groovy script file  >  modifying timestamp of class's groovy script file  which is also in the cache) {
    recompile the groovy script file and cache it
  }
} else {
  compile the groovy script file and cache it
}
return the requested class

Best regards,
Daniel.Sun
Reply | Threaded
Open this post in threaded view
|

Re: One easy way to improve performance a lot

Jochen Theodorou
Daniel.Sun schrieb:

> Hi all,
>
> I found more than 90% time is spent in compiling.
> So I think caching these latest compiled groovy class will improve
> performance a lot.
> The cache pool should be provided with gdk and instance of the pool should
> be store in a Thread which is started when we run our application.
>
> pseudocode as follows:
> find the requested class from cache.
> if (the class is cached) {
>   if (modifying timestamp of groovy script file  >  modifying timestamp of
> class's groovy script file  which is also in the cache) {
>     recompile the groovy script file and cache it
>   } else {
>     return the requested class
>   }
> } else {
>   compile the groovy script file and cache it
>   return the requested class
> }

that's how it is working, or not?

bye blackdrag

--
Jochen "blackdrag" Theodorou
Groovy Tech Lead (http://groovy.codehaus.org)
http://blackdragsview.blogspot.com/

---------------------------------------------------------------------
To unsubscribe from this list please visit:

    http://xircles.codehaus.org/manage_email

Reply | Threaded
Open this post in threaded view
|

Re: One easy way to improve performance a lot

Daniel Sun
Yeah, now I'm using JSR223 Groovy-Engine which can cache scripts, so I don't care whether Groovy will cache scripts or not :)
Thanks for your response :)
Jochen Theodorou wrote
Daniel.Sun schrieb:
> Hi all,
>
> I found more than 90% time is spent in compiling.
> So I think caching these latest compiled groovy class will improve
> performance a lot.
> The cache pool should be provided with gdk and instance of the pool should
> be store in a Thread which is started when we run our application.
>
> pseudocode as follows:
> find the requested class from cache.
> if (the class is cached) {
>   if (modifying timestamp of groovy script file  >  modifying timestamp of
> class's groovy script file  which is also in the cache) {
>     recompile the groovy script file and cache it
>   } else {
>     return the requested class
>   }
> } else {
>   compile the groovy script file and cache it
>   return the requested class
> }

that's how it is working, or not?

bye blackdrag

--
Jochen "blackdrag" Theodorou
Groovy Tech Lead (http://groovy.codehaus.org)
http://blackdragsview.blogspot.com/

---------------------------------------------------------------------
To unsubscribe from this list please visit:

    http://xircles.codehaus.org/manage_email