
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
有一个这样的需求:客户端不间断上报数据到后台服务器,后台服务判断TOP N里面是否包含当前上报的客户端,其中TOP N来源于上报数据值为前N的客户端。即这个top N数据是不断在变化的。 若客户端在TOP N中则可以继续上报,否则停止上报,如果之前属于TOP N,但后面又被移除的要告知客户端停止上报,新加入的要告知继续上报。方案1:mysql服务端收集客户端上报的数据同步写到mysql的一张表中。
前言项目中读写redis用的是spring-data-redis提供的,方便嘛,但是有一天我想用Jedis来操作redis,于是我就从RedisTemplate中拿到了Jedis,也确实拿到了,于是就有了这个问题。开始自测时候没有发现问题,因为都是单线程环境下,没有覆盖到高并发情况,但是上生产后发现杯具了。从RedisTemplate获取Jedis代码如下:import lombok.extern
spring cache 集成redis是基于spring-data-redis组件开发的一直通过注解就能轻松实现redis缓存操作的框架。但原生的spring cache不支持缓存过期,默认都是没有过期时间的,以下实现自定义缓存过期时间。spring-data-redis版本是1.8.11,所以需要使用此版本或者兼容此版本的其他版本。先看spring的RedisCacheManager类代...
一天发现线上环境大量报kafka异常:CommitFailedExceptionorg.apache.kafka.clients.consumer.CommitFailedException:Commit cannot be completed since the group has already rebalanced and assigned the partitions to another
案例一:有一张表A,先更新,如果影响行数为0,则执行INSERT插入数据。很常见的场景,在生产上也跑了很久,没有出现什么问题。但是有一次在测试环境做压测时居然出现了死锁,Deadlock found when trying to get lock; try restarting transaction因为对mysql锁不熟悉,为什么insert也会死锁,不是一般在update的时候会死锁吗?...
今天学习了一下阿里的牛逼消息中间件RocketMq,照着官网安装和实践了一把,也遇到一些坑,不过最后还是解决了,现在做个总结。官网地址:http://rocketmq.apache.org/下载的是当前最新版本:4.4.0rocketmq-all-4.4.0-source-release.zip首先解压,通过命令unzipunzip rocketmq-all-4.4.0-source-r...
1. 前言@Bean注解是很常见的,在spring项目中随处可见,如果要定义一个bean让spring帮助我们管理,那么只要在一个带有@Configuration注解的类下面定义即可。比如:@Configurationpublic class Xxx{@Beanpublic MyBean yyds() {return new MyBean();}}这样启动spring应用后,一个name叫yyds
最近在自学vue,开始以为跟angular大同小异,但是真正使用的时候发现还是很多不一样的地方,可能是因为刚刚开始理解的还不够深入O(∩_∩)O。 下面说说前端jsp怎么和后台交互,后台使用的是springMvc框架。html部分<div id="app"><table class="table table-bordered
因为最近遇到spring-kafka消费线程中断消费的问题,所以看了它消费线程的启动过程,来总结一下。Lifecycle和SmartLifecycle要想知道它的加载过程,首先要先了解这两个接口:Lifecycle是Spring中最基础的生命周期接口,该接口定义了容器启动和停止的方法。SmartLifecycle是对Lifecycle的一个扩展接口,相比Lifecycle增加以下功能:无需容器显示
一天发现线上环境大量报kafka异常:CommitFailedExceptionorg.apache.kafka.clients.consumer.CommitFailedException:Commit cannot be completed since the group has already rebalanced and assigned the partitions to another







