自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(190)
  • 资源 (12)
  • 收藏
  • 关注

转载 tcp之backlog参数

backlog是一个连接队列,在Linux内核2.2之前,backlog大小包括半连接状态和全连接状态两种队列.半连接状态: 服务器处于监听状态时收到客户端SYN报文时放入半连接队列中,即SYN queue(服务器端口状态为:SYN_RCVD)全连接状态: TCP的连接状态从服务器(SYN+ACK)响应客户端后,客户端的ACK报文到达服务器之前,则一直保留在半连接状态中;当服务器接收到客户

2017-11-30 16:01:16 645

原创 Yum 安装 mysql5.7

一 下载yum源rpm安装包wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm二 安装MySQL yum源sudo yum localinstall mysql57-community-release-el7-11.noarch.rpm提示:如果要修改默认的安装版本,可以

2017-11-29 16:02:05 298

原创 Hystrix-超时机制和断路器模式

一 超时机制、断路器模式简介1.1 背景假设服务提供者响应非常缓慢,那么消费者对提供者的请求线程就会被等待,知道服务返回,在高并发高负载的场景下,如果不做任何处理,这种问题很有可能造成所有处理用户请求的线程的资源耗竭,而不能响应用户进一步请求。如果服务消费者又是另外服务的提供者,那么有可能产生级联反应,导致其它的下一级服务消费者不可用,最终产生雪崩效应。 1.2 解

2017-11-28 10:14:49 6323 2

原创 Spring Cloud Config统一管理微服务配置

一Spring Cloud Config背景及简介# 集中管理的需求:一个使用微服务架构的应用系统可能会包括成百上千个微服务,因此集中管理很有必要# 不同环境不同配置:例如数据源在不同的环境(开发,测试,生产)是不同的# 运行期间可以动态调整。例如根据各个微服务的负载状况,动态调整数据源连接池大小或者熔断阀值,并且调整时不停止微服务# 配置修改后可以自动更新故通常做法是使用配置

2017-11-28 10:09:40 17211 2

转载 使用Zuul构建API Gateway

一  微服务网关背景及简介不同的微服务一般有不同的网络地址,而外部的客户端可能需要调用多个服务的接口才能完成一个业务需求。比如一个电影购票的收集APP,可能回调用电影分类微服务,用户微服务,支付微服务等。如果客户端直接和微服务进行通信,会存在一下问题:# 客户端会多次请求不同微服务,增加客户端的复杂性# 存在跨域请求,在一定场景下处理相对复杂# 认证复杂,每一个服务都需要独立认证

2017-11-28 10:03:02 102738 2

原创 服务发现和注册和Eureka

Spring Cloud和云计算没有关系,只是一个基于Spring Boot的快速构建分布式系统的工具集。 一 Spring Cloud特点# 约定优于配置# 开箱即用,快速启动# 适用于各种环境,可以部署在PC server或者 云环境# 轻量级的组件# 组件的支持很丰富,功能齐全# 选型中立 二 服务提供者和服务消费者 三 服务发现和注册为什

2017-11-28 09:57:29 25613 3

原创 Docker的安装

一 Linux 安装Docker1.1 Centos6.x如果是Centos的操作系统,如果是CentOS7一下的版本,比如6系列,内核都是2.6的,而对于Docker的安装,内核要求是3.8以上的,所以CentOS6系列的系统需要升级到3.8以上。# 安装yum 源yum -y installhttp://dl.fedoraproject.org/pub/epel/6/x86_6

2017-11-28 09:37:34 388

原创 初识Docker

一 Docker的概念Docker是一个开源的应用容器引擎。也就是说我们可以快速利用Docker快速实现应用容器的功能。比如Solr搜索引擎,即我们可以利用Solr快速实现搜索功能一个道理。假设我们想在一个Linux系统上建立多个互不干扰的子服务器,传统虚拟方式是这样的。每一个子服务器由着自己对应的操作系统。那么对于Docker而言呢?也是一个Linux服务器,在其上面有多个容器,这个

2017-11-28 09:35:11 702

转载 Nginx之配置后端服务器组

