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
