The JVM can only use a maximum of 2GB on a 32bit system, on 64bit systems
this isn't the case.
Railo is generally less of a memory hog than Adobe CF, so thats good.

What type of railo install is this, railo express or deployed on tomcat or
other servlet container ?
Are you seeing any specific errors that you think are related to lack of
memory?

Chris

On 23 July 2010 21:42, jeff <[email protected]> wrote:

>
> On Jul 23, 12:36 pm, Dan Wilson <[email protected]> wrote:
> > Interesting Idea. You should be able to make this work, assuming the
> > following:
> >
> > 1- You are on 64 Bit with good memory
>
> Why would it need to be 64 bit.  I'm currently running 2gb ram.  not
> sure if 32 or 64 bit. why would that matter.
>
> > 2- You've tuned your JVM (the stock CF settings won't work for you)
>
> Aha, and I have no idea how to do that.  Also I am running railo if
> that matters.
>
> >
> > Another idea would be to wrap up the specifics of the domain into a CFC
> > called CurrentDomainLoader.  This would be a CFC with only one method
> that
> > returns the current domain for the current request.
> >
> > You'd then be able to call this CFC whenever you need the domain to
> service
> > a request. That way, everything pipes through a single CFC base, and your
> > CurrentDomainLoader handles loading the specificity for the current
> request.
> >
> > DW
> >
> >
> >
> > On Fri, Jul 23, 2010 at 2:27 PM, jeff <[email protected]> wrote:
> > > As my application scales, my ram keeps getting eaten up.  And based on
> > > the traffic coming to the server, I wonder If my architecture needs
> > > some adjustment to function better.
> >
> > > Basically this is how things work:
> > > There are lots of domains all configured to use this same model-glue
> > > application.  The magic happens in the init() function in the
> > > controller where I figure out which domain is being loaded, and then I
> > > load ALL the cfcs into the variables scope like this:
> >
> > > <cffunction name="Init" access="Public" returnType="Controller"
> > > output="false" hint="I build a new SampleController">
> > >  <cfargument name="ModelGlue" required="true"
> > > type="ModelGlue.ModelGlue" />
> > >  <cfargument name="InstanceName" required="true" type="string" />
> > >  <cfset super.Init(arguments.ModelGlue) />
> > > <!--- Turns out we don't need this after all.  We'll keep it here just
> > > in case we do down the road.
> > >        <!--- get the model glue coldspring global config bean --->
> > >        <cfset var mgConfig =
> > > getModelGlue().getBean("modelGlueConfiguration") />
> > >        <!--- grab the variables we'll need to reload the site. (this is
> > > used
> > > when resetting themes!) --->
> > >        <cfset variables.reloadKey = mgConfig.getReloadKey() />
> > >        <cfset variables.getReloadPassword =
> mgConfig.getReloadPassword() />
> > >  --->
> >
> > >        <!--- Get all of our app settings --->
> > >        <cfset var appSettings = getModelGlue().getBean("appSettings")
> />
> >
> > >        <!--- load config settings here --->
> > >        <cfset variables.dsn = appSettings.getConfigSetting("dsn") />
> >
> > >        <!--- Load up the site configuration settings here --->
> > >        <cfset variables.siteSettingsCFC = createObject("component",
> > > "model.siteSettings").init(variables.dsn,cleanURL(CGI.SERVER_NAME)) />
> > >        <cfset variables.siteID = variables.siteSettingsCFC.getSiteID()
> />
> >
> > >        <!--- database interaction CFCS --->
> > >        <cfset variables.exampleCFC = createObject("component",
> > > "model.example").init(variables.dsn,variables.siteID) />
> > >        <cfset variables.exampleCFC = createObject("component",
> > > "model.example").init(variables.dsn,variables.siteID) />
> > >        <cfset variables.exampleCFC = createObject("component",
> > > "model.example").init(variables.dsn,variables.siteID) />
> > >        <cfset variables.exampleCFC = createObject("component",
> > > "model.example").init(variables.dsn,variables.siteID) />
> > >        <cfset variables.exampleCFC = createObject("component",
> > > "model.example").init(variables.dsn,variables.siteID) />
> > >        <cfset variables.exampleCFC = createObject("component",
> > > "model.example").init(variables.dsn,variables.siteID) />
> > >        <cfset variables.exampleCFC = createObject("component",
> > > "model.example").init(variables.dsn,variables.siteID) />
> > >        <cfset variables.exampleCFC = createObject("component",
> > > "model.example").init(variables.dsn,variables.siteID) />
> > >        <cfset variables.exampleCFC = createObject("component",
> > > "model.example").init(variables.dsn,variables.siteID) />
> > >        <cfset variables.exampleCFC = createObject("component",
> > > "model.example").init(variables.dsn,variables.siteID) />
> > >        <cfset variables.exampleCFC = createObject("component",
> > > "model.example").init(variables.dsn,variables.siteID) />
> > >        <cfset variables.exampleCFC = createObject("component",
> > > "model.example").init(variables.dsn,variables.siteID) />
> > >        <cfset variables.exampleCFC = createObject("component",
> > > "model.example").init(variables.dsn,variables.siteID) />
> > >        <cfset variables.exampleCFC = createObject("component",
> > > "model.example").init(variables.dsn,variables.siteID) />
> >
> > >  <cfreturn this />
> > > </cffunction>
> >
> > > -------------------------
> >
> > > After this occurs we basically have an isolated model-glue application
> > > loaded for each domain, which makes it easy to keep all the data
> > > separate.  But I am now wondering if this is eating up all the memory
> > > and there is a better way to design my application; perhaps creating
> > > the objects on demand instead of instantiating them into memory in the
> > > init().
> >
> > > --
> > > Model-Glue Sites:
> > > Home Page:http://www.model-glue.com
> > > Documentation:http://docs.model-glue.com
> > > Bug Tracker:http://bugs.model-glue.com
> > > Blog:http://www.model-glue.com/blog
> >
> > > You received this message because you are subscribed to the Google
> > > Groups "model-glue" group.
> > > To post to this group, send email to [email protected]
> > > To unsubscribe from this group, send email to
> > > [email protected]<model-glue%[email protected]>
> <model-glue%[email protected]<model-glue%[email protected]>
> >
> > > For more options, visit this group at
> > >http://groups.google.com/group/model-glue?hl=en
> >
> > --
> > William Osler - "We are here to add what we can to life, not to get what
> we
> > can from life."
>
> --
> Model-Glue Sites:
> Home Page: http://www.model-glue.com
> Documentation: http://docs.model-glue.com
> Bug Tracker: http://bugs.model-glue.com
> Blog: http://www.model-glue.com/blog
>
> You received this message because you are subscribed to the Google
> Groups "model-glue" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]<model-glue%[email protected]>
> For more options, visit this group at
> http://groups.google.com/group/model-glue?hl=en
>

-- 
Model-Glue Sites:
Home Page: http://www.model-glue.com
Documentation: http://docs.model-glue.com
Bug Tracker: http://bugs.model-glue.com
Blog: http://www.model-glue.com/blog

You received this message because you are subscribed to the Google
Groups "model-glue" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/model-glue?hl=en

Reply via email to