4.2 JAI
Java Advanced Imaging(JAI)是由Sun Microsystems开发建立的图像处理库,而JAI
Image I/O Tools为标准Java Image I/O Framework提供了读写插件。
- 内存和切片
在处理大图像时,一般会采用切片处理的方法,即一次只处理该图像的一个子集而不将所有内容加载到内存中,这样做可以避免内存不足的问题。由于处理每一个切片的时候往往会和周围的切片一起计算,因此切片的同时需要伴随着缓存机制。但是要想完全理解这部分内容需要对JAI有一个全面的理解,而在这里将不会对JAI本身做详细介绍,下面仅简单介绍GeoServer支持的与JAI缓存机制相关的JAI参数。
-
内存容量(0-1):对于切片的内存分配,JAI提供了一个名为TileCache的接口,内存容量将全局JAI
TileCache的大小设置为可用堆(即GeoServer最大可用内存,是通过Runtime.getRuntime().maxMemory()获取的,该值在“服务器状态”页面可以看到)的百分比,即0到1之间。如果当前容量超过了内存容量,则刷新缓存中的切片以进行相应的处理。如果为切片缓存设置了较多的内存,则操作交互会更快,但切片缓存会很快被填满,如果为切片缓存设置了较少的内存,则性能会下降; -
内存阈值(0-1):设置全局JAI
TileC