如何设置arcgis中缓冲区大小初始化参数?
1、这些参数共同构成了可防止应客户端的请求而传输缓冲区的阈值下限。检索查询请求的数据时,达到 MINBUFOBJECTS 或 MINBUFSIZE 后才会发送缓冲区内的批量数据。一旦所有已提取的数据都被置于缓冲区,即使尚未超出这些阈值,这些数据也将被传输到客户端。首先检查 MINBUFOBJECTS。
2、MINBUFOBJECTS 是传输缓冲区被发送到整个数据流之前存储在传输缓冲区内的最小记录数。默认值是 512 条记录。该值也是最小值。Esri 测试已证明,将该参数增大到 512 以上不会带来任何性能优势。
MINBUFSIZE 不应大于 MAXBUFSIZE 的二分之一。因为将 MINBUFSIZE 设置得过高可能会延长传输缓冲区前客户端的等待时间。如果 MAXBUFSIZE 设为 64 千字节、MINBUFSIZE 设为 56 千字节,那么客户端需要等到达到 56 千字节阈值时,才会传输缓冲区发送。最小值为 4,096 字节。
3、MAXBUFSIZE 参数表示分配到各传输缓冲区的内存总量。达到 MAXBUFSIZE 后,传输缓冲区将停止累积记录,然后等待将这些记录发送到客户端的请求。增加缓冲区的大小之前,请验证服务器上的物理内存是否充足,否则可能因为页面调度过多而降低性能。例如,默认值分配给每个缓冲区 64 千字节。如果有 100 个用户建立了连接,则每个 gsrvr 进程都将包含一个共消耗 6.4 MB 系统内存的缓冲区。如果 MAXBUFSIZE 加倍,则会消耗 12.8 MB 内存。
1、为响应查询而提取数据时,ArcGIS 将检查分批数据中的行数是否满足 MINBUFOBJECTS 参数的要求。如果查询仍在处理之中,当达到 MINBUFOBJECTS 阈值(存在所需行数)并且客户端在等待数据时,数据被发送。如果未满足 MINBUFOBJECTS 的要求且数据仍在检索中,那么 ArcSDE 将检查数据的大小,以查明是否达到了 MINBUFSIZE。如果也未达到,则将继续填充缓冲区。
2、达到 MINBUFSIZE 时,如果客户端正在等待,则数据将发送给客户端。
3、如果客户端未等待且数据仍处在检索中,则将继续填充缓冲区,从而超出 MINBUFSIZE。
4、在所有被请求的数据都置于缓冲区、有客户端在等待数据或达到 MAXBUFSIZE 之前,缓冲区仍会继续填充。达到 MAXBUFSIZE 后,将停止加载缓冲区。