6. 开发运维常见问题

#开发运维常见问题

fork操作

  • 同步操作
  • 与内存量息息相关:内存越大,耗时越长(与机器类型有关)
  • info:latest_fork_usec
  • 改善fork
    • 有限使用物理机或高校支持fork操作的虚拟化技术
    • 控制Redis实例最大可用内存:maxmemory
    • 合理配置linux内存分配策略:vm.overcommit_memory=1
    • 降低fork频率:例如放宽AOF重写自动触发时机,不必要的全量复制 ##子进程开销和优化
  1. cpu

    • 开销:RDb和AOF文件生成,属于CPU密集型
    • 优化:不做CPU绑定,不和CPU密集型部署
  2. 内存
    • 开销: fork内存开销 copy-on-write
    • 优化 echo never > /sys/kernel/mm/transparent_hugepage/enabled
  3. 硬盘
    • 开销: AOF和RDB文件写入,可以借个iostat,iotop分析
    • 优化
      • 不要和高硬盘负载服务部署在一起:存储服务、消息队列等
      • no-appendfsync-no-rewrite=yes
      • 根据写入量决定磁盘类型:如SSD
      • 单机多实例持久化文件目录可以考虑分盘

AOF追加阻塞

  • 主线程 每秒刷盘

    • AOF缓冲区

      • 同步线程

        • 同步硬盘
      • 对比上次fsync时间
        • 大于2秒

          • 阻塞
        • 小于2秒
          • 通过
    • 定位错误
      • redis日志
      • aof_delayed_fsync:100

原文地址:https://www.cnblogs.com/richiewlq/p/12191268.html

时间: 2024-11-12 11:23:43

6. 开发运维常见问题的相关文章

Django开发运维后台(二):建立模型与更新数据

上一篇文章我已经新建了一个SaAdmin的APP,现在开始在这APP下面来code 1.修改setting.py的数据库连接: DATABASES = {     'default': {         'ENGINE':'django.db.backends.mysql',         'NAME': 'QjshAdmin',         'USER': 'root',         'PASSWORD': 'lihuipeng',         'HOST': 'localho

PHP开发运维管理系统笔记

开发运维管理系统采用ThinkPHP框架+mysql进行开发. 框架配置 return array(     //'配置项'=>'配置值'     'SHOW_PAGE_TRACE' => true,     //允许访问的控制器     'MODULE_ALLOW_LIST' => array('Home'),     //默认控制器     'DEFAULT_MODULE' => 'Home',     //URL模式     'URL_MODEL' => 2,     

(视频)《快速创建网站》 4.1 为啥造软件不同于造汽车,为啥是软件就一定会有Bug - 构建开发运维一体化(DevOps)

本文是<快速创建网站>系列的第9篇,如果你还没有看过之前的内容,建议你点击以下目录中的章节先阅读其他内容再回到本文.访问本系列目录,请点击:http://anb.io/blog/tag/wordpress-on-azure/ 1. 网站管理平台WordPress和云计算平台Azure简介 (6分钟视频 )2.1 在Azure上创建网站及网站运行机制 (13分钟视频)2.2 域名绑定操作和Azure负载均衡机制 (12分钟视频)2.3 WordPress 初始化和网站管理功能 (11分钟视频)3

20款开发运维必备的顶级工具

开发运维工具与软件开发领域的最佳实践密切相关,也与必要的规范密切相关.在整个开发生命周期涉及到一大批新旧工具,从规划.编码.测试.发布到监控.本文介绍你应该考虑添加到工具箱中的20种开发运维工具,供大家参考. 开发运维是那些还没有得到明确定义,就流传开来的科技时髦词之一.这种情况时不时出现,某个好的概念问世后,人们还无法实际上解释它为何物,就趋之若鹜. 所以,考虑到开发运维本身在大家的头脑中还是一片模糊,开发运维工具怎么样呢? 有必要说清一点:开发运维是开发和运维的混合体,因为它代表了开发实践方

分享老男孩自动化开发运维Python12期

本套教程共L33天,完整版!!! 目录: L001-老男孩教育-Python12期VIP视频-18节 0001-开课介绍.mp40002-同学互相介绍.mp40003-python简史介绍.mp40004-python3的新特性.mp40005-开发工具ide介绍.mp40006-helloworld程序.mp40007-变量与赋值.mp40008-用户交互.mp40009-条件判断与缩进.mp40010-循环控制.mp40011-循环次数限制.mp40012-常用数据类型.mp40013-字符

Python开发运维之路day1

一. python介绍相关 1. Python简介 Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. - Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构. - Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节.类似于PHP和Perl语言. - Python 是交互式语言: 这意味着,您可以在一个Python提示符,直接互动执行写你的程序. - Python 是面向对

使用云效在阿里云上进行一站式开发运维

导读 作为一站式企业协同研发云,云效提供从"需求->开发->测试->发布->运维->运营"端到端的协同服务和研发工具支撑.同时云效与其它常用的云产品紧密集成,提供以应用为核心的一站式研发体验.先上一张大图: 为什么需要云效来集成各个云产品? 重复的概念 目前阿里云提供了大量的优秀的云产品,比如ECS,SLB,云监控,日志服务,帮助用户进行线上服务的部署,运维,监控,告警. 但实际用起来之后,你会发现一个很明显的问题.那就是有些概念,比如机器分组,会在多个产

开发运维日常坑 总结 51-100

51.json 好多种 JsonArray fromObject = JSONArray.fromObject(list<obj>); String string = fromObject.toString(); Gson gson = new Gson(); String json = gson.toJson(list<obj>); 52.调用API //参数url化 String city = java.net.URLEncoder.encode("北京",

30岁传统运维转型开发运维

30岁的迷茫,接触的乱浅显,oracle,mysql ,linux ,Solaris,存储,光纤交换机,虚拟化,shell脚本...运维一条龙,开发开发测试UAT模拟生产.每天都在繁忙中度过,找不到自己价值,都没有深入研究时间,只是一直在应付现有的工作,想跳出这个死循环,工作时间固定.于是找一本书一个视频自学开发,对比了java ,go ,python,选择了一个和运维关系密切的python.写给自己的20181127,第一天学习,随记. 运维都应该学会开发技能.1.python:应用范围广2.