Nginx服务器支持设置一组服务器作为后端服务器,Nginx反向代理,负载均衡等重要功能会经常涉及后端服务器。服务器组的设置包括以下的一些指令,他们是由标准的HTTP模块ngx_http_upstream_module进行解析和处理的。 一 upstream指令该指令是设置后端服务器的主要指令,其他的指令都在该指令中进行配置,类似于之前的http块,server块,其语法结构如下:

2017-11-27 09:34:28 1832

转载 Nginx之虚拟服务器配置

任何由server开始的部分都被称作虚拟服务器部分。它描述的是一组根据server_name指令逻辑分割的资源,这些虚拟服务器响应Http请求,因此他们都包含在http部分之中。 一个虚拟服务器由listen和server_name指令组合定义,listen指令定一个IP地址/端口组合或者是UNIX域套接字路径。listen addresslisten address:port

2017-11-27 09:32:57 543

转载 Nginx之升级和构建后添加新的模块

一 平滑升级当需要对正在运行的Nginx进行升级时,可以在不停止Nginx的情况下,使用新版本或者重编译的可执行程序替换旧版本的可执行程序,这里我们从nginx-1.10.1升级到nginx-1.11.1。1.1  备份旧版本因为Nginx的升级,实质只是用新版本的可执行文件,替换旧版本的可执行程序,所以,对于备份,既可以只备份旧版本可执行文件,也可以打包备份整个旧版本安装目录,参考命

2017-11-27 09:30:30 396

原创 Nginx之代理和负载均衡

一 正向代理和反向代理1.1 正向代理正向代理:一般是考虑到内部网络安全,局域网内的客户端无法直接访问互联网上其他的站点,如果想访问外部互联网网站,可以在局域网内设置一台主机可以访问互联网,而其他的客户端则通过这个可以访问外部互联网的主机去访问外部。然后将结果返回给具体的客户端。 基于安全考虑,这个代理服务器可以拒绝某些客户端的请求,比如信息敏感或者非法的请求时,相当于起到了一部分

2017-11-27 09:28:52 937

原创 Nginx之rewrite配置

Rewtrite : 其主要目的是为了进行URL 重写,进行URL重定向。主要采用PCRE: Perl Compatible Regular Expressions(Perl兼容正则表达式语法)进行规则匹配,所以需要先安装PCRE lib。 一 rewrite规则重写规则是rewirte的基础。在Nginx中,使用ngx_http_rewrite_module模块支持URL重写。该模块

2017-11-27 09:25:36 1315

原创 Nginx之location配置

location指令可以用于虚拟服务器server部分,并且意味着提供来自客户端的URI或者内部重定向访问。除少数情况外,location也可以被嵌套使用格式如下location [modifier] url {……}或者是命名locationlocation @name {……}命名location仅对内部访问重定向,在进入一个location之前他会保留被请求的URI部分,

2017-11-27 09:20:42 6234

原创 Nginx之http配置

一 核心模块ngx_http_core_module 1.1 客户端部分# chunked_transfer_encoding语法:chunked_transfer_encoding on | off;默认:chunked_transfer_encoding on;上下文:    http, server, locationhttp协议中,transfer-enco

2017-11-27 09:17:24 10613

原创 Nginx之gzip压缩配置

一ngx_http_gzip_module模块这个模块主要负责gzip功能的开启和设置1.1 gzip语法结构:gzip on | off默认为off,不弃用gzip,只有该指令置为on的时候,下列指令才有用 1.2 gzip_buffers语法结构:gzip_buffersnumber sizenumber: 指定Nginx服务器需要向系统申请缓存空间的个数s

2017-11-27 09:15:19 829

原创 Nginx全局配置

一 Nginx配置全局参数1.1 user: 用来配置worker进程的用户和组。即只有该用户和组才能启动Nginx,默认是nobody,如果忽略组,那么就是该参数指定的用户的组1.2 worker_processes  1; 工作者进程数量,推荐和CPU核数一致,即如果是4核,可用有4个工作者进程用于处理客户的连接。我们也可以设置成auto,可以自动检测应该设置成多少 1.3 e

