8 冰 河

尚未进行身份认证

高级软件架构师,Java编程专家,开源分布式消息引擎Mysum发起者、首席架构师,开源消息中间件Android-MQ独立作者,国内知名开源分布式数据库中间件Mycat核心架构师,精通Java, C, C++, Python, Hadoop大数据生态体系,熟悉MySQL内核,Android底层架构。多年来致力于分布式系统架构、微服务、分布式数据库、大数据技术的研究,曾主导过众多分布式系统、微服务及大数据项目的架构设计、研发和实施落地。在高并发、高可用、高可扩展性、高可维护性和大数据等领域拥有丰富的经验。对Hadoop、Spark、Storm等大数据框架源码进行过深度分析并具有丰富的实战经验。

等级
TA的排名 84

高可用之——超时与重试机制

最重要的超时设置是网络连接/读/写的超时时间设置。代理层超时与重试:如Haproxy、Nginx、Twemproxy等组件可以实现代理功能,如Haproxy和Nginx可以实现请求的负载均衡。而Twemproxy可以实现Redis的分片代理。需要设置代理与后端真实服务器之间的网络连接/读/写超时时间。 Web容器超时:如Tomcat、Jetty等,提供HTTP服务运行环境的,需要设置客户端与...

2019-10-11 11:34:04

Linux之——自定义脚本实现在集群中所有的主机上执行相同的命令

注意:需要提前配置好集群中每台服务器的主机名和IP地址的对应关系,能够互相使用主机名进行通信,并配置了SSH免密码登录。xcall脚本文件内容如下:#!/bin/bashpcount=$#if((pcount<1));then echonoargs; exit;fi#先在本机上执行命令echo------------binghe$host-------...

2019-09-28 14:22:00

Linux之——自定义脚本实现在集群上分发文件

背景:在维护大型服务器集群的时候,如果登录每台服务器进行文件创建操作,那就太麻烦了,此时,我们可以写一个脚本,在集群中的某台服务器上创建文件,之后利用脚本将文件复制到集群中的其他服务器上。作用:循环复制文件到所有节点的相同目录下。执行脚本文件的前提:集群中的主机配置了主机名与IP地址的映射关系,各台主机能够使用主机名通信,同时配置了SSH免密码登录。核心命令使用的是rsyncxsync脚本...

2019-09-28 11:49:14

MySQL之——忘记root账户密码的解决方案

MySQL5.7以下版本1.修改MySQL的登录设置#vim/etc/my.cnf在[mysqld]的段中加上一句:skip-grant-tables例如:#vim/etc/my.cnf[mysqld]datadir=/var/lib/mysqlsocket=/var/lib/mysql/mysql.sockskip-grant-tables保存并且退出...

2019-09-27 17:10:26

Linux之——在Lunux上启用SCTP

SCTP需要内核的支持,并且需要安装用户库例如,对于Ubuntu,可以使用下面的命令:sudoapt-getinstalllibsctp1对于Fedora、RedHat、CentOS可以使用yum命令安装:sudoyuminstallkernel-modules-extra.x86_64lksctp-tools.x86_64...

2019-09-23 17:42:04

高可用之——降级

降级的最终目的是保证核心服务可用,即使是有损的。有些服务器无法降级(加入购物车、结算等)。降级也需要根据系统的吞吐量、响应时间、可用率等条件进行手工降级或自动降级。降级预案降级可以参考日志级别设置降级预案,如下:一般:有些服务偶尔因为网络抖动或服务正在上线而超时,可以自动降级。 警告:有些服务在一段时间内成功率有波动(比如在95%~100%之间),可以自动降级或人工降级,并发送告警。...

2019-09-19 12:57:33

Java之——JDK7中的WatchService

转载请注明出处:https://blog.csdn.net/l1028386804/article/details/100991311JDK7中的WatchService能够实现文件变更监听,使用示例如下代码所示:packagecom.binghe.jdk7.listener;importjava.io.IOException;importjava.nio.file.File...

2019-09-18 17:50:37

Netty之——做集群 channel共享方案

netty做集群channel如何共享?方案一:netty集群,通过rocketmq等MQ推送到所有netty服务端,channel共享无非是要那个通道都可以发送消息向客户端,MQ广播+多Netty,Netty收到MQ消息后,如果本地存储有该channel,就发送,没有存储就忽略,完美解决,不需要做channel的共享。方案二:netty集群,添加注册中心,实现...

2019-09-18 13:14:11

高可用之——节流

在特定时间窗口内对重复的相同事件最多只处理一次,或者需要限制多个连续相同事件的最小执行时间间隔,可以使用节流(Throttle)实现,可以防止多个相同事件连续重复执行。节流主要的用法有:throttleFirst、throttleLast、throttleWithTimeout。一、throttleFirst/throttleLastthrottleFirst/throttleLast指的...

