在psf_memory和opf_memory中,我们给出了我们希望为这两个工具提供的内存池的百分比。然而,目前还不清楚如何控制内存池本身。我知道它随允许连接的数量而变化,但是是否有某种方法可以简单地给它一个具体的值,或者告诉Ingres使用固定的吉字节数作为内存池?
发布于 2014-07-11 11:43:37
在psf_memory和opf_memory中,我们给出了我们希望为这两个工具提供的内存池的百分比。
不完全是。有不止一个内存池。opf和psf是两个,还有其他的。
opf_memory和psf_memory是这些池的大小。它们是导出的参数,因此是根据其他参数计算的。要在CBF中看到它们,您必须在“配置DBMS”中选择“派生”菜单项。正如您所说,它们的主要值是连接会话。但是,与所有派生参数一样,如果您愿意,可以直接更改它们。如果你这样做了,那么保护他们是个好主意,当其他事情发生变化时,阻止他们重新计算。
百分比参数- opf_maxmemf和psf_maxmemf -是允许单个会话的内存量。因此,如果您的opf_memory是120米,但是opf_maxmemf是50,那么任何一个会话都不能使用超过60M的opf内存( 120M的50%)。
您可以查看用于派生参数的规则,它们位于*.crs文件中的$II_SYSTEM\ingres\files中。例如,在dbms.crs中,您将看到:
ii.$.dbms.$.opf_memory: 20M + (256K * ii.$.dbms.$.opf_active_limit),
MIN = 1M, SIZETYPE;这意味着,对于每个活动会话,opf_memory计算为20M +265 k-- opf_active_limit本身就是从connect_limit派生的。有一个最小值为1M,它是一个SIZETYPE值(整数)--这意味着如果您自己设置它,CBF不会让您输入更小的值或小数。
保尔
https://stackoverflow.com/questions/24673294
复制相似问题