[英]Java application object… where is it stored?
我正在考虑使用Java应用程序对象实现简单的缓存,保存一些配置变量以及一些带有常用信息的xml ...
我想知道应用程序数据的物理存储位置(系统文件,内存,数据库),如何配置以及是否存在任何限制,例如空间,并发性等。
此外,关于可伸缩性(大小和并发性)的任何其他担忧将不胜感激。
如果有人可以指点我寻找更多信息的地方,我将非常高兴...
非常感谢
对象存储在堆中。 可以通过VM的配置文件来管理间隔的堆。
构造函数调用比普通的子例程或函数调用更为复杂。 了解计算机执行构造函数调用所经过的确切步骤是有帮助的:
- 首先,计算机在堆中获取一块未使用的内存,其大小足以容纳指定类型的对象。
- 它初始化对象的实例变量。 如果实例变量的声明指定了初始值,则将计算该值并将其存储在实例变量中。 否则,将使用默认初始值。
- 评估构造函数中的实际参数(如果有),并将值分配给构造函数的形式参数。
- 如果存在,则执行构造函数主体中的语句。
- 返回对该对象的引用作为构造函数调用的值。
最终结果是您对一个新构造的对象有一个引用。 您可以使用此引用来获取该对象中的实例变量或调用其实例方法。
http://www.faqs.org/docs/javap/c5/s2.html
以下是一些虚拟机配置参数
http://www.caucho.com/resin-3.0/performance/jvm-tuning.xtp
我曾经为xml对象编写了一个Cache(以某种方式调用它们)。 具有字符串键(文件名)和对对象的引用(已解析的xml文件)的Map就足够了。 除此之外,缓存是一个单例(已同步)。 对缓存已编译的JasperReports进行了同样的操作(我在这里有了明显的提速,因为不再每次都重新编译报告)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.