自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 RocketMQ批量消费、消息重试、消费模式、刷盘方式

C端先启动和C端后启动消息重试机制:P端和C端2中重试

2017-02-25 19:41:29 39716 2

原创 zuul主要功能以及基本配置

一、Zuul主要有的两大功能:对请求路由和过滤二、基本使用一、Zuul主要有的两大功能:对请求路由和过滤其中路由功能负责将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础而过滤器功能则负责对请求的处理过程进行干预,是实现请求校验、服务聚合等功能的基础.Zuul和Eureka进行整合,将Zuul自身注册为Eureka服务治理下的应用,同时从Eureka中获得其他微...

2019-11-14 11:25:20 2184

原创 Hystrix Turbine

在Hystrix Dashboard的使用中,实际上是单个的Hystrix Dashboard。看单个的Hystrix Dashboard的数据并没有什么多大的价值,要想看这个系统的Hystrix Dashboard数据就需要用到Hystrix Turbine。Hystrix Turbine将每个服务Hystrix Dashboard数据进行了整合。Hystrix Turbine的使用非常简单,只...

2019-11-12 16:50:31 254

原创 Hystrix Dashboard的使用

Hystrix监控除了隔离依赖服务的调用以外,Hystrix还提供了近实时的监控,Hystrix会实时、累加地记录所有关于HystrixCommand的执行信息,包括每秒执行多少请求多少成功,多少失败等。Netflix通过hystrix-metrics-event-stream项目实现了对以上指标的监控。我们先启动一个包含具有Hystrix服务新建项目,在项目中添加依赖 &l...

2019-11-07 21:04:37 578

原创 Feign使用fallbackFactory属性打印fallback异常

一、在Fegion的Hystrix支持中,我们通过在@FeignClient(fallback = HystrixClientFallback.class),当服务提供者出现异常的时候,使用Hystrix回调方法。但是我们却无法看到具体的异常是什么。那么怎么解决这个问题呢,我们可以听通过配置fallbackFactory方法来配置,举个例子一、我们先启动eureka二、新建一个spring...

2019-11-07 20:38:19 4879 3

原创 Fegin的Hystrix支持

一、Fegin也支持Hystrix。当服务提供者出现异常的时候,使用Hystrix回调方法。举个例子:添加一个UserFeignHystrixClient,主要是在@FeignClient添加一个fallback类,然后重写findByIdFeign方法import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org....

2019-11-06 20:55:28 419

原创 Hystrix

一、目前存在的问题二、雪崩效应三、解决方案四、Hystrix一、目前存在的问题现在我们假设一下,服务提供者响应非常缓慢,那么消费者对提供者的请求就会被强制等待,直到服务返回。在高负载场景下,如果不做任何处理,这种问题很可能造成所有处理用户请求的线程都被耗竭,而不能响应用户的进一步请求。二、雪崩效应在微服务架构中通常会有多个服务层调用,大量的微服务通过网络进行通信,从...

2019-11-05 21:07:15 102

原创 Eureka集群配置

如果是单节点的注册中心,是无法保证系统稳定性的,当然现在项目部署架构不可能是单节点的。集群节点的部署思路:通过运行多个实例并请求他们相互注册,来完成注册中心的高可用性(结伴注册)1、添加依赖 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId...

2019-11-05 18:28:09 122

原创 Eureka深入理解

一、Eureka Environment配置和Eureka DataCenter的配置二、Eureka开启自我保护的提示三、Eureka注册服务慢的问题如何解决?四、如何解决Eureka Server不踢出已关停的节点的问题?五、Eureka配置instanceId显示IP一、Eureka Environment的配置启动Eureka后,我们可以看到默认的环境和数据中...

2019-11-05 15:28:26 417

原创 覆写Fegin的默认配置及Fegin的日志

一、使用场景二、例子一、使用场景1、在使用Fegin的时候,有时候需要自定义配置,如果,某个服务需要加入鉴权,才能进行访问或者需要打印这个调用需要打印DEBUG级别的日志二、例子例子1:某个服务需要加入鉴权,如:我们要请求eureka服务的基本信息,访问eureka需要账号密码application.ymlspring: application: n...

