自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 收藏
  • 关注

转载 VLAN原理解释(超详细)

为什么需要VLAN1. 什么是VLAN?VLAN(Virtual LAN),翻译成中文是“虚拟局域网”。LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成的企业网络。VLAN所指的LAN特指使用路由器分割的网络——也就是广播域。在此让我们先复习一下广播域的概念。广播域,指的是广播帧(目标MAC地址全部为1)所能传递到的范围,亦即能够直接通信的范围。严格地说,并不仅仅是广播帧,多播帧(Multicast Frame)和目标不明的单播帧(Unknown Unicast Frame)也

2020-06-10 11:40:45 6713 5

原创 LINUX中如何查看某个端口是否被占用

之前查询端口是否被占用一直搞不明白,问了好多人,终于搞懂了,现在总结下:1.netstat -anp |grep 端口号如下,我以3306为例,netstat -anp |grep 3306(此处备注下,我是以普通用户操作,故加上了sudo,如果是以root用户操作,不用加sudo即可查看),如下图1:图1中主要看监控状态为LISTEN表示已经被占用,最后一列显示被服务mys...

2020-02-05 17:41:45 184

转载 zabbix监控tomcat多实例

zabbix监控tomcat多实例(自动发现,主动模式)实验背景笔者同一台服务器运行三个java api接口,需要监控tomcat 服务状态,很多监控项的情况下一个个添加很烦,笔者使用自动发现功能,已监控tomcat线程为例。系统CentOS7,zabbix 3.0.x创建发现服务器上面运行tomcat的 tomcat目录名称的脚本脚本可以自动发现tomcat的目录名称(一般自定义...

2020-01-09 09:52:54 309

转载 zabbix 配置监控项和web监控

我使用zabbix的模式是 zabbix agent + zabbix server 的模式。这篇博客的目的就是记录一下,如何配置一个简单的监控项,监控我门服务器的某个指标。在开始之前要清楚zabbix 主要内容。zabbix 中有 配置主机(host)、监控指标(item)、监控项阀值(trigger)、监控被触发的动作(action)、发送告警的媒介(media type)。item 是一...

2020-01-09 09:09:07 805

转载 记一次 Kafka 集群线上扩容

排查问题与分析接到用户的反馈后,我用脚本测试了一遍,并对比了另外一个正常的 Kafka 集群,发现耗时确实很高,接下来经过排查,发现有客户端在频繁断开与集群节点的连接,发现日志频繁打印如下内容:Attempting to send response via channel for which there is no open connection, connection id xxx(kaf...

2020-01-08 10:00:58 1427

转载 Mysql 查看连接数,状态 最大并发数

Mysql 查看连接数,状态 最大并发数(赞)Mysql 查看连接数,状态 最大并发数(赞)– show variables like ‘%max_connections%’; 查看最大连接数set global max_connections=1000 重新设置mysql> show status like ‘Threads%’;±------------------±-----...

2020-01-08 08:56:11 187

原创 GitLab版本管理

https://blog.csdn.net/weixin_45741538?t=1

2020-01-07 14:44:11 142

原创 IT运维监控解决方案介绍

现状•小公司/ 创业团队< 500台服务器规模开源方案:Zabbix、Nagios、Cacti…云服务提供商:监控宝、oneAlert等•BAT级别> 10万台服务器投入大量的人力,内部自研,与业务严重耦合没法作为产品推出•中间阶层无从可选早期,选用Zabbix•Zabbix是一款开源的企业级监控系统•对其进行二次开发、封装、调优…•为什么选择Zabb...

2020-01-07 13:55:10 1383

原创 互联网直播平台架构案例一

直播平台整体架构视频直播链路视频流转换成不同清晰度不同的端,不同的网络环境,需要不同码率,以保流畅播放器的基本实现SDK在播放器上做层管理视频相关技术细节消息发送流程不同消息通道的优劣对比心跳及房间结构用户按需分桶固定分桶与按需分桶对比关键词及垃圾文本过滤大促风险控制平台化的挑战希望对您系统架构与研发管理体系, 信息安全等有帮助。...

2020-01-07 13:43:25 360 1

原创 主动编程与被动编程

1、被动编程。  就好比对日外包的项目,不是太了解,只是有所耳闻。听说日本公司那面会发过来一份(也许用一批更好一些)很详细的文档,里面的内容就是编写代码的详细的要求,会非常非常的详细,细到一个页面里面放置列表页面显示那些信息,一页多少条记录、表单里面放多少个控件,以及控件的ID、类型、大小、等等信息。不管对日外包的项目里的文档会不会写得这么细了,毕竟我是没有看到,只是猜想。只是说如果程序说明文...

2020-01-04 09:09:09 212

原创 ELK创建索引配置

LK需要收集多种类型日志,并且在kibana分开使用不同索引相关配置**logstash分别收集tomcat,nginx日志**input { beats { port => 5044 }}filter { #根据type字段来区分日志,在filebeat配置字段为 document_type if [type] == "nginx" { gro...

2020-01-04 09:02:29 3192

原创 CPU负载过高异常排查实践与总结

问题背景昨天下午看到数据平台服务器cpu利用率达到了98.94%,而且最近一段时间一直持续在70%以上,看起来像是硬件资源到瓶颈需要扩容了,但仔细思考就会发现咱们的业务系统并不是一个高并发或者CPU密集型的应用,这个利用率有点太夸张,硬件瓶颈应该不会这么快就到了,一定是哪里的业务代码逻辑有问题。1、排查思路1.1 定位高负载进程首先登录到服务器使用top命令确认服务器的具体情况,根据具体情...

2020-01-04 08:53:27 466

原创 DNS原理总结及其解析过程详解

1.域名系统概述域名系统DNS(Domain Name System)是因特网使用的命名系统,用来把便于人们使用的机器名字转换成为IP地址。域名系统其实就是名字系统。为什么不叫“名字”而叫“域名”呢?这是因为在这种因特网的命名系统中使用了许多的“域(domain)”,因此就出现了“域名”这个名词。“域名系统”明确地指明这种系统是应用在因特网中。我们都知道,IP地址是由32位的二进制数字组成的。...

2020-01-03 15:49:27 146

转载 Redis常见面试题(带答案)

缓存知识点缓存有哪些类型?缓存是高并发场景下提高热点数据访问性能的一个有效手段,在开发项目时会经常使用到。缓存的类型分为:本地缓存、分布式缓存和多级缓存。本地缓存:本地缓存就是在进程的内存中进行缓存,比如我们的 JVM 堆中,可以用 LRUMap 来实现,也可以使用 Ehcache 这样的工具来实现。本地缓存是内存访问,没有远程交互开销,性能最好,但是受限于单机容量,一般缓存较小且无...

2019-12-26 11:25:59 210

转载 Redis双写一致性、并发竞争、线程模型

那提到Redis我相信各位在面试,或者实际开发过程中对基本类型的使用场景,并发竞争带来的问题,以及缓存数据库双写入一致性的问题等,我们有请下一位受害者。面试开始一个大腹便便,穿着格子衬衣的中年男子,拿着一个满是划痕的mac向你走来,看着快秃顶的头发,心想着肯定是尼玛顶级架构师吧!但是我们腹有诗书气自华,虚都不虚。(这不是第一篇文章的面试官么?)小伙子,你还记得我在第一章里面问过你,Re...

2019-12-26 10:30:39 178

原创 Redis哨兵、持久化、主从、手撕LRU

大家都知道一个技术的引入方便了开发,解决了各种问题,但是也会带来对应的问题,技术是把双刃剑嘛,集群的引入也会带来很多问题,如:集群的高可用怎么保证,数据怎么同步等等面试开始三个大腹便便,穿着格子衬衣的中年男子,拿着三个满是划痕的mac向你走来,看着快秃顶的头发,心想着肯定是尼玛顶级架构师吧!而且还是三个,但是还好我看过敖丙写的《吊打面试官》系列,腹有诗书气自华,根本虚都不虚好伐。小伙子...

2019-12-26 09:43:16 156

原创 缓存雪崩、击穿、穿透

正文上一期吊打系列我们提到了Redis的基础知识,还没看的小伙伴可以回顾一下那提到Redis我相信各位在面试,或者实际开发过程中对缓存雪崩,穿透,击穿也不陌生吧,就算没遇到过但是你肯定听过,那三者到底有什么区别,我们又应该怎么去防止这样的情况发生呢,面试开始一个大腹便便,穿着格子衬衣的中年男子,拿着一个满是划痕的mac向你走来,看着快秃顶的头发,心想着肯定是尼玛顶级架构师吧!但是我们腹有...

2019-12-24 11:16:22 100

原创 Redis基础知识

前言Redis在互联网技术存储方面使用如此广泛,几乎所有的后端技术面试官都要在Redis的使用和原理方面对小伙伴们进行360°的刁难面试开始一个大腹便便,穿着格子衬衣的中年男子,拿着一个满是划痕的mac向你走来,看着快秃顶的头发,心想着肯定是尼玛顶级架构师吧!但是我们腹有诗书气自华,虚都不虚。小伙子您好,看你简历上写了你项目里面用到了Redis,你们为啥用Redis?心里忍不住暗骂...

2019-12-24 10:57:07 81

原创 数据库优化 - SQL优化

判断问题SQL判断SQL是否有问题时可以通过两个表象进行判断:系统级别表象CPU消耗严重IO等待严重页面响应时间过长应用的日志出现超时等错误可以使用sar命令,top命令查看当前系统状态。也可以通过Prometheus、Grafana等监控工具观察系统状态。SQL语句表象冗长执行时间过长从全表扫描获取数据执行计划中的rows、cost很大冗长的SQ...

2019-12-20 11:34:47 90

原创 子网掩码计算方法

很多从事计算机行业的人都了解子网掩码这种技术,这也是一种很好用的提高ip地址的分配方式。但是不少刚进入IP行业的人不知道该如何操作这种技术,所以说子网掩码计算方式是什么呢?子网掩码是一种再ip地址不多或者缺少的情况下,科技人员为了解决ip地址这个资源的紧缺而将ip地进行分配而产生的技术。这个技术说起来很简单,就是用子网掩码这种技术把ip地址分为很多个子网,这样一来就能够提高ip地址的分配,从而...

2019-12-20 09:50:31 6134 1

原创 Nginx 原理和架构

Nginx 是一个免费的,开源的,高性能的 HTTP 服务器和反向代理,以及 IMAP / POP3 代理服务器。Nginx 以其高性能,稳定性,丰富的功能,简单的配置和低资源消耗而闻名。Nginx 的整体架构Nginx 里有一个 master 进程和多个 worker 进程。master 进程并不处理网络请求,主要负责调度工作进程:加载配置、启动工作进程及非停升级。worker 进程负责处...

2019-12-16 11:31:56 73

原创 Tomcat线程数占满而导致的运维事故

故障表现Tomcat访问报500错误,无法对外提供服务。多个Tomcat服务异常。排查过程查看系统资源,内存有小量上涨,CPU、带宽等负载显著下降,TCP连接数处于ESTABLISHED状态的数据没有显明变化,但非ESTABLISHED状态的数量大量减少。第一时间先上重启服务大法。重启后能短暂提供服务,但是马上又回到卡死状态。使用jstack看到有很多进程卡在网络访问。同时有应用日志报某...

2019-12-12 16:43:38 2181

原创 运维流程

运维流程随着企业的发展壮大,业务系统和服务器数量的增多,需要建立完善而成熟的IT运维管理体制,通过流程管理,不断提高IT运维质量,实现高效运维,提升组织内IT服务满意度,实现运维自动化管理,特建立此流程制度。运维内部流程1、 根据业务上架,研发、测试、产品等部门的需求采用硬件采购机房选型流程;2、 鉴于所有服务器采用redhat EL5(Centos5)系统,采用系统安装规范;3、 根据...

2019-12-12 13:36:26 3674

原创 rsync算法原理及使用

如果服务器之间需要保持某些文件的一致,我们可以使用scp来复制,如果需要长期保持一致,可以配合crontab脚本来使用。但是此时我们有更优的方式,就是rsync+crontab来实现定时增量传输保持文件一致。rsync功能很强大,网上的资料也都很全,这里做一些简单的汇总。rsync原理这一小节内容大幅度转载了 RSYNC 的核心算法 的内容,因为原文章写的太好,就不再狗尾续貂了,感兴趣的可...

2019-12-02 15:08:53 404

原创 真正的inotify+rsync实时同步 彻底告别同步慢

我们公司在用inotify+rsync做实时同步,来解决分布式集群文件一致性的问题。但当web文件越来越多(百万级数量html,jpg等小 文件),同步就越来越慢,根本做不到实时,按照网上的调优方法都尝试过,问题根本没有解决。经过我一翻细致研究,终于把慢的核心问题研究明白,先总结一句 inotifywait响应不会有延迟,rsync也很快。大家同样有慢的烦恼,那是因为网上的inotify+rsyn...

2019-11-30 11:52:28 138

原创 Linux上的TIME_WAIT和tcp_fin_timeout

当Linux服务器的TIME_WAIT过多时,通常会想到去修改参数降低TIME_WAIT时长,以减少TIME_WAIT数量,但Linux并没有提供这样的接口,除非重新编译内核。Linux默认的TIME_WAIT时长一般是60秒(等于2MSL),定义在内核的include/net/tcp.h文件中:#define TCP_TIMEWAIT_LEN (60HZ)/ how long to...

2019-11-29 16:30:44 366

原创 服务端高并发分布式架构演进之路

1. 概述本文以淘宝作为例子,介绍从一百个到千万级并发情况下服务端的架构的演进过程,同时列举出每个演进阶段会遇到的相关技术,让大家对架构的演进有一个整体的认知,文章最后汇总了一些架构设计的原则。特别说明:本文以淘宝为例仅仅是为了便于说明演进过程可能遇到的问题,并非是淘宝真正的技术演进路径2. 基本概念在介绍架构之前,为了避免部分读者对架构设计中的一些概念不了解,下面对几个最基础的概念进...

2019-11-29 15:57:24 43

原创 运维工程师企业中遇到的问题

1.Uv,pv瞬间增大,有暴力破解的嫌疑,Fail2ban+iptables禁止可疑ip1.shell脚本死活不执行问题:某天研发某同事找我说帮他看看他写的shell脚本,死活不执行,报错。我看了下,脚本很简单,也没有常规性的错误,报“: bad interpreter: No such file or directory”错。一看这错,我就问他是不是在windows下编写的脚本,然后在上...

2019-11-29 11:08:15 2428

原创 TCP的三次握手与四次挥手理解及面试题(很全面)

序列号seq:占4个字节,用来标记数据段的顺序,TCP把连接中发送的所有数据字节都编上一个序号,第一个字节的编号由本地随机产生;给字节编上序号后,就给每一个报文段指派一个序号;序列号seq就是这个报文段中的第一个字节的数据编号。确认号ack:占4个字节,期待收到对方下一个报文段的第一个数据字节的序号;序列号表示报文段携带数据的第一个字节的编号;而确认号指的是期望接收到下一个字节的编号;因此当前...

2019-11-26 20:47:03 203

转载 TCP与UDP的技术面试考点

面试时回答此类问题,先介绍两者的概念,再阐述两者的区别TCP和UDP是OSI模型中的运输层中的协议。TCP提供可靠的通信传输,而UDP则常被用于让广播和细节控制交给应用的通信传输。1.TCP(Transmission Control Protocol)的概念TCP是一种面向连接的,提供可靠交付服务和全双工通信的,基于字节流的端到端的传输层通信协议。TCP在传输数据之前必须先建立连接(TCP...

2019-11-26 20:32:49 78

原创 RabbitMQ 简介以及使用场景

目录一. RabbitMQ 简介二. RabbitMQ 使用场景解耦(为面向服务的架构(SOA)提供基本的最终一致性实现)异步提升效率流量削峰三. 引入消息队列的优缺点优点缺点总结一. RabbitMQ 简介MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链...

2019-11-25 16:31:43 81

原创 三次握手和四次挥手

三次握手和四次挥手是各个公司常见的考点,也具有一定的水平区分度,也被一些面试官作为热身题。很多小伙伴说这个问题刚开始回答的挺好,但是后面越回答越冒冷汗,最后就歇菜了。见过比较典型的面试场景是这样的:面试官:请介绍下三次握手求职者:第一次握手就是客户端给服务器端发送一个报文,第二次就是服务器收到报文之后,会应答一个报文给客户端,第三次握手就是客户端收到报文后再给服务器发送一个报文,三次握手就...

2019-11-25 16:06:39 98

原创 docker单节点部署mysql 5.6主从

#拉取mysql5.6镜像docker pull mysql:5.6#启动主节点,挂载配置文件和数据文件docker run --name master -p 3308:3306 -e MYSQL_ROOT_PASSWORD=root -d -v /opt/docker/mysql/master/conf:/etc/mysql/ -v /opt/docker/mysql/master/d...

2019-11-25 15:56:08 266

原创 最常见的linux命令(centOS 7.6)

最常见,最频繁使用的基础命令如下:系统经典语录:1、命令操作完没有任何消息信息, 就是最好的消息2、系统一切从根开始3、系统中数据一切皆文件皮一下,这都是干货偶,大佬轻喷一、linux关机命令:1.shutdown命令安全地将系统关机(推荐)参数说明:这里是引用[-r] 重启计算器。[-h] 关机后关闭电源〔halt〕。[-c] cancel current process取...

2019-11-25 14:46:22 218

原创 Redis面试题(含答案):哨兵+复制+事务+集群+持久化

Redis主要有哪些功能?哨兵(Sentinel)和复制(Replication)Redis服务器毫无征兆的罢工是个麻烦事,如何保证备份的机器是原始服务器的完整备份呢?这时候就需要哨兵和复制。Sentinel可以管理多个Redis服务器,它提供了监控,提醒以及自动的故障转移的功能,Replication则是负责让一个Redis服务器可以配备多个备份的服务器。Redis也是利用这两个功能来保...

2019-11-22 15:40:44 90

原创 redis如何实现高可用【主从复制、哨兵机制】

实现redis高可用机制的一些方法:保证redis高可用机制需要redis主从复制、redis持久化机制、哨兵机制、keepalived等的支持。主从复制的作用:数据备份、读写分离、分布式集群、实现高可用、宕机容错机制等。redis主从复制原理首先主从复制需要分为两个角色:master(主) 和 slave(从) ,注意:redis里面只支持一个主,不像Mysql、Nginx主从复制可以多...

2019-11-22 14:47:40 210

原创 运维工程师面试问题

第一,你要对自己的简历很熟悉,简历上的写的技能自己一定要能说出个一二,因为面试官的很多问题都会挑你简历上写的问。比如你简历上写了这么一条技能“熟悉mysql数据库的部署安装及原理”。你即然写了这么一条技能,你在怎么不熟悉你也要了解mysql的原理,能说出个大概意思。万一面试官问到了你写的这一条,你都答不上来,那在他心里你又减分了,基本上这次面试希望不大。第二,如果面试官问到你不会的问题,你就说这个不太熟悉,没有具体研究过,千万别不懂装懂,还扯一堆没用的话题来掩饰,这样只会让面试官反感你。第三,准备充

2019-11-19 10:50:49 1150

原创 20个MySQL经典面试题

1、MySQL的复制原理以及流程基本原理流程,3个线程以及之间的关联;2、MySQL中myisam与innodb的区别,至少5点(1)、问5点不同;(2)、innodb引擎的4大特性(3)、2者selectcount(*)哪个更快,为什么3、MySQL中varchar与char的区别以及varchar(50)中的50代表的涵义(1)、varchar与char的区别(2)、varch...

2019-11-19 10:41:29 85

转载 shell-【技术干货】工作中编写shell脚本实践

printf 不会像 echo 自动添加换行符,我们可以手动添加 \n无大括号,直接以空格分隔

2019-11-19 10:34:30 119

原创 运维工程师面试题 答案仅供参考

一、有文件file11、查询file1里面空行的所在行号awk ‘{if(KaTeX parse error: Expected group after '^' at position 4: 0~/^̲/)print NR}’ fileorgrep -n ^$ file |awk ‘BEGIN{FS=”:”}{print $1}’2、查询file1以abc结尾的行grep abc$ f...

2019-11-19 09:55:13 2645

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除