首页 文章 精选 留言 我的

精选列表

搜索[内存优化],共10000篇文章
优秀的个人博客,低调大师

Docker内核参数优化

对于docker container的调优还是和普通的Linux调优有很大的区别 修改最大文件数(open files) 直接修改 container的 /etc/security/limits.conf无效 正确的做法是(以CentOS host为例) 在host上执行 sudo sh -c 'printf "\nulimit -HSn 999999\n" >> /etc/sysconfig/docker' sudo service docker restart 这样再进入docker container, ulimit -a就可以看到更改了 [root@f258c7598394 /]# ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 7810 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 999999 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 10240 cpu time (seconds, -t) unlimited max user processes (-u) 7810 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited 对于Ubuntu请参考此文 修改tcp/ip变量(sysctl) 如果docker container是以 –net=”host” 方式启动的,那么container和host共用同一个网络堆栈,只需要修改host的配置 sudo sh -c 'printf "\nnet.ipv4.ip_local_port_range = 1024 65535\n" >> /etc/sysctl.conf'; sudo sh -c 'printf "net.ipv4.tcp_tw_recycle = 1\n" >> /etc/sysctl.conf'; sudo sh -c 'printf "net.ipv4.tcp_tw_reuse = 1\n" >> /etc/sysctl.conf'; sudo sh -c 'printf "net.core.rmem_max = 16777216\n" >> /etc/sysctl.conf'; sudo sh -c 'printf "net.core.wmem_max = 16777216\n" >> /etc/sysctl.conf'; sudo sh -c 'printf "net.ipv4.tcp_max_syn_backlog = 4096\n" >> /etc/sysctl.conf'; sudo sh -c 'printf "net.ipv4.tcp_syncookies = 1\n" >> /etc/sysctl.conf'; sudo sh -c 'printf "net.core.somaxconn = 1024\n" >> /etc/sysctl.conf'; sudo sh -c 'printf "net.ipv4.tcp_window_scaling = 1\n" >> /etc/sysctl.conf'; sudo sh -c 'printf "net.ipv4.tcp_rmem = 4096 87380 16777216\n" >> /etc/sysctl.conf'; sudo sh -c 'printf "net.ipv4.tcp_wmem = 4096 16384 16777216\n" >> /etc/sysctl.conf'; sudo sysctl -p; 然后重启docker container生效。 如果docker container不是以 –net=”host” 方式启动的,那么它将有自己独立的网络堆栈。修改host的配置将会无效。在container中又无法直接修改/proc,因为docker会以只读的方式重新挂载/proc/sys。 对于这个问题,可以在container启动的时候将/proc挂载到另一可读写位置,譬如 docker run -ti -v /proc:/writable-proc ubuntu:14.04 /bin/bash 1 然后就可以在container内部进行修改了 echo 1024 65535 > /writable-proc/sys/net/ipv4/ip_local_port_range echo 1 > /writable-proc/sys/net/ipv4/tcp_tw_recycle echo 1 > /writable-proc/sys/net/ipv4/tcp_tw_reuse echo 4096 > /writable-proc/sys/net/ipv4/tcp_max_syn_backlog echo 1 > /writable-proc/sys/net/ipv4/tcp_syncookies echo 1 > /writable-proc/sys/net/ipv4/tcp_window_scaling echo 4096 16384 16777216 > /writable-proc/sys/net/ipv4/tcp_wmem echo 4096 87380 16777216 > /writable-proc/sys/net/ipv4/tcp_rmem echo 16777216 > /writable-proc/sys/net/core/rmem_max echo 16777216 > /writable-proc/sys/net/core/wmem_max echo 1024 > /writable-proc/sys/net/core/somaxconn echo 999999 > /writable-proc/sys/fs/file-max 然后在container中可以查看到修改生效 cat /proc/sys/net/ipv4/ip_local_port_range cat /proc/sys/net/ipv4/tcp_tw_recycle cat /proc/sys/net/ipv4/tcp_tw_reuse cat /proc/sys/net/ipv4/tcp_max_syn_backlog cat /proc/sys/net/ipv4/tcp_syncookies cat /proc/sys/net/ipv4/tcp_window_scaling cat /proc/sys/net/ipv4/tcp_wmem cat /proc/sys/net/ipv4/tcp_rmem cat /proc/sys/net/core/rmem_max cat /proc/sys/net/core/wmem_max cat /proc/sys/net/core/somaxconn cat /proc/sys/fs/file-max 需要注意的是,如果内核版本过低(<3.12), 有些参数是无法修改的 本文转自 南非波波 51CTO博客,原文链接:http://blog.51cto.com/nanfeibobo/1716792,如需转载请自行联系原作者

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册