2019-10-28 11:47:02 269

原创 Ribbon

一、简介二、负载均衡有哪些方式三、例子四、Ribbon脱离Eureka使用Ribbon是Netflix发布的云中间层服务开源项目,其主要功能是提供客户端侧负载均衡算法。Ribbon客户端组件提供一系列完善的配置项如连接超时,重试等。简单的说,Ribbon是一个客户端负载均衡器,我们可以在配置文件中列出Load Balancer后面所有的机器,Ribbon会自动的帮助你基...

2019-10-26 14:52:24 221

原创 Feign

在上个例子中,我通过1、启动eureka 2、注册服务 3、调用服务做了一个简单的demo,但是在最后面,我是通过这样一段代码来调用服务的提供者的 @GetMapping("/movie/{id}") public User findById(@PathVariable Long id) { // http://localhost:7900/simple/ // VI...

2019-08-24 15:58:53 280

原创 Eureka(服务注册与发现)

1、概述2、例子1、概述我们将一个大的系统拆分成多个服务,那么服务与服务之间难免需要进行相互的调用,如:那么这里就会有消费者和提供者,这里的消费者是电影微服务,这里的提供者是用户微服务服务消费者 调用别的微服务的微服务服务提供者 提供API的微服务如果我不使用服务注册与发现,那我可能需要将各个服务的IP和端口写死在代码里面,这样可维护性就比较差了。或者用一个ng...

2019-08-24 15:58:16 188

原创 dubbo详解及demo实例

一、dubbo例子1(简单示例)二、dubbo例子2(检查依赖)三、dubbo集群容错四、负载均衡策略五、线程模型六、直连提供者七、多注册中心八、多版本九、异步调用十、结果缓存十一、并发控制十二、令牌验证十三、路由规则(某些机房提供服务,有些不提供服务) 一、dubbo例子1(简单示例)由于Dubbo采用全spring配置方式,透明化接入...

2018-12-22 19:20:42 765

原创 dubbo管控台搭建

1、我们需要准备tomcat(提取码:1yo1),还有dubbo-admin-2.5.4.war(提取码:okn0)将tomcat包进行解压,我这边解压到2、将dubbo-admin-2.5.4.war上次到tomcat目录的webapp下,用unzip命令解压unzip dubbo-admin-2.5.4.war解压后入下图所示进入WEB-INF目录,修改dubbo...

2018-12-22 18:42:39 435

原创 dubbo简介

一、dubbo简介随着系统逐渐变多、项目与项目之间需要进行交互,比如A项目有个service想调用B项目的service或者B项目有个service想调用A项目的service,这个时候采用RPC的调用,2个项目可能无关紧要,要是项目越来越多,那调用就乱套了。或者你自己去写一套对外提供服务的接口,然后通过http方式的调用,这样的话,成本代价比较高,而且不太安全。Dubbo就是一个通用的SOA...

2018-12-22 18:08:45 467

原创 nginx日志切割、反向代理(proxy_pass)与负载均衡(upstream)

1、基本概念2、基本配置3、日志切割4、反向代理(proxy_pass)与负载均衡(upstream)5、nginx优化1.1、基本概念Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大...

2018-11-03 21:55:21 7629

原创 solr之mysql全量同步与增量同步

一、solr管理员命令二、案例实战说明(全量同步与增量同步)一、solr管理员命令我们在生产环境时,需要管理员维护solr服务器的数据信息,,那么这里有3种主要手段:1.curl方式curl http://localhost:8080/solr/update --data-binary "&lt;delete&gt;&lt;query&gt;title:abc&lt;/quer...

2018-11-03 16:39:02 3709

原创 Solr基础及java操作solr例子

一、基本概念二、solr索引操作三、java操作solr例子一、基本概念因为Solr 包装并扩展了 Lucene,所以Solr的基本上沿用了Lucene的相关术语。更重要的是,Solr 创建的索引与 Lucene 搜索引擎库完全兼容。通过对Solr 进行适当的配置,某些情况下可能需要进行编码,Solr 可以阅读和使用构建到其他 Lucene 应用程序中的索引。例如,Field ...

2018-10-22 19:54:02 4252 1

原创 Solr安装与IK Analyzer(中文分词器)

一、Solr简介二、solr安装三、solr基础四、IK Analyzer(中文分词器) 一、Solr简介Solr是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器。Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展,并对索引、搜索性能进行了优化。Solr可以独立运行,运行在Jetty、Tomcat等这些Se...

2018-08-13 18:27:09 7546 3

原创 Storm集成Redis

Storm如果是数据了很大,持久化到DB中,就需要频繁的做磁盘IO,这样的话明显不太好。一般来说做持久化一般是和redis,他们2个是比较配套的。他们都是基于内存的数据库。官方也是不推荐把Storm的数据持久化到DB,因为Storm可能会有多多少少的数据丢失,包括hadoop都是一样的。所以Storm处理了大批量的数据。如果是数据量少,就没有必要使用Storm这个工具了。由于Redis有RDB和A...

2018-05-08 12:17:22 719

原创 Storm集成kafka

一、简介二、安装三、一个简单生产者与消费者DEMO四、Storm集成Kafka一、简介Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。 对于像Hadoop的一样的日志数据和离线分析系统,但又要求实时处...

2018-05-07 11:19:39 1618

原创 strom批量发送(实现IBatchSpout接口、non-tranctional spout)

在该例子中,使用IBatchSpout接口实例化一个spout,重写emitBatch方法,方法中将根据batchId将数据batchesMap中(batchesMap其实就是一个批的概念,这批数据可以自己指定,我这里就是指定了4批的数据,也就是DATA_MAP里面的数据,由于在emitBatch会指定一个batchId,所以这个batchId就和这一批数据进行挂钩。如果以后有事务,那么这批数据其

2018-04-16 01:03:13 965

原创 Storm-Trident

1、简介2、TridentFunction3、TridentFilter4、projections5、Trident repartitioning operations5.1)The shuffle operation5.2)The partitionBy operation5.3)The global operation5.4)The broadcast operation5.5)The bat...