2019-09-12 16:27:30

高可用之——接入层限流

转载请注明出处:https://blog.csdn.net/l1028386804/article/details/100774098接入层的主要目的有:负载均衡、非法请求过滤、请求聚合、缓存、降级、限流、A/B测试、服务质量监控等。对于Nginx接入层限流可以使用Nginx自带的两个模块:连接数限流模块ngx_http_limit_conn_module和漏桶算法实现的请求限流模块ngx_...

2019-09-12 15:37:23

CentOS之——ab压力测试安装与使用

转载请注明出处:https://blog.csdn.net/l1028386804/article/details/100762839安装yum-yinstallhttpd-tools参数解释[root@binghe100~]#abab:wrongnumberofargumentsUsage:ab[options][http[s]://]hostna...

2019-09-12 09:56:20

高可用之——分布式限流

转载请注明出处:https://blog.csdn.net/l1028386804/article/details/100744369分布式限流最关键的是要将限流服务做成原子化,而解决方案可以使用Redis+Lua或者Nginx+Lua技术进行实现,通过这两种技术可以实现高并发和高性能。一、Redis+Lua实现编写limit.lua脚本,如下:localkey=KEYS[...

2019-09-11 18:10:14

高可用之——应用级限流

转载请注明出处:https://blog.csdn.net/l1028386804/article/details/1007435651.限流总并发/连接/请求数对于一个应用系统来说,一定会有极限并发/请求数,即总有一个TPS/QPS阈值,如果超过了阈值,则系统就会不响应用户请求或响应的非常慢,所以,需要进行过载保护,防止大量请求涌入击垮系统。例如Tomcat,Connector其中一种...

2019-09-11 17:45:41

高可用之——限流算法

转载请注明出处:https://blog.csdn.net/l1028386804/article/details/100715694常见的限流算法有:令牌桶、漏桶,计数器也可以用来进行粗暴限流实现。一、令牌桶算法令牌桶算法,是一个存放固定容量令牌的桶,按照固定速率网桶里添加令牌。令牌桶算法描述如下: 假设限制2r/s,则按照500毫秒的固定速率往桶中添加令牌。 桶中最多存放b个令...

2019-09-10 22:46:48

高可用之——限流概述

转载请注明出处:https://blog.csdn.net/l1028386804/article/details/100713831在开发高并发系统时,有很多手段可以保护系统,如:缓存、降级和限流。缓存的目的是提升系统访问速度和增大系统处理能力。降级是当服务出问题或影响到核心流程的性能,需要暂时屏蔽掉,待高峰过去或者问题解决后再打开。有些场景不适合用缓存或降级,比如稀缺资源(秒杀、抢购)、写...

2019-09-10 21:45:29

高可用之——隔离术

转载请注明出处:https://blog.csdn.net/l1028386804/article/details/100637953一、总览隔离主要有:线程池隔离 进程隔离 集群隔离 机房隔离 读写隔离 动静隔离 爬虫隔离 热点隔离 资源隔离 环境隔离 压测隔离 AB测试 缓存隔离 查询隔离爬虫隔离可以在Nginx中进行如下配置。set$flag...

2019-09-08 20:42:40

高可用之——Nginx四层负载均衡

转载请注明出处:https://blog.csdn.net/l1028386804/article/details/100627169有关Consul的安装可以参见博文《高可用之——Consul+Consul-template实现HTTP动态负载均衡》一、静态负载均衡Nginx的四层静态负载均衡需要启用ngx_stream_core_module模块,默认情况下,ngx_stream_...

2019-09-08 14:21:37

高可用之——Consul+OpenResty实现无reload动态负载均衡

转载请注明出处:https://blog.csdn.net/l1028386804/article/details/100596026一、安装Nginx1.安装依赖环境yum-yinstallwgetgcc-c++ncursesncurses-develcmakemakeperlbisonopensslopenssl-develgcc*libxml2li...

2019-09-07 13:17:29

高可用之——Consul+Consul-template实现HTTP动态负载均衡

转载请注明出处:https://blog.csdn.net/l1028386804/article/details/100568343一、安装NginxNginx的安装和配置可参考博文《Nginx+Tomcat+Memcached负载均衡集群服务搭建》二、安装Consul1.下载Consulwgethttps://releases.hashicorp.com/consul/...

2019-09-05 22:09:27

高可用之——consul 文档

转载请注明出处:https://blog.csdn.net/l1028386804/article/details/100555533记录下,以待查阅。英文:https://www.consul.io/intro/getting-started/install.html中文:http://www.liangxiansen.cn/2017/04/06/consul/中文:https://...

2019-09-05 12:06:13

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。