附錄 Netty參數配置表

附錄A Netty參數配置表

  1. 內存池堆內存內存區域的個數,默認Math.min(runtime.availableProcessors(),Runtime.getRuntime().maxMemory()/defaultChunkSize/2/3)
    • -Dio.netty.allocator.numHeapArenas
  2. 內存池直接內存內存區域的個數,默認Math.min(runtime.availableProcessors(),Runtime.getRuntime().maxMemory()/defaultChunkSize/2/3)
    • -Dio.netty.allocator.numDirectArenas
  3. 一個page的內存大小,默認值8192
    • -Dio.netty.allocator.pageSize
  4. 用於計算內存池中一個Chunck內存的大小:默認11,計算公式:1Chunck=8192 << 11 = 16MB
    • -Dio.netty.allocator.maxOrder
  5. 一個Chunck內存的大小,如果沒有配置,默認值爲pageSize << maxOrder = 16M
    • -Dio.netty.allocator.chunkSize
  6. Netty的JDK SelectionKey優化開關,默認關閉
    • -Dio.netty.onKeySetOptimization
  7. 重建selector的閥值,修復JDK NIO多路複用器死循環問題,默認值512
    • -Dio.netty.selectorAutoRebuildThreshold
  8. 線程本地變量直接內存緩衝區大小,默認64KB
    • -Dio.netty.threadLocalDirectBufferSize
  9. 用戶設置的機器id,默認會使用mac地址自動生成
    • -Dio.netty.machineId
  10. 用戶設置的流程ID,默認會使用隨機數生成
    • -Dio.netty.processId
  11. Reactor線程NioEventLoop的個數,默認值CPU個數*2
    • -Dio.netty.eventLoopThreads
  12. 是否使用JDK Zlib壓縮解碼器,默認不使用
    • -Dio.netty.noJdkZlibDecoder
  13. 是否運行通過底層api直接訪問直接內存,默認:允許
    • -Dio.netty.noPreferDirect
  14. 是否允許使用sun.misc.Unsafe,默認:允許;注意:使用sun的私有類庫存在平臺移植問題,另外sun.misc.Unsafe類是不安全的,如果操作失敗,不是拋出異常,而是虛擬機core dump,不建議使用Unsafe
    • -Dio.netty.noUnsafe
  15. 是否允許使用Javassist類庫,默認:允許
    • -Dio.netty.noJavassist
  16. 本地線程相關的隨機種子初始值,默認:0
    • -Dio.netty.initialSeedUniquifire
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章