精选文章 2020-08-05 ---运维工程师常见面试题整理-----篇章(一)

2020-08-05 ---运维工程师常见面试题整理-----篇章(一)

作者:Bolin-zhou 时间: 2021-02-05 09:43:09
Bolin-zhou 2021-02-05 09:43:09
【摘要】一 . Zabbix作用是什么,可以监控什么, 优化有什么,工作原理? 

Zabbix作用:监控网络主机 
监控:硬件(路由器 交换机 防火墙),系统(cpu负荷 ,内存,磁盘,网络,进程,tcp )服务(nginx,php,tomcat,redis,memcache,mysql) web(响应时间,加载时间,渲染时间) 日志(ELK,收集,存储,分析,展示)安全(firewalld) 
...

一 . Zabbix作用是什么,可以监控什么, 优化有什么,工作原理?


Zabbix作用:监控网络主机

监控:硬件(路由器 交换机 防火墙),系统(cpu负荷 ,内存,磁盘,网络,进程,tcp )服务(nginx,php,tomcat,redis,memcache,mysql) web(响应时间,加载时间,渲染时间) 日志(ELK,收集,存储,分析,展示)安全(firewalld)

Zabbix优化:1轮询器实例数量   2不可达主机  3 http轮询器子进程实例个数   4 缓存大小 5 历史缓存数据大小   6 trappers进程实例数量

工作原理Agent安装在被监控的主机上,Agent负责定期收集客户端本地各项数据,并发送至zabbix server端,zabbix server收到数据,将数据存储到数据库中,用户基于zabbix web可以看到数据在前端展现图像。  当zabbix监控某个具体的项目,项目会设置一个触发器设定的阈值,会进行一些必要的动作,动作包括:发送信息(邮件,微信,短信),发送命令(shell命令,reboot,restart,install)-------agent收集数据分为主动和被动模式:主动:agent请求server获取主动的监控项列表,并主动将监控项内需要检测的数据提交给server/proxy

被动:server向agent请求获取监控项的数据,agent返回数据。


二 .MySQL数据库与NoSQL数据库的区别、memcached与redis区别?


关系型数据库有:MySql, Orcale, SqlServer, Access

非关系型数据库(nosql)有:Hbase, MongoDBRedis

关系型数据是以行和列的形式展示,行与列的形式组织起来的数据的集合。一个数据库包括一个或多个表。比如说一个人的信息有:ID,×××,姓名,年龄,性别,住址等,这些信息都是和这个人有关系的。

非关系型数据库里面的数据是以 ”key”,”value”键值对的形式存在,key是唯一的,value值可以有多个重复的数据。

Redis 通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash/Map), 列表(list), 集合(sets) 和 有序集合(sorted sets)五种类型,一个高性能的key-value数据库;支持持久化;数据的备份。

redis提供两种方式进行持久化,一种是RDB持久化(原理是将Reids在内存中的数据库记录定时dump到磁盘上的RDB持久化),另外一种是AOF(append only file)持久化(原理是将Reids的操作日志以追加的方式写入文件)。

RDB持久化是指在指定的时间间隔内将内存中的数据集快照写入磁盘,实际操作过程是fork一个子进程,先将数据集写入临时文件,写入成功后,再替换之前的文件,用二进制压缩存储。

AOF持久化以日志的形式记录服务器所处理的每一个写、删除操作,查询操作不会记录,以文本的方式记录,可以打开文件看到详细的操作记录。

Sql和Mysql区别

  1. 成本:nosql数据库简单容易部署,基本上都是开源软件,不像oracle数据库那样收费,和关系型数据库比起来价格便宜。
  2. 查询速度:nosql数据库是将数据存储到缓存之中,关系型数据库将数据存储到硬盘中,所以nosql数据库查询速度快。
  3. 存储数据的格式:nosql的存储格式是key,value形式、文档形式等等,所以可以存储基础类型以及对象或者集合等各种格式,关系型数据库只支持基础类型。
  4. 拓展性:关系型数据库有join这个样的多表查询机制的限制导致拓展很艰难。

Redis和Memcached的不同:

Memcached是一种基于内存的key-value存储,用来存储小块的任意数据(字符串、对象),是一个简洁的key-value存储系统.