2018-04-16 00:22:59 590

原创 Storm的分布式的远程方法调用(DRPC)

一、DRPC就是分布式的远程方法调用。在Storm里面引入DRPC主要是利用storm的实时计算能力来并行化CPU密集型的计算任务,DRPC的storm topology以函数的参数流作为数据,而把这些函数调用的返回值作为topology的输出流DRPC其实不能算是storm本身的特性,他是通过组合storm的stream、spout、bolt、topology而成的一种模式,本来应该把D

2017-12-10 17:52:33 498

原创 Storm分组

1、定义:Stream Grouping:为每一个bolt指定应该接收哪个流作为输入,流分组定义了如何在bolt的任务直接进行分发。1.1 Shuffle Grouping随机分组:保证每个bolt接受到的tuple数目相同1.2 Fields Grouping按字段分组,比如按照userid来分组,具有同样的userid的tuple会被分到同样的Bolts,而不同的userid则会被分配到不同的...

2017-12-10 14:53:55 382

原创 Storm入门-helloWorld

一、简述1、首先需要编写数据源类、Spout。可以使用两种方式1.1继承BaseRichSpout类1.2实现IRichSpout接口1.3重点需要几个方法进行重写或实现:open(初始化方法)、nextTuple(核心方法)、declareOutputFiles(转向到下个节点的方法)2、然后编写我们的数据处理类:bolt,也可以使用两种方式2.1继承BaseBasicB

2017-12-02 17:44:46 670

原创 Storm集群搭建

1、关闭防火墙,修改etc/hosts配置(3台机的IP可以互相通信)2、下载并安装JDK3、搭建Zookeeper集群(保证3台机器的Zookeeper都可用)4、安装python(2.6.6版本以上)5、下载并且解压Storm发布版本6、修改storm.yaml配置文件7、先启动ZK集群后再启动storm各个后台进程。在上述的步骤中。第1步骤第2步骤可以自行

2017-11-24 01:10:55 344

原创 Storm简介

