自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 shell分类qq号

前几天同学面试腾讯,面试官问了一个关于shell问题我比较好奇就做了一下,可能做的不够好,体谅!!!问题:一个文件(qq)里面有10000个qq号,按照最后两位一样的分到一个文件夹里面,说一下你的思路?代码:#!/bin/bashfor i in `cat qq | rev | cut -c 1-2 | rev | sort | uniq -c | sort -nr | awk '{pr...

2019-08-26 18:31:10 226

原创 ubuntu 18.04安装vnc服务端

Ubuntu Desktop 18.04默认提供了远程桌面共享,但是桌面共享使用的是同一个桌面,而且远程桌面共享Gnome极其消耗网络带宽,基本上远程访问的情况下无法流畅使用,因此需要使用单独配置VNC服务。对于远程桌面而言,xfce4 足够轻量级,占用带宽少,响应速度够快,因此选择使用xfce4作为远程桌面。安装 vnc4server,xfce4$ sudo apt install vnc...

2019-08-23 15:16:53 881

原创 MySQL中对比两张表是否有不同数据

1.使用union all关联两张表,完事使用临时表或者说派生表的方式来进行数据对比。SELECT t1.pk, t1.c1FROM t1UNION ALLSELECT t2.pk, t2.c1FROM t2使用派生表的方式来对比数据例如:SELECT id,titleFROM ( SELECT id, title FROM t1 UNION ALL S...

2019-08-21 17:23:39 3581

原创 解决lftp文乱码问题

原因简析GB编码仍被广泛使用于Windows系统中,多数ftp服务器使用gb编码传输。而在以UTF-8为locale的Linux系统中,lftp不能自动识别GB编码,故显示为乱码。遇到此问题时,需要通过命令告知lftp以gb编码读取数据。解决办法在lftp命令行中输入:set ftp:charset “gbk”set file:charset “utf-8”即可,第一条命令表示服务器使...

2019-08-21 17:14:37 1173

原创 GitLab安装与部署

GitLab安装部署1.安装Gitlab前系统预配置准备工作操作系统:centos 7.31、关闭firewalld防火墙#systemctl stop firewalld    //关闭防火墙#systemctl disable firewalld  //禁止防火墙开机启动2、关闭selinux并重启系统(关闭强制访问控制安全策略,可以用getenforce查看selinux状态。)...

2019-08-12 09:41:19 330

原创 VNC服务端部署手册

VNC服务端部署手册1. 首先是桌面GUI环境#GNOME为例yum groupinstall “GNOME Desktop”2. VNC 服务器yum install tigervnc-serveryum -y install xrdp#查看rdp是否安装成功systemctl start xrdp.service#检查rdp的端口netstat -antup | grep ...

2019-08-07 09:36:57 740

原创 MySQL事务

– mysql事务mysql 中,事务其实是一个最小的不可分割的工作单元。事务能够保证一个业务的完整性。比如我们的银行转账:a -> -100update user set money=money-100 where name='a';b -> +100update user set money=money+100 where name='b';– 实际的程序中,如果...

2019-04-24 22:42:12 162

原创 MySQL查询练习

– mysql查询练习– 学生表– Student– 学号– 姓名– 性别– 出生年月日– 所在班级create table student(sno varchar(20) primary key,sname varchar(20) not null,ssex varchar(10) not null,sbirthday datetime,class varchar(20...

2019-04-23 22:54:20 181

原创 MySQL的三大设计范式

– 数据库的三大设计范式.sql– 1.第一范式– 1NF(拆字段)– 数据表中的所有字段都是不可分割的原子值?create table student2(id int primary key,name varchar(20),address varchar(30));insert into student2 values(1,‘张三’,‘中国四川省成都市武侯区武侯大道100号’...

2019-04-18 22:53:34 559

原创 MySQL建表约束

– mysql建表约束.sql– 主键约束它能够唯一确定一张表中的一条记录,也就是我们通过给某个字段添加约束,就可以使得改字段不重复且不为空。create table user(id int primary key,name varchar(20));insert into user values(1,‘张三’);mysql> insert into user values...

2019-04-17 19:35:14 1684

原创 MySQL数据库入门

– mysql 学习笔记– 关系型数据库– 一、如何使用终端操作数据库?– 1. 如何登陆数据库服务器?mac:~ zhengbing$ mysql -uroot -p123456– 2. 如何查询数据库服务器中所有的数据库?mysql> show databases;±-------------------+| Database |±---------...

2019-04-17 19:34:18 130

原创 使用iostat分析IO性能

对于I/O-bond类型的进程,我们经常用iostat工具查看进程IO请求下发的数量、系统处理IO请求的耗时,进而分析进程与操作系统的交互过程中IO方面是否存在瓶颈。下面通过iostat命令使用实例,说明使用iostat查看IO请求下发情况、系统IO处理能力的方法,以及命令执行结果中各字段的含义。1.不加选项执行iostat我们先来看直接执行iostat的输出结果:[root@server...

2019-04-12 13:37:37 260

原创 Redis-5.0.3集群的搭建

一、概述Redis3.0版本之后支持Cluster.1.redis cluster的现状目前redis支持的cluster特性:1):节点自动发现2):slave->master 选举,集群容错3):Hot resharding:在线分片4):进群管理:cluster xxx5):基于配置(nodes-port.conf)的集群管理6):ASK 转向/MOVED 转向机制....

