阿里云服务器使用了4核8G内存配置,但最近由于jenkins构建时执行gradle打包安卓应用,导致即时的内存严重不足,线上应用长时间无法访问。

执行free命令才发现,swap分区一直是没有创建的。两台ubuntu都是这样。阿里云服务默认没有预创建交换分区!

1.使用系统盘创建块文件

admin@ubuntu:~# dd if=/dev/zero of=/mnt/swap bs=1M count=
+ records in
+ records out
bytes (4.3 GB) copied, 69.7764 s, 61.6 MB/s

2.使用快文件创建分区

admin@ubuntu:~# mkswap /mnt/swap
Setting up swapspace version , size = KiB
no label, UUID=e7b06ac4-79c4-4d01-a5b3-6bda61866939

3.启用swap分区

admin@ubuntu:~# swapon /mnt/swap

4.查看内存状态

admin@ubuntu:~# free -h
total used free shared buffers cached
Mem: .8G .7G 131M 22M 3.9M .8G
-/+ buffers/cache: .8G .0G
Swap: .0G 0B .0G

5.设置开机自动挂载

admin@ubuntu:~# vim /etc/fstab

6.配置swap使用策略

# echo "vm.swappiness = 50"> /etc/sysctl.conf
# sysctl -p

对于swap争议

使用swap分区可以避免内存严重不足时的进程僵死现象;只要内存足够,就不会使用swap频繁读写。

一些进程是按需加载进物理内存的,比如jenkins构建,在构建进程停止后,jenkins服务占用的内存数据会被写入交换分区。下次构建时再移入物理内存。

阿里云服务器创建swap分区的更多相关文章

  1. 给阿里云主机添加swap分区,解决问题:c++: internal compiler error: Killed (program cc1plus)

    前言 今天安装spdlog,一个快速得C++日志库,按照文档步骤,不料出现了一堆错误,像c++: internal compiler error: Killed (program cc1plus)等一 ...

  2. Linux学习24-腾讯云服务器开启swap分区

    前言 最近有小伙伴买的腾讯云的1核1G入门级服务器,发现部署的服务多了后,会自动停掉一些docker的的容器. 新买的腾讯云主机没有提供Swap分区,理由是由于主机经常因为内存使用率过高,频繁使用Sw ...

  3. 阿里云主机建立SWAP分区脚本

    工具:add_swap.sh    所有执行的脚本都需要root身份来执行,执行方法:以root身执行命令:bash xxx.sh 功能:自动检测系统swap分区大小,交换分区大小不合理则自动新增并挂 ...

  4. 阿里云服务器CentOS7怎么分区格式化/挂载硬盘

    一.在阿里云上购买了服务器的硬盘后就可以操作了,先看看硬盘情况: 硬盘vda是系统盘:vdb是在阿里云后台购买的另一块硬盘. 第一次使用要分区:fdisk /dev/vdb1 在提示符下依次输入:n+ ...

  5. 阿里云云主机添加swap分区与swap性能优化

    1.swap的功能与相应内核参数 Linux 将物理内存分为内存段的部分被称作“页面”.交换是指内存页面被复制到预先设定好的硬盘空间(叫做交换空间)的过程,目的是释放用于页面的内存.物理内存和交换空间 ...

  6. 结合阿里云服务器,使用FTP上传和下载文件,出现的问题和解决方案

    一.FTP出现的问题 二.在网上找的方案 如果使用FileZilla默认设置连接ftp服务器的话可能会报以下错误: 错误: 无法建立数据连接:ECONNREFUSED - Connection ref ...

  7. 阿里云服务器linux主机如何添加swap分区

    为什么要添加Swap分区?swap分区,即交换区,作用为:当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用.那些被释放的空间可能来自一些很长时间没有什么操作 ...

  8. 阿里云centos增加swap(虚拟内存)

    我的阿里云服务器默认是没有配swap交换文件. 创建swap根目录 mkdir /swap 创建swap dd if=/dev/zero of=/swap/swap bs=1024 count=102 ...

  9. 阿里云服务器Node环境配置

    最近,将网站的阿里云服务器迁移到阿里云北京机房,记录下CentOS的迁移过程. 首次登录云服务器,要先进行用户设置. 用户设置 首先用passwd命令修改超级管理员root密码. $ passwd 根 ...

随机推荐

  1. ubuntu下安装anaconda

    1.  到官网http://continuum.io/downloads下载anaconda. 选择linux64-bit-python2.7 2.  安装anaconda,在终端输入:cd ~/Do ...

  2. Java 动态图片压缩

    今天收到领导的一个任务,说是图片太大导致服务器那边无法解析,要求图片大小大于102*126就压缩大小为102*126.同时文件是以Base64字符串的形式传过来的.具体压缩方法如下: /** * 图片 ...

  3. Go语言学习之1 基本概念、环境搭建、第一个Go程序

    一.环境搭建 见我的这篇博客 https://www.cnblogs.com/xuejiale/p/10258244.html 二.golang语言特性1. 垃圾回收    1) 内存自动回收,再也不 ...

  4. jdk8新特性:在用Repository实体查询是总是提示要java.util.Optional, 原 Inferred type 'S' for type parameter 'S' is not within its bound;

    jdk8新特性:在用Repository实体查询是总是提示要java.util.Optional 在使用springboot 方法报错: Inferred type 'S' for type para ...

  5. Wireshark 文件分割和合并

    # 捕获文件的基本信息. capinfos <filename> 从结果中可以看到 http.pcapng 捕获文件的基本信息,包括文件类型.封装.包大小限制.包数.文件大小及时间等. # ...

  6. BroadcastReceiver(广播)的静态注册和动态注册 --Android开发

    BroadcastReceiver是安卓四大组件之一,本例通过代码的方式演示静态注册和动态注册. 1.静态注册 静态注册只需要AndroidManifest.xml中进行配置: AndroidMani ...

  7. Spring Cloud之注册中心搭建

    一.注册中心服务端搭建 1)引入相关Maven坐标 <dependency> <groupId>org.springframework.cloud</groupId> ...

  8. LeetCode--326--3的幂

    问题描述: 给定一个整数,写一个函数来判断它是否是 3 的幂次方. 示例 1: 输入: 27 输出: true 示例 2: 输入: 0 输出: false 示例 3: 输入: 9 输出: true 示 ...

  9. 什么是EOS(不一样的角度看柚子)

    是时候给写写EOS了,现在EOS主网已经上线,尽管我个人不是很喜欢EOS项目(不过也一直在关注EOS),但是不可否认EOS这个争议性很大的项目给区块链世界带来的变化. 写在前面 阅读本文前,如果了解过 ...

  10. apiCloud 版本号

    应用版本号:this.appVersion = api.appVersion; 更新系版本的时候可用来比较