springboot整合kafka自动提交的问题

2020-01-26
阅读 3 分钟
8.5k
最近遇到一个springboot整合kafka设置手动提交不生效的问题,后来发现是自己的方法不对,走了一些弯路,这里记录一下。 环境准备 spring boot 2.1.6.RELEASE 本地zk, 单节点kafka,版本是kafka_2.11-2.2.0 新建一个topic,topic名是 spring-kafka-demo4,如下: {代码...} topic设置了两个分区。 问题描述 消费者工程的...

详解 java CompletableFuture

2020-01-25
阅读 6 分钟
3k
要理解 CompletableFuture,首先要弄懂什么是 Future。因为后者是前者的扩展。本文并不打算详细的介绍 Future,毕竟不是本文的重点。

用一个示例讲解我如何一步步实现高并发服务(基于C++)

2020-01-25
阅读 10 分钟
3.2k
刚开始客户端数量少而且访问不频繁,所以没太关注并发的问题。当时用工具测试大概只能支持的40/秒的并发访问,而且已经有数据串包的情况出现了。最近有空做了不少的优化并记录了笔记备忘。

redis持久化方案介绍

2020-01-25
阅读 3 分钟
2.6k
基本介绍 本次演示使用的redis版本是3.2.100,操作系统是win10。 redis支持两种持久化方案,RDB和AOF,前者是默认打开的,后者需要手动开启。我们通过配置文件可以验证这一点, RDB默认开启 {代码...} 这三条配置是RDS触发快照的条件,它们的意思分别是: 900秒内如果有一条写入,则产生快照 300秒内如果有1000次写入,...

Kafka系列之broker-list,bootstrap-server以及zookeeper

2020-01-19
阅读 2 分钟
7.5k
broker-list指定集群中的一个或者多个服务器,一般我们再使用console producer的时候,这个参数是必备参数,另外一个必备的参数是topic,如下示例:

从一个问题来加深对mysql可重复读的理解

2020-01-17
阅读 2 分钟
1.7k
我用下面的表结构和初始化语句作为试验环境,事务隔离级别是可重复读。现在,我要把所有“字段 c 和 id 值相等的行”的 c 值清零,但是却发现了一个“诡异”的、改不掉的情况。请你构造出这种情况,并说明其原理。

kafka系列之camel-kafka

2020-01-17
阅读 6 分钟
2.4k
camel 本身是一个路由引擎,通过 camel 你可以定义路由规则,指定从哪里(源)接收消息,如何处理这些消息,以及发往哪里(目标)。camel-kafka 就是 camel 的其中一个组件,它从指定的 kafka topic 获取消息来源进行处理。

什么鬼,java线上内存溢出了?试试这个神器

2020-01-15
阅读 3 分钟
3k
内存分析工具MAT(Memory Analyzer Tool)是一款 JVM 的内存分析工具,在实际的工作中可以帮助我们解决生成上内存占用过高等问题。

如何优雅的判断一个对象的属性是否全部为空

2020-01-14
阅读 3 分钟
6.7k
马上能想到的一个方案是,一个一个判断对象中的属性。这个倒也可以,但是如果要判断的对象比较多,就得给每个对象写一个判断方法(因为每个对象的属性都不一样)。

如何打印GC日志排查问题

2020-01-14
阅读 3 分钟
2k
在工作当中,有时候我们会需要打印GC的相关信息来定位问题。该如何做呢? 先来看个示例, {代码...} 直接运行,结果如下, {代码...} 你应该觉得奇怪,同样的往一个list插入100万条数据,为啥第一个耗时比较久? 这种时候,有经验的工程师应该能马上怀疑是GC的问题,我们可以通过在运行时添加JVM参数来打印程序运行时的G...

map和object相互转换的几种方法和对比

2020-01-12
阅读 6 分钟
21.8k
工作中经常遇到这样的场景,需要在object和map直接相互转换,这里总结一下。 我先定义一个实体类,后面介绍的几种转换方法都以这个实体类为例进行说明。 {代码...} 这里尽量覆盖不同的属性类型,便于全面的测试转换方法。 第一种方法,利用反射 然后我们写个测试方法验证一下, {代码...} 输出, {代码...} 然后我们接着...

一文说透访问者模式

2020-01-09
阅读 6 分钟
1.9k
访问者模式(Visitor Pattern)模式是行为型(Behavioral)设计模式,提供一个作用于某种对象结构上的各元素的操作方式,可以使我们在不改变元素结构的前提下,定义作用于元素的新操作。

从一个生产上的错误看kafka的消费再均衡问题

2020-01-07
阅读 2 分钟
1.7k
kafka的服务端在超过了 max.poll.interval.ms 时间内没有收到某个消费者的心跳,认为该消费者已经“挂了”,所以进行了topic的分区所有权“再均衡”。

带你了解控制线程执行顺序的几种方法

2020-01-06
阅读 7 分钟
2.5k
通常情况下,线程的执行顺序都是随机的,哪个获取到CPU的时间片,哪个就获得执行的机会。不过实际的项目中有时我们会有需要不同的线程顺序执行的需求。借助一些java中的线程阻塞和同步机制,我们往往也可以控制多个线程的执行顺序。

Elasticsearch java API客户端介绍

2020-01-02
阅读 4 分钟
5k
基本上官方指南就已经向我们说明了一切。如下图所示: 从官方指南上,ES的java 客户端分为两个大类。分别是: Java REST Client Java API 下面分别说下这两种有什么区别。 Java API 在ES 7.0之前最常采用的API,基于TransportClient客户端。网上大部分ES 客户端的资料基本都是基于它的。这种方式在ES 7.x后已经不被官方...

使用kafka连接器迁移mysql数据到ElasticSearch

2020-01-01
阅读 5 分钟
3.8k
把 mysql 的数据迁移到 es 有很多方式,比如直接用 es 官方推荐的 logstash 工具,或者监听 mysql 的 binlog 进行同步,可以结合一些开源的工具比如阿里的 canal。

dubbo服务接口设计的几个建议

2019-12-31
阅读 7 分钟
6.4k
尽量不用独立的多个参数 比如我们有个dubbo的服务接口是这样定义的, {代码...} 服务实现示例如下: {代码...} 然后我们中间服务进行升级,需要增加一个入参,把接口改成了如下的方式: {代码...} 服务实现改成了: {代码...} 服务上线后,调用方肯定会报错,因为整个接口声明都变了,相当于两个完全不同的接口。 那如何...

说一个在工作中遇到的mysql索引失效的问题

2019-12-30
阅读 2 分钟
1.9k
下面分享的是我在工作中遇到的一个问题。处于保密考虑,我拿一个类似的场景举例子。 1、现象描述 先说结论。我遇到的问题是,mysql varchar类型的字段,传入的查询条件没有加引号,导致索引失效。 比如我有一张表,结构如下: {代码...} 可以看到 user_id 字段是 varchar 类型,并且这个字段傻姑娘有一个普通索引。 我分...