2019-03-25 20:04:58 271

原创 数据结构与算法(python)2.顺序表

2019-03-22 21:05:12 105

原创 数据结构与算法(python)1.引入概念

2019-03-21 18:43:43 206 1

原创 Redis-5.0.3主从复制和哨兵

一.Redis主从复制原理和配置1.和MySQL主从复制的原因一样,Redis虽然读取写入的速度都特别快,但是也会产生读压力特别大的情况。为了分担读压力,Redis支持主从复制,Redis的主从结构可以采用一主多从或者级联结构,Redis主从复制可以根据是否是全量分为全量同步和增量同步。2. Redis主从拓扑a)一主一从:用于主节点故障转移从节点,当主节点的“写”命令并发高且需要持久化,可...

2019-03-14 18:21:58 164

原创 基于MHA的MySQL高可用架构搭建

知识剖析:MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于 Facebook公司)开发,是一套优秀的作为MySQL高可用性环境下故障切换和主从提升的高可用软件。在MySQL故障切换过程中,MHA能做到在 0~30秒之内自动完成数据库的故障切换操作,并且在进行故障切换的过程中...

2019-03-13 16:05:49 314

原创 mysql的读写分离

主从配复制见文章https://blog.csdn.net/weixin_43407305/article/details/87911235因此篇博客在wps上写的,以图片形式给出文章最后给出配置文件内容proxy-address=172.25.5.3:3306 #表示调度器的IP地址以及端口号proxy-read-only-backend-addresses=172.25.5...

2019-02-27 14:20:36 111

原创 mysql组复制之多主模式(全同步)

组复制之多主模式组复制是一种可用于实现容错系统的技术。 复制组是一个通过消息传递相互交互的 server 集群。通信层提供了原子消息(atomicmessage)和完全有序信息交互等保障机制,实现了基于复制协议的多主更新复制组由多个 server成员构成,并且组中的每个 server 成员可以独立地执行事务。但所有读写(RW)事务只有在冲突检测成功后才会提交。只读(RO)事务不需要在冲突检测,...

2019-02-25 11:00:54 2326

原创 mysql主从复制、基于gtid的主从复制、并行复制、半同步