1、存储方式:

Memcached 把数据全部存在内存之中,断电后会挂掉,数据不能超过内存大小

Redis有部份存在硬盘上,这样能保证数据的持久性,支持数据的持久化(笔者注:有快照和AOF日志两种持久化方式,在实际应用的时候,要特别注意配置文件快照参数,要不就很有可能服务器频繁满载做dump)。

2、数据支持类型:

Redis在数据支持上要比Memcached多的多。

3、使用底层模型不同:

新版本的Redis直接自己构建了VM 机制 ,因为一般的系统调用系统函数的话,会浪费一定的时间去移动和请求。

4、运行环境不同:

Redis目前官方只支持LINUX 上去行,从而省去了对于其它系统的支持,这样的话可以更好的把精力用于本系统 环境上的优化,虽然后来微软有一个小组为其写了补丁。但是没有放到主干上。


 三 .MySQL主从同步的原理


   主库将变更写入 binlog 日志,然后从库连接到主库之后,从库有一个 IO 线程,将主库的 binlog 日志拷贝到自己本地,写入一个 relay 中继日志中。接着从库中有一个 SQL 线程会从中继日志读取 binlog,然后执行 binlog 日志中的内容,也就是在自己本地再次执行一遍 SQL,这样就可以保证自己跟主库的数据是一样了。


  四 .Redis实现主从工作原理


  在master和slave互通之后,<1>首先,slave会向master发送sync同步指令;<2>当Master收到指令后,将在后台启动存盘进程,同时收集所有修改的数据命令;<3>master完成后台存盘后,传递整个数据文件到slave;<4>slave接受数据文件,加载到内存中,完成首次同步,后续有新数据产生时,master继续收集数据修改命令。


  五 .keepalived高可用原理


Keepalived是一个用C语言写的路由软件,以VRRP协议为实现基础的,即虚拟路由冗余协议;由多台相同功能的路由器组成一个组,由一个master(有一个对外提供服务的vip)和多个backup组成,master会发组播,当backup收不到vrrp包是就认为master宕机了,这时需要根据VRRP优先级来选举一个backup当master。


   六  .Nginx基本优化有哪些


  1. 最大化worker_connections(1024)
  2. 启用Gzip压缩(压缩文件大小,减少了客户端http的传输带宽)
  3. 为静态文件启用缓存(减少带宽并提高性能)
  4. Timeouts
  5. 禁用access_logs
  6. 调整worker_processes

 


  七  .Nginx常见负载均衡策略及原理


