Xpages 使用托管bean的体系结构问题?

Xpages 使用托管bean的体系结构问题?,xpages,Xpages,比方说,如果我有一个应用程序,其中我保存了所有的xpage,它们之间不一定相互关联。如果我在faces配置文件中为其中一些xpage定义了几个bean,那么在不使用这些托管bean的其他xpage中,对内存和性能有什么影响?对于这个应用程序中的所有xpage,它们不是被实例化并保存在内存中(即使是空的)吗 如果是这样的话,那么将使用托管bean的相关xpage保存在他们自己的NSF中(可能共享它们)与为一个站点的所有xpage使用一个存储区相比,这是最佳实践吗 Howard这实际上取决于将它们保

比方说,如果我有一个应用程序,其中我保存了所有的xpage,它们之间不一定相互关联。如果我在faces配置文件中为其中一些xpage定义了几个bean,那么在不使用这些托管bean的其他xpage中,对内存和性能有什么影响?对于这个应用程序中的所有xpage,它们不是被实例化并保存在内存中(即使是空的)吗

如果是这样的话,那么将使用托管bean的相关xpage保存在他们自己的NSF中(可能共享它们)与为一个站点的所有xpage使用一个存储区相比,这是最佳实践吗


Howard

这实际上取决于将它们保存在内存中所使用的范围,以及使用它们的目的等等。

只有在EL/SSJS中引用时,才会构造托管bean。它的作用域定义了它何时被丢弃

所以从性能的角度来看,faces配置中定义了多少bean并不重要

不过,您必须考虑的是方法的性能。尤其是setter/getter,每个请求调用它们的次数通常更多。还要避免在请求范围bean的构造函数中出现过多的代码。也适用于内存需求-尽量不要在bean中保留大量数据(数组、映射…)


我建议将xpage拆分成更多的数据库。原因不同于bean性能-应用程序逻辑。最好将相关函数放在一起(放在单个NSF中),并与其他函数分开(不要将它们都放在同一个位置)。

假设它是viewScope或sessionScope,而bean根本没有被访问?我假设在内存中设置bean仍然会对性能造成一定的影响,内存的使用情况取决于用户的数量和作用域的类型?这是否足以考虑将这些依赖于某些bean的XPAGE放入自己的NSF中?谢谢,霍华德