2017-11-27 09:13:01 2467

原创 Nginx的安装

一 yum 安装Nginx1.1 首先安装RHEL/CentOSrepositorysudo vim /etc/yum.repos.d/nginx.repo下面的配置添加到这个文件[nginx]name=nginx repobaseurl=http://nginx.org/packages/OS/OSRELEASE/$basearch/gpgcheck=0enabl

2017-11-27 09:11:30 554

转载 Redis之缓存设计

一 缓存的收益和成本1.1 优点加速读写;降低后端负载1.2成本# 数据不一致性:缓存层和存储层的数据存在着差异# 代码维护成本:同时维护缓存层和存储层的逻辑 缓存的使用场景:# 开销大的复杂计算:比如MySQL一些复杂的操作或者计算,如果不加缓存,MySQL在并发量大的时候,可能扛不住# 加速请求响应 二 缓存的更新策略2.1 LRU/LFU/FI

2017-11-25 11:00:39 1433

转载 redis持久化机制

Redis支持2种持久化机制:RDB 和 AOF。持久化机制可以有效避免因进程退出造成的数据丢失问题。当下次重启的时候利用之前持久化的文件即可实现数据恢复。一 RDBRDB持久化是把当前进程数据生成快照保存到硬盘的过程,触发RDB持久化过程分为手动触发和自动触发。1.1 触发机制1.1.1手动触发:save |bgsavesave: 阻塞当前redis服务器,直到RDB过程完成

2017-11-25 10:57:11 553

转载 Redis之运维细节

一 Linux配置优化1.1 内存分配控制vm.overcommit_memoryRedis在启动的时候,可能会出现这样的日志:什么是overcommit?Linux对大部分的申请内存的请求回复yes,以便能够运行更多的程序。申请内存后,并不会马上使用内存,这种技术叫做overcommit。如果Redis启动有上述日志说明vm.overcommit_memory=0,R

2017-11-25 10:51:40 6745

原创 锁和分布式锁

一 锁和分布式锁1.1 锁我们一般所说的锁,就是指单进程多线程的锁机制。在单进程中,如果有多个线程并发访问某个某个全局资源,存在并发修改的问题。如果要避免这个问题,我们需要对资源进行同步,同步其实就是可以加一个锁来保证同一时刻只有一个线程能操作这个资源。在不同的场景,可能使用的锁得方式不一样,有的用的是synchronized关键字实现,有的使用可重入锁ReentrantLock,有的

2017-11-25 10:45:37 743

原创 Redis之主从复制(Sentinel)

基于Redis自身的主从复制模式,一旦Master挂掉,那么需要手动将Slave节点晋升为Master,而且还需要通知应用方更新Master节点地址,所以这种方式肯定不能接受。所以为了解决这个Redis高可用问题,Redis哨兵即Sentinel诞生。一Sentinel概念1.1 主从复制Redis主从复制模式,可以将主节点数据改变同步给从节点,这样从节点就起到了2个作用:备份和扩展主

2017-11-25 10:42:45 2153

转载 Redis之内存分析

一 内存消耗1.1 内存使用统计used_memory: Redis分配的内存总量,即存储的所有数据占用的内存used_memory_human: 以可读格式返回使用的内存量used_memory_rss:从系统角度,显示Redis进程占用的物理内存总量used_memory_rss_human:以可读格式返回Redis进程占用的物理内存总量used_memor

2017-11-25 10:38:09 11519

原创 Redis之高级特性

一 慢查询分析通过慢查询分析,可以扎到有问题命令,然后进行分析。一般而言都是设置一个阀值,当查询时间超过这个阀值,就会将这个语句或者命令记录下来。而且需要注意的是,慢查询只是针对命令执行阶段,而不是针对发送命令,命令排队阶段。1.1 慢查询的两个配置参数slowlog-log-slower-than 10000 超过10毫秒就是慢查询slowlog-max-len 128 慢查

2017-11-25 10:31:58 1306

原创 redis之proxy集群之twemproxy

