kafka
zhuguanghalo
这个作者很懒,什么都没留下…
展开
-
Kafka竟然不支持读写分离!今天才知道!
Kafka竟然不支持读写分离!今天才知道! 在 Kafka 中,生产者写入消息、消费者读取消息的操作都是与 leader 副本进行交互的,从 而实现的是一种主写主读的生产消费模型。数据库、Redis 等都具备主写主读的功能,与此同时还支持主写从读的功能,主写从读也就是读写分离,为了与主写主读对应,这里就以主写从读来称呼!在 Kafka 中,生产者写入消息、消费者读取消息的操作都是与 leade...原创 2019-04-26 11:00:06 · 264 阅读 · 0 评论 -
Spring Cloud Stream如何处理消息重复消费?
最近收到好几个类似的问题:使用Spring Cloud Stream操作RabbitMQ或Kafka的时候,出现消息重复消费的问题。通过沟通与排查下来主要还是用户对消费组的认识不够。其实,在之前的博文以及《Spring Cloud微服务实战》一书中都有提到关于消费组的概念以及作用。那么什么是消费组呢?为什么要用消费组?它解决什么问题呢?摘录一段之前博文的内容,来解答这些疑问:通常在生产环境,我...原创 2019-05-27 20:24:55 · 439 阅读 · 0 评论 -
Elasticsearch的Refresh与Flush操作
初次接触到这两个概念,估计都会觉得他们没什么差别,都是为了在操作索引之后让索引可以被实时性的搜索,不过它们还是有点不同的。Elasticsearch底层依赖Lucene,这里我们介绍下Lucene的segment, Reopen,commit。Segment在ES中,基本的存储单元是shard(分片),但是在更底层的Lucene上稍微有点不同,ES的每一个shard是Lucene的一个ind...原创 2019-05-30 11:07:35 · 2642 阅读 · 0 评论 -
基于Spring cloud gateway定制的微服务网关
在构建微服务的架构体系过程中,API网关是一个非常重要的组件。那我们应该怎样实现一个微服务API网关,本文主要介绍Spring Cloud Gateway的功能,以及如何基于Spring Cloud Gateway定制自己的网关。Spring Cloud GatewaySpring Cloud Gateway提供的是一个用于在Spring MVC之上构建API网关的library,它的目标是...原创 2019-05-22 16:23:18 · 812 阅读 · 0 评论 -
彻底搞懂synchronized(从偏向锁到重量级锁)
接触过线程安全的同学想必都使用过synchronized这个关键字,在java同步代码快中,synchronized的使用方式无非有两个:通过对一个对象进行加锁来实现同步,如下面代码。synchronized(lockObject){ //代码}对一个方法进行synchronized声明,进而对一个方法进行加锁来实现同步。如下面代码public synchornized void ...原创 2019-05-17 11:53:12 · 732 阅读 · 1 评论 -
Cookie、Session和Token
前言Web诞生之初,功能比较单一:允许Internet上任意一个用户都可以从许多文档服务计算机的数据库中搜索和获取文档。服务器不需要记录谁在某一段时间里都浏览了什么文档,每次请求都是一个新的HTTP协议, 即请求加响应,服务器不用记住是谁刚刚发了HTTP请求, 每个请求对服务器来说都是全新的。随着交互式Web应用的兴起,网站有了登录的需求,如在线购物网站,社交网站等等。这就面临一个问题,服务器...原创 2019-05-12 19:28:24 · 255 阅读 · 0 评论 -
你需要了解的网络协议
网络协议有哪些?应用层:HTTP、FTP、SSH、SMTP表示层会话层传输层:TCP、UDP网络层:IP数据链路层物理层HTTP的工作流程如下 :HTTP是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。地址解析HTTP协议是通过标准URL来请求指...原创 2019-05-16 11:30:05 · 513 阅读 · 0 评论 -
聚集索引、非聚集索引、覆盖索引的工作原理分析总结!
「数据库」和「数据库索引」这两个东西是在服务器端开发领域应用最为广泛的两个概念,熟练使用数据库和数据库索引是开发人员在行业内生存的必备技能。使用索引很简单,只要能写创建表的语句,就肯定能写创建索引的语句,要知道这个世界上是不存在不会创建表的服务器端程序员的。然而, 会使用索引是一回事, 而深入理解索引原理又能恰到好处使用索引又是另一回事,这完全是两个天差地别的境界(我自己也还没有达到这层境界)。...原创 2019-05-21 14:13:25 · 396 阅读 · 0 评论 -
JS事件绑定的常用方式实例总结
常用的事件绑定的几种方式有三种:直接在 dom 元素上进行绑定。用 on 绑定。用 addEventListener、attachEvent 绑定。一、直接在 dom 元素上进行绑定<input id="btn1" type="button" onclick="test();" />二、用 on 绑定兼容性:在IE,FF,Chrome,Safari,Mozilla,Op...原创 2019-05-24 11:41:50 · 535 阅读 · 0 评论 -
数据库连接池
什么是数据库连接池呢?数据库连接池(Connection Pooling)是程序启动时建立足够的数据库连接,并将这些连接组成一个连接池,由程序动态地分配池中的连接进行申请、使用、释放。由于数据库连接的创建和断开是一个耗时性的操作,同时对数据库会造成安全隐患。因此,在程序初始化时集中创建多个连接,并将其集中管理供程序使用,可以保证较快的数据读写速度且提高系统的安全可靠性。连接池是创建和管理一个...原创 2019-05-15 19:03:58 · 650 阅读 · 0 评论 -
我的在线编程工具
1.json.cnJson中文网致力于在中国推广Json,并提供相关的Json解析、验证、格式化、压缩、编辑器以及Json与XML相互转换等服务。(1).json在线解析(2).什么是json(3).json解析代码(4).json组件2.Tool.lu程序员的工具箱。工具在手,事半功倍,工作无忧。可支持在线运行php,c,c++,go,python,java,等主流语言,页...原创 2019-05-10 17:19:46 · 2317 阅读 · 0 评论 -
Zookeeper与paxos算法
一、 zookeeper是什么官方说辞:Zookeeper 分布式服务框架是Apache Hadoop 的一个子项目,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。好抽象,我们改变一下方式,先看看它都提供了哪些功能,然后再看看使用它的这些功能能做点什么。二、 zookee...原创 2019-05-19 17:18:25 · 466 阅读 · 0 评论 -
面试必问的JVM应该怎么学(面试题含答案)
java虚拟机的基本结构如图:1)类加载子系统负责从文件系统或者网络中加载Class信息,加载的类信息存放于一块称为方法区的内存空间。除了类的信息外,方法区中可能还会存放运行时常量池信息,包括字符串字面量和数字常量(这部分常量信息是Class文件中常量池部分的内存映射)。2)java堆在虚拟机启动的时候建立,它是java程序最主要的内存工作区域。几乎所有的java对象实例都存放在java堆中...原创 2019-05-14 16:50:32 · 343 阅读 · 0 评论 -
阿里面试题:Mybatis中的Dao接口和XML文件里的SQL是如何建立关系的?
一、解析XML首先,Mybatis在初始化SqlSessionFactoryBean的时候,找到mapperLocations路径去解析里面所有的XML文件,这里我们重点关注两部分。1、创建SqlSourceMybatis会把每个SQL标签封装成SqlSource对象。然后根据SQL语句的不同,又分为动态SQL和静态SQL。其中,静态SQL包含一段String类型的sql语句;而动态SQL则...原创 2019-05-09 15:53:34 · 302 阅读 · 0 评论 -
12 款超实用的 Win10 UWP 应用分享
Grover Podcast商店最佳播客应用!纯净简洁,体验很棒。支持手动添加播客源、在线浏览搜索频道、资源下载、OPML 备份文件导入/导出等。ACG播放器功能很强大的一款视频播放器,效果酷炫,支持艺术字母、音效视效增强,可自由定制界面样式和手势操作。疯狂番茄 - 番茄工作法 + 任务管理很完善的番茄钟工具,正如其名字里说的那样,结合和番茄钟和任务管理,相当于 todo-list...原创 2019-05-13 19:13:47 · 7239 阅读 · 0 评论 -
Mysql数据库读写分离和需要注意的事项
因为用户的增多,数据的增多,单机的数据库往往支撑不住快速发展的业务,所以数据库集群就产生了!今天来说说读写分离的数据库集群方式!读写分离顾名思义就是读和写分离了,对应到数据库集群一般都是一主一从(一个主库,一个从库)或者一主多从(一个主库,多个从库),业务服务器把需要写的操作都写到主数据库中,读的操作都去从库查询。主库会同步数据到从库保证数据的一致性。这种集群方式的本质就是把访问的压力从主库...原创 2019-05-06 11:51:32 · 463 阅读 · 0 评论 -
Kafka面试题全套整理:消息处理+高可用集群+生产者与消费者实例
有很多人问过我要过Kafka相关的面试题,我一直懒得整理,这几天花了点时间,结合之前面试被问过的、别人咨询过的、我会问别人的进行了相关的整理,也就几十题,大家花个几分钟看看应该都会。面试题列表如下:Kafka的用途有哪些?使用场景如何?Kafka中的ISR、AR又代表什么?ISR的伸缩又指什么Kafka中的HW、LEO、LSO、LW等分别代表什么?Kafka中是怎么体现消息顺序性的?...原创 2019-04-30 10:56:50 · 299 阅读 · 0 评论 -
MySql索引那些事
一、什么是索引数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询、更新数据库表中数据。就像我们以前用的新华字典的目录一样,能帮助我们快速查询到某一个字。二、索引的分类三、索引实例分析(以InnoDB为例)3.1 InnoDB下索引的结构InnoDB下,表都是根据主键顺序以索引的形式存放的,这种数据存储方式也被称为聚簇索引,“聚簇”就是表示数据行和相邻的键值紧凑的存储在一...原创 2019-04-27 16:39:39 · 164 阅读 · 0 评论 -
Hadoop如何将TB级大文件的上传性能优化上百倍?
这篇文章,我们来看看,Hadoop的HDFS分布式文件系统的文件上传的性能优化。首先,我们还是通过一张图来回顾一下文件上传的大概的原理。由上图所示,文件上传的原理,其实说出来也简单。比如有个TB级的大文件,太大了,HDFS客户端会给拆成很多block,一个block就是128MB。这个HDFS客户端你可以理解为是云盘系统、日志采集系统之类的东西。比如有人上传一个1TB的大文件到网盘,或...原创 2019-05-31 16:05:27 · 1211 阅读 · 0 评论