主从复制主从复制过程存在三个线程,Master端的I/O线程,Slave的I/O线程与SQL线程。Master端需要开启binlog日志,Slave端需要开启relaylog。1、Slave端的I/O读取master.info文件,获取binlog文件名和位置点,然后向Master端的I/O线程请求,该binlog文件名和位置点的binlog信息。(master.info文件在配置主从复制时...

2019-02-25 10:32:05 279

原创 同步异步与阻塞非阻塞的理解

本篇文章我准本从三个大方面来解释下同步异步、阻塞非阻塞的知识,第一个方面主要是说下,到底什么是同步异步、阻塞非阻塞;第二个方面主要是解释下在I/O场景下,同步异步阻塞非阻塞又是怎么定义的,第三个方面介绍下在unix下同步异步又有哪些阻塞非阻塞IO。1.同步异步与阻塞非阻塞首先从大的方面来说,“阻塞”与"非阻塞"与&

2019-02-24 22:43:26 460

原创 rhel7.3封装(制作实验环境)

一、官方下载rhel7.3的镜像安装rhel7.3虚拟机二、配置网路三、配置yum源四、安装常用的软件包五、关闭firewalled开机不启动,设置selinux为disabled,关闭并开机不启动NetworkManager六、将网卡改为eth0,该操作结束后要重新启动生效编辑vim /boot/grub2/grub.cfg在LANG=en_US.UTF-8 后写...

2019-02-24 21:55:38 294

原创 Nginx+tomcat+memcached实现负载均衡及session(交叉存储)

###在上一篇文章tomcat配置的基础上Nginx+tomcat+memcached使用nginx作为前端服务器来实现tomcat负载均衡及高可用,同时基于jsp的动态特征,我们将引入memcache来保持网页在连接过程中的session保持,利用memcached把多个tomcat的session集中管理图解:说明:客户端请求时nginx通过负载调度算法将请求调度至某一后端服务器;...

2019-02-20 16:54:20 519

原创 tomcat

###续上一篇文章利用openresty的nginx功能tomcatTomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servl...

2019-02-20 15:59:56 162

原创 memcache

memcachememcached是LiveJournal旗下的Danga Interactive公司的Brad Fitzpatric为首开发的一款软件。现在已经成为mixi、hatena、Facebook、Vox、LiveJournal等众多服务中提高Web应用扩展性的重要因素。传统的Web应用都将数据保存到RDBMS中,应用服务器从RDBMS中读取数据、处理数据并在浏览器中显示。但是随着数据...

2019-02-20 15:32:37 607

原创 LNMP架构

LNMP架构介绍LNMP:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。Mysql是一个小型关系型数据库管理系统。PHP是一种在服务器端执行的嵌入HTML文档的脚本语言。原理:浏览器发送http request请求到服务器(Nginx),服务器响应并处理web请求,将一些静态资...

2019-02-20 14:50:21 273

原创 Haproxy

Haproxyhaproxy提供高可用性、负载均衡以及基于TCP(第四层)和HTTP(第七层)应用的代理,支持虚拟主机,它是免费、快速并且可靠的一种解决方案。haproxy特别适用于那些负载特别大的web站点,这些站点通常又需要会话保持或七层处理。haproxy运行在时下的硬件上,完全可以支持数以万计的并发连接,并且它的运行模式使得它可以很简单安全的整合进您当前的架构中,同时可以保护你的web...

2019-02-20 13:38:33 236

原创 LVS三种工作模式(DR,TUN,NAT)以及优缺点

一、NAT模式(VS-NAT)原理:就是把客户端发来的数据包的IP头的目的地址,在负载均衡器上换成其中一台RS的IP地址,并发至此RS来处理,RS处理完成后把数据交给经过负载均衡器,负载均衡器再把数据包的原IP地址改为自己的IP,将目的地址改为客户端IP地址即可。期间,无论是进来的流量,还是出去的流量,都必须经过负载均衡器。优点:集群中的物理服务器可以使用任何支持TCP/IP操作系统,只有负载...

2019-02-17 16:59:00 1184

原创 RHCS 实现高可用 HA(二)

续上一篇文章配置共享存储生产环境中,多使用光纤或是交换机设备连接共享存储与集群,在此实验中,使用ISCSI。一.环境配置1. 打开server3,添加一块磁盘用来共享:2.配置server3(服务)端[root@server3 ~]# yum install -y scsi-* 安装服务端软件[root@server3 ~]# vim /etc/tgt/targets.conf...

2019-02-17 16:07:18 207

原创 RHCS 实现高可用 HA(一)

简介:RHCS即 RedHat Cluster Suite ,中文意思即红帽集群套件。红帽集群套件(RedHat Cluter Suite, RHCS)是一套综合的软件组件,可以通过在部署时采用不同的配置,以满足你的对高可用性,负载均衡,可扩展性,文件共享和节约成本的需要。它提供有如下两种不同类型的集群:1、高可用性:应用/服务故障切换-通过创建n个节点的服务器集群来实现关键应用和服务的...

2019-02-17 14:44:40 443 1

原创 LVS(DR模式)+Keepalived(高可用)

Keepalivedkeepalived观其名可知,保持存活,在网络里面就是保持在线了,也就是所谓的高可用或热备,用来防止单点故障(单点故障是指一旦某一点出现故障就会导致整个系统架构的不可用)的发生主要提供 loadbalancing(负载均衡)和 high-availability(高可用)功能负载均衡实现需要依赖Linux的虚拟服务内核模块(ipvs)高可用是通过VRRP协议实现多台...

2019-02-10 13:32:23 219

原创 LVS模式三:NAT网络地址转换模式(作业)

VS/NATVS/NAT 的优点是服务器可以运行任何支持 TCP/IP 的操作系统,它只需要一个 IP 地址配置在调度器上,服务器组可以用私有的 IP 地址。缺点是它的伸缩能力有限, 当服务器结点数目升到 20 时,调度器本身有可能成为系统的新瓶颈,因为在 VS/NAT 中请求和响应报文都需要通过负载调度器。1.调度器(server1)两个ip:对内(对服务器):172.25.0.100...

2019-02-09 20:05:53 167

原创 LVS模式二:TUN隧道模式

隧道模式IP隧道(IP tunneling)是将一个IP报文封装在另一个IP报文的技术,这可以使得目标为一个IP地址的数据报文能被封装和转发到另一个IP地址。IP隧道技术亦称为IP封装技术(IP encapsulation)。IP隧道主要用于移动主机和虚拟私有网络(Virtual Private Network),在其中隧道都是静态建立的,隧道一端有一个IP地址,另一端也有唯一的IP地址...

2019-02-09 19:58:05 151

原创 LVS模式一:DR模式下LVS的健康检查(ldirectord)

在上一篇文章的DR模式下:为什么需要健康检查?如果后端真实服务器出现问题,那么在测试端测试的时候,会返回给我们一个错误的页面,那么我们需要对后端服务器做健康检查,保证只返回正确的页面提供给用户。在server1(调度器)实现健康检查的配置步骤:1.添加高可用yum源2.安装软件ldirectord-3.9.5-3.1.x86_64.rpm用来对后端服务器做健康检查3.查看配置文...

2019-02-09 18:57:44 219

原创 LVS模式一:DR模式(ipvsadm)

LVS模式一:DR(Direct Routing)直接路由模式DR模式下调度器和服务器组都必须在物理上有一个网卡通过不分段的局域网相连,即通过交换机或者高速的HUB相连,中间没有隔有路由器。VIP地址为调度器和服务器组共享,调度器配置的VIP地址是对外可见的,用于接收虚拟服务的请求报文所有的服务器把VIP地址配置在各自的Non-ARP网络设备上,它对外面是不可见的,只是用于处理目标地址为V...

2019-02-09 17:50:23 291

原创 Varnish—CDN推送管理平台(web界面批量清除缓存)

接上一篇文章CDN推送管理平台CDN推送: 当后端服务器中的DNS有更新时,在varnish的缓存中应该及时同步后端服务中的内容配置过程:1.在server1安装httpd,并编辑httpd配置文件将136行的端口号修改8080(因为我们的varnish服务已经占用了80端口,避免冲突)下载php(显示页面)下载unzip(解压安装包2.将banzip安装包从物理机...

2019-02-08 18:51:19 138

原创 Varnish—CDN加速的实现(多个后端服务器以及实现负载均衡以及虚拟主机)

实验环境主机ipserver1(varnish服务器)172.25.5.1server2(后端web服务器)172.25.5.2server3(后端web服务器)172.25.5.3foundation4(客户端)172.25.5.250续上一篇文章1.多个后端服务器的配置1.编辑varnish的配置文件(配置后端两台服务器)[ro...

2019-02-08 17:57:47 275

原创 Varnish—CDN加速的实现(单个后端服务器)

Varnish的工作原理图:Varnish是一款高性能、开源的反向代理服务器和缓存服务器。Varnish使用内存缓存文件来减少响应时间和网络带宽消耗。这个项目是由挪威的一家报纸Verdens Gang的网络分支起始的,其架构设计和开发总监Poul-Henning Kamp是FreeBSD核心的开发人员之一,最初项目的管理与基础设施及额外开发由挪威一家Linux咨询公司Linpro提供。说到va...

2019-02-07 19:52:15 181

原创 rhel6.5环境的准备和搭建

1.安装rhel6.5虚拟机(最小化安装即可)2.环境的准备(1) cd /etc/udev/rules.d ,删除以70开头的文件(2)设置本地域名及解析vim /etc/hosts(3)配置yum源(需搭建网络yum源,填写网络yum源地址)(4)设置selinux为disabled模式( 5)关闭防火墙(linux6.5中火墙采用iptables)(6)现在需要...

2019-02-07 18:39:22 261 2

原创 python【面向对象(继承)】

面向对象的三大特征:1.封装:根据职责将属性和方法封装到一个抽象的类中2.继承:实现代码的重用,相同的代码不需要重复写1.class Animal(): def eat(self): print('吃~~~~~') def drink(self): print('喝') def run(self): print('跑'...

2019-02-01 16:25:47 137

空空如也

空空如也

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

TA关注的人

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