一 检查集群环境,autoconf和libtool如果版本太老,可以更新一下,否则安装的时候有问题rpm -qf /usr/bin/autoconfautoconf-2.63-5.1.el6.noarch 删除当前的rpm包rpm -e autoconf-2.63-5.1.el6.noarchtar -zxvf autoconf-2.69.tar.gz./confi

2017-11-25 10:28:08 686

原创 Redis集群之官方集群

一 环境准备操作系统:CentOS 7.x192.168.3.200 dubbo-01 7001 7002192.168.3.201 dubbo-02 7003 7004192.168.3.202 dubbo-03 7005 7006 二 每一个节点创建对应的目录dubbo-01机器上执行:mkdir -p /opt/app/redis-cluster/node-7

2017-11-25 10:25:13 561

原创 redis数据结构

一 全局命令1.1 查看所有的keykeys *1.2key的总数dbsize1.3 检查key是否存在exists username1.4 删除keydel password1.5key过期,超过时间自动删expire hello 5可以通过ttl观察剩余时间ttl hello1.6 查看key的数据结构类型type key,不存在这个ke

2017-11-25 10:21:59 833

原创 redis配置文件详解

一 包含配置1.1inlcude 包含其他配置文件include /path/to/local.conf 二 模块配置2.1loadmodule 加载模块loadmodule /path/to/my_module.so 三 网络配置3.1bind 从指定的网络接口(网卡)监听连接请求比如机器上有2块网卡,你只是指定监听一个网卡上来的请求,默认是所有网卡的请求

2017-11-24 10:02:36 6808

原创 redis简述及安装

一 Redis是什么,有什么优缺点,有哪些应用场景Redis是一个基于内存的高性能的NoSQL数据库,通过key-value的形式存储数据,可以作为作为数据库,缓存系统和消息中间件。支持多种类型的数据结构,而且还可支持数据的持久化。 Redis,不是万能的,有他自己的使用场景和适用范围。不适合的场景:# 不太适合存储大规模的数据。我们知道他是基于内存的,虽然现在内存已经很便

2017-11-24 10:01:35 318

原创 akka之分发和路由

一 Dispatchers1.1 理解分发器分发器是一个通信协调员的角色,主要负责消息的接收和传递。主要依据一定的分发策略,用于控制执行流程,然后将到来的消息或者请求路由给相关的业务进程。提供飞机的航空公司类似于Akka的MailBox,机场跑道类似于Akka的线程资源,航空交通管制塔类似于Dispatcher 1.2 分发器的类型1.2.1 Dispatche

2017-11-24 09:55:19 2293

原创 Akka之actor模型