轮询(每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除

;加权轮询(指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况

;ip_hash(每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器

;url_hash(按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器

;fair(按后端服务器的响应时间分配请求,响应时间短的优先分配


八 .简述linux的优化方案


【硬件方面】

1. cpu

2. 内存  (增加内存)

3. 存储 (使用RAID 0+1 读写速度快、完全容错但成本高,用的比较多 4块盘 利用率50%,使用ssd)

4. 网卡 (使用千兆网卡,或者双网卡绑定)

【系统方面 】

1. 内核参数优化(网络相关、内存相关、缓冲缓存相关)

2. 文件系统方面(分区调优,格式化时根据存储文件特性,指定合适的块大小,noatime,日志隔离,软raid,有效使用/dev/shm,关闭不必要的服务)

3. cpu优化 (进程绑定,中断绑定)

【应用程序方面】

1. nginx、apache、php-fpm、mysql、tomcat、squid等应用,是可以通过调节各个参数获得性能优化的。

2. web优化,比如可以把用户请求合并,使用cdn加速静态页访问速度,把图片文档压缩减少带宽传输,

3. 优化网站程序

【架构方面】

1. 使用简单并且稳定的架构方案

2. 多使用缓存

 

 

 

 

勿删,copyright占位
分享文章到微博
分享文章到朋友圈

上一篇:公众号榜单 | 2020·7月公众号行业排行榜重磅发布

下一篇:多标签分类问题与多类别分类

您可能感兴趣

  • 好书整理系列之-设计模式:可复用面向对象软件的基础 4

    第4章结构型模式结构型模式涉及到如何组合类和对象以获得更大的结构。结构型类模式采用继承机制来组合接口或实现。一个简单的例子是采用多重继承方法将两个以上的类组合成一个类,结果这个类包含了所有父类的性质。这一模式尤其有助于多个独立开发的类库协同工作。另外一个例子是类形式的A d a p t e r ( 4 . 1 )模式。一般来说,适配器使得一个接口( a d a p t e e的接口)与其他接...

  • 好书整理系列之-设计模式:可复用面向对象软件的基础 7

    附录A 词汇表抽象类(abstract class) 一种主要用来定义接口的类。抽象类中的部分或全部操作被延迟到其子类中实现。抽象类不能实例化。抽象耦合(abstract coupling) 若类A维护一个指向抽象类B的引用,则称类A抽象耦合于B。我们之所以称之为抽象耦合乃是因为A指向的是一个对象的类型,而不是一个具体对象。抽象操作(abstract operation) 一种声明了型构( ...

  • 常见的FTP站点资源

    说明:打+号者为推荐站点,分为三个等级+,++,+++;      打b号者为推荐书籍(book)站点;      打c号者为推荐漫画(comic)站点;      打f号者为推荐电影(film)站点;      打g号者为推荐游戏(game)站点;      打m号者为推荐音乐(music)站点;      打p号者为推荐图片(photo)站点;      打s号者为推荐软件(soft)站...

  • DirectX 8 Graphics常见错误

    DirectX Graphics 常见错误(节选)                               Richard Huddy著, nVidia Corp.                               nightmare(qingrui li)译**他们应该出现在初始化部分  小心不要让耗时昂贵的API调用出现在效率敏感部分  - ValidateDevice()...

  • 关于论坛上那个SQL微软面试题。我的解答方法 :-)

    问题: 一百个账户各有100$,某个账户某天如有支出则添加一条新记录,记录其余额。一百天后,请输出每天所有账户的余额信息   这个问题的难点在于每个用户在某天可能有多条纪录,也可能一条纪录也没有(不包括第一天) 返回的记录集是一个100天*100个用户的纪录集 下面是我的思路: 1.创建表并插入测试数据:我们要求username从1-100CREATE TABLE [dbo].[TABLE...

  • C语言常见的出错信息!

    Ambiguous operators need parentheses 不明确的运算需要用括号括起 Ambiguous symbol 'xxx' 不明确的符号 Argument list syntax error 参数表语法错误 Array bounds missing 丢失数组界限符 Array size toolarge 数组尺寸太大 Bad character in parament...

  • 微软面试题之数字谜题

    设有两个自然数m,n,2〈=m<=99。 S先生知道这两数的和s,P先生知道这两数的积p。他们两人进行了如下的对话:S:我知道你不知道这两个数是什么,但我也不知道。P:现在我知道这两个数了。S:现在我也知道这两个数了。由这些条件,试确定m,n。 因为S知道两数之和,却由此推断P不知道两个数,所以说两数之和s一定不能拆分成两个素数的和,即m,n不可能都是素数,且m,n中不会有大于50的素数,...

  • 关于NULL,nil,0(其实都知道,只不过我把他整理成册了)(一)

    关于NULL,nil,0 用过C++的Delphi的程序员都知道,C++中的NULL在Delphi中为nil,意思是空指针   在C++中 为 (void*)0 在Dlephi中 为 Pointer(0) 但是,这不是绝对,因为Handle在C++中Handle,是一个指针在Delphi中Handle,被理解为一个整数了,于是一切差别就从这里开始先看一个函数吧! CreateWindow 在...

CSDN

CSDN

中国开发者社区CSDN (Chinese Software Developer Network) 创立于1999年,致力为中国开发者提供知识传播、在线学习、职业发展等全生命周期服务。

华为云40多款云服务产品0元试用活动

免费套餐,马上领取!
2020-08-05 ---运维工程师常见面试题整理-----篇章(一)介绍:华为云为您免费提供2020-08-05 ---运维工程师常见面试题整理-----篇章(一)在博客、论坛、帮助中心等栏目的相关文章,同时还可以通过 站内搜索 查询更多2020-08-05 ---运维工程师常见面试题整理-----篇章(一)的相关内容。| 移动地址: 2020-08-05 ---运维工程师常见面试题整理-----篇章(一) | 写博客