zoukankan      html  css  js  c++  java
  • minio来自官方的内核优化参数

    内容来自github,还是比较有意义的

    参考

    #!/bin/bash
    cat > sysctl.conf <<EOF
    # maximum number of open files/file descriptors
    fs.file-max = 4194303
    # use as little swap space as possible
    vm.swappiness = 1
    # prioritize application RAM against disk/swap cache
    vm.vfs_cache_pressure = 50
    # minimum free memory
    vm.min_free_kbytes = 1000000
    # follow mellanox best practices https://community.mellanox.com/s/article/linux-sysctl-tuning
    # the following changes are recommended for improving IPv4 traffic performance by Mellanox
    # disable the TCP timestamps option for better CPU utilization
    net.ipv4.tcp_timestamps = 0
    # enable the TCP selective acks option for better throughput
    net.ipv4.tcp_sack = 1
    # increase the maximum length of processor input queues
    net.core.netdev_max_backlog = 250000
    # increase the TCP maximum and default buffer sizes using setsockopt()
    net.core.rmem_max = 4194304
    net.core.wmem_max = 4194304
    net.core.rmem_default = 4194304
    net.core.wmem_default = 4194304
    net.core.optmem_max = 4194304
    # increase memory thresholds to prevent packet dropping:
    net.ipv4.tcp_rmem = "4096 87380 4194304"
    net.ipv4.tcp_wmem = "4096 65536 4194304"
    # enable low latency mode for TCP:
    net.ipv4.tcp_low_latency = 1
    # the following variable is used to tell the kernel how much of the socket buffer
    # space should be used for TCP window size, and how much to save for an application
    # buffer. A value of 1 means the socket buffer will be divided evenly between.
    # TCP windows size and application.
    net.ipv4.tcp_adv_win_scale = 1
    # maximum number of incoming connections
    net.core.somaxconn = 65535
    # maximum number of packets queued
    net.core.netdev_max_backlog = 10000
    # queue length of completely established sockets waiting for accept
    net.ipv4.tcp_max_syn_backlog = 4096
    # time to wait (seconds) for FIN packet
    net.ipv4.tcp_fin_timeout = 15
    # disable icmp send redirects
    net.ipv4.conf.all.send_redirects = 0
    # disable icmp accept redirect
    net.ipv4.conf.all.accept_redirects = 0
    # drop packets with LSR or SSR
    net.ipv4.conf.all.accept_source_route = 0
    # MTU discovery, only enable when ICMP blackhole detected
    net.ipv4.tcp_mtu_probing = 1
    EOF
    echo "Enabling system level tuning params"
    sysctl --quiet --load sysctl.conf && rm -f sysctl.conf
    # `Transparent Hugepage Support`*: This is a Linux kernel feature intended to improve
    # performance by making more efficient use of processor’s memory-mapping hardware.
    # But this may cause https://blogs.oracle.com/linux/performance-issues-with-transparent-huge-pages-thp
    # for non-optimized applications. As most Linux distributions set it to `enabled=always` by default,
    # we recommend changing this to `enabled=madvise`. This will allow applications optimized
    # for transparent hugepages to obtain the performance benefits, while preventing the
    # associated problems otherwise. Also, set `transparent_hugepage=madvise` on your kernel
    # command line (e.g. in /etc/default/grub) to persistently set this value.
    echo "Enabling THP madvise"
    echo madvise | sudo tee /sys/kernel/mm/transparent_hugepage/enabled

    参考资料

    https://github.com/minio/minio/tree/master/docs/deployment/kernel-tuning

  • 相关阅读:
    Monkey稳定性测试实战之Monkey对APP随机测试
    自动化测试用例选型及手工对比自动化测试优缺点
    自动化测试如何解决验证码的问题
    Selenium家谱
    Python基础入门-数据类型
    with open
    Python开源机器学习框架:Scikit-learn六大功能,安装和运行Scikit-learn
    Python的可视化包 – Matplotlib 2D图表(点图和线图,.柱状或饼状类型的图),3D图表(曲面图,散点图和柱状图)
    python -- numpy 基本数据类型,算术运算,组合,分割 函数
    python pandas ---Series,DataFrame 创建方法,操作运算操作(赋值,sort,get,del,pop,insert,+,-,*,/)
  • 原文地址:https://www.cnblogs.com/rongfengliang/p/15216942.html
Copyright © 2011-2022 走看看