一 定义Actorimportakka.actor.{Props, ActorSystem, Actor}import akka.actor.Actor.Receiveimport akka.event.Logging/** 通过扩展Actor并实现receive方法来定义Actor*/class MyActorextends Actor{    //获取Log

2017-11-24 09:39:33 871

原创 Keepalived+LVS

1  Keepalived 原理VRRP:virtual router redundancy protocol(虚拟路由冗余协议):在现实的环境中,两台需要通信的主机大多数情况下并没有直接的物理连接,比如没有网线连接。在这时候,他们之间的路由怎么选择,通常解决办法有两种:Ø  在主机上使用动态路由Ø  主机上使用静态路由动态路由并不十分实际,因为管理维护成本以及是否支持等诸多问

2017-11-24 09:29:47 499

转载 Zookeeper详解

一 CAP 理论 和BASE 理论1.1 CAP理论CAP: 指的是分布式系统中一致性,可用性和分区容错性的缩写,即Consistency, Availablity和Partition Tolerance的缩写。一致性:在分布式环境中,一致性是指数据在多个副本之间是否能够保持一致的特性。当一个系统在数据一致的状态下执行更新操作后,应该保证系统的数据仍然处于一致的状态。 可用性:

2017-11-24 09:21:50 1023

转载 Hadoop之高可用原理

我们首先看一下普通的HA, 由于发生故障时需要依赖于管理员手动切换NameNode,由于管理员不可能随时随地监控集群,所以自动主备切换很有必要。一 HA整体架构HA总共有2个NameNode, ActiveNameNode和StandbyNameNode,2个NameNode互为主备,处于Active状态的是主NameNode,处于Standby状态的是备NameNode,

2017-11-24 09:07:51 1381

原创 NameNode之DataNode管理

NameNode启动之后,回加载fsimage和editlog文件重建文件系统目录树,但是对于数据块与DataNode之间的映射关系却需要在DataNode上报后动态构建。DataNode启动之后,除了会与NameNode握手,注册以及上报数据块,还会定时向NameNode发送心跳及数据块副本汇报,并执行NameNode的传回的指令。所以NameNode中会有很大一部分逻辑是与DataNode

2017-11-24 09:07:09 1650

原创 NameNode之启动流程分析

NameNode启动流程分析  public staticvoid main(Stringargv[]) throws Exception {    if (DFSUtil.parseHelpArgument(argv, NameNode.USAGE, System.out,true)) {      System.exit(0);    }

2017-11-24 09:06:53 394

原创 NameNode之数据块管理

一 Block、Replica、BlocksMapHDFS使用Block类抽象NameNode中的数据块,Block实现了Writable接口,是可以序列化的,并且实现了Comparable接口,可以按照blockid大小排序。定义了三个字段:blockId:唯一标识符numBytes:数据块大小generationStamp:这个数据块的时间戳 BlockInfo类扩

2017-11-24 09:06:38 1704

原创 NameNode之文件系统目录树

NameNode会为维护文件系统的命名空间,命名空间是以/目录为开始的整棵目录树,整棵目录树是通过FSDirectory来管理的。在HDFS中,无论是目录还是文件都是,在文件系统目录树中都被看做是一个INode节点,如果是目录则对应的类是INodeDirectory,如果是文件,则对应的类是INodeFile. INodeDirectory包含一个children集合,其子目录或者文件会被保存

2017-11-23 08:56:57 1748

原创 NameNode之租约管理

我们知道HDFS文件是一次性,多次读,并且客户端不支持并行写操作。那么这里就需要一种机制保证对HDFS文件互斥操作。HDFS提供了租约(Lease)机制来实现这个功能 什么是租约?是NameNode给与租约持有者(LeaseHolder)一般是客户端在规定时间内拥有文件权限的合同 在HDFS,客户端写文件时,需要先从租约管理器(LeaseManager)申请一个租约,成功申请租

2017-11-23 08:56:48 696

mysqld_exporter-0.10.0.linux-amd64.tar.gz

mysqld_exporter-0.10.0.linux-amd64.tar.gz

2021-04-19

zabbix-3.0.10.tar.gz

zabbix-3.0.10.tar.gz

2021-04-19

ngrok-stable-linux-amd64.zip

ngrok-stable-linux-amd64.zip

2021-04-19

curl-7.63.0.tar.gz

curl-7.63.0.tar.gz

2021-04-19

apollo-1.4.0.tar.gz

apollo-1.4.0.tar.gz

2021-04-19

jemalloc-4.4.0.tar.bz2

jemalloc-4.4.0.tar.bz2

2021-04-19

datax.tar.gz

datax.tar.gz

2021-04-19

maxwell-1.28.0.tar.gz

maxwell-1.28.0.tar.gz

2021-04-19

esrally-dist-1.0.4.tar.gz

esrally-dist-1.0.4.tar.gz

2021-04-19

Percona-XtraBackup-2.4.9-ra467167cdd4-el7-x86_64-bundle.tar

Xtrabackup是一个对InnoDB做数据备份的工具,支持在线热备份(备份时不影响数据读写),是商业备份工具InnoDB Hotbackup的一个很好的替代品。它能对InnoDB和XtraDB存储引擎的数据库非阻塞地备份(对于MyISAM的备份同样需要加表锁)。XtraBackup支持所有的Percona Server、MySQL、MariaDB和Drizzle

2017-12-31

tomcat6.x服务器

这是我用过的最稳定的tomcat服务器,虽然现在7.x都升级到了30,但是这款仍是最爱

2012-11-23

空空如也

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

TA关注的人

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