一、Storm简介Storm是Twitter开源的一个分布式的实时计算系统,用于数据的实时分析,持续计算等官网地址:http://www.storm-project.net/源码地址:https://github.com/nathanmarz/storm应用场景:1、实时推荐系统,比如我们在某电商网站去买东西,我们会在网页旁边看到我们自己所需要的商品相关的系列产品。而had

2017-11-23 17:07:36 280

原创 ElasticSearch基础知识--检索文档

一、

2017-06-06 11:57:59 741

原创 ElasticSearch环境搭建

一、ElasticSearch简介二、ElasticSearch安装三、安装Kiabna一、ElasticSearch简介ElasticSearch是一个基于Apache Lucene(TM)的开源搜索引擎,Elasticsearch也使用Java开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的RESTful API来隐藏Luce

2017-06-04 15:29:59 483

原创 Ember.js学习笔记

最近公司需要用到Ember.js做管理后台,所以学习一番。

2017-04-08 14:21:21 2467

原创 Zookeeper简介

paxos算法   zookeeper没有单节点部署,最少是3个节点,也就是奇数个节点,能不能部署4个、6个等个节点,其实也可能只是不利于paxos算法选举。cas zab

2017-03-04 20:41:12 417

原创 RocketMQ的顺序消费和事务消费

1、一个topic默认有4个队列2、一个生产者可以对多个主题去发送消息3、三种消费  普通消费  顺序消费 事务消费

2017-02-27 11:29:19 11659 4

原创 RocketMQ多Master多Slave模式部署

1. 服务器环境入下图所示,四台机器,IP位145为主节点,146是145的从节点。149是主节点,150是146的从节点序号                IP                         用户名                              角色                                              模式1

2017-02-25 18:05:22 6866 1

原创 RocketMQ双Master模式部署

RocketMQ是一个分布式的、队列模型的消息中间件,具有以下特点:1、能够保证严格的消息顺序2、提供丰富的消息拉去模式3、高效的订阅者水平扩展能力4、实时的消息订阅机制5、亿级的消息堆积能力6、Metaq1.x和2.x。3.x以后改名RocketMQ

2017-02-20 09:39:37 1511 3

原创 nginx+keepalive安装部署与主从双机热备+自动切换

一、安装Nginx:1 :  下载: http://nginx.org/download/nginx-1.6.2.tar.gz2 : 进行安装: tar -zxvf nginx-1.6.2.tar.gz3 :  下载所需要的依赖库文件:    yum install pcre    yum install pcre-devel    yum install zlib    yum ...

2017-02-01 00:52:40 3867

原创 Zookeeper + ActiveMQ 集群整合

一、使用ZooKeeper实现的Master-Slave实现方式,是对ActiveMQ进行高可用的一种有效的解决方案,高可用的原理:使用ZooKeeper(集群)注册所有的ActiveMQ Broker。只有其中的一个Broker可以对外提供服务(也就是Master节点),其他的Broker处于待机状态,被视为Slave。如果Master因故障而不能提供服务,则利用ZooKeeper的内部选举机制

2017-01-29 22:33:31 6922 2

原创 SQL优化(索引、物化视图、分区)

一般sql优化有几种解决方案:一、索引二、分区三、物化视图四、并行查询一、索引索引的说明:   索引是与表相关的一个可选结构,在逻辑上和物理上都独立于表的数据,索引能优化查询,不能优化DML操作,Oracle自动维护索引,频繁的DML操作反而会引起大量的索引维护。如果SQL语句仅访问被索引的列,那么数据库只需从索引中读取数据,而不用读取表,如果该语句

2017-01-26 12:01:02 3101

原创 JVM和垃圾回收

虚拟机大体上分为2种:1、系统虚拟机  2、程序虚拟机1、类加载子系统:负责从文件系统或者网络中加载class文件,加载的信息存放在方法区里面。2、方法区:存放类信息、常量信息、常量池信息,包括字符串常量,数字常量等等。3、Java堆:java虚拟机启动的时候会建立java堆,他是java程序主要的内存工作区域。几乎所有对象的实例都放在堆中。堆所有线程共享的。4、直接内存:

2017-01-22 15:15:38 391

空空如也

空空如也

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

TA关注的人

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