- 博客(10)
- 收藏
- 关注
原创 Kafka consumer多线程下not safe for multi-threaded access问题
Kafka consumer多线程下的commit问题 默认配置下kafka consumer的offset的commit是自动的,如需改成手动提交可以修改参数:enable.auto.commit = false 在手动提交offset的模式下,只需要执行kafkaConsumer.commitSync()即可提交本次拉取消息的所有分区的offset信息,伪代码片段如下: Properties kafkaProperties = new Properties(); ...... kafkaProperti
2021-09-29 14:02:31
7591
原创 golang: lock.condition实现
官方提供的 sync.Cond 支持 Wait() Signal() Broadcast() 三个函数,相对比较简单,有时候可能会用到等待超时或者等待中断等操作,这里基于sync.Locker和channel实现一个扩展版的condition,支持函数: Await() //等待函数 AwaitWithTimeOut(timeout time.Duration) bool //等待带超...
2019-04-11 14:17:26
1017
2
原创 HBase和Phoenix的类型转换
在Phoenix中字段的类型所保存的byte数组和HBase中用Bytes工具了转换的byte数组可能会对不上,比如Bytes.toBytes(1)的结果和Phoenix中定义为INTEGER类的byte[]就不一样。因为Phoenix中的INTEGER是带符号的,要用无符号的话需要定义UNSIGNED_INT类型,UNSIGENT_INT类型的byte[]值和Bytes.toBytes(1)是一...
2018-05-09 16:08:30
5956
原创 基于Spark的数据处理 --图数据库的数据处理与转换(一)
这里介绍一下Spark对大数据处理的一些过程和使用心得。举一个之前工作中的实际开发的例子:有这样一个需求场景,在公安行业中有各式各样的数据,我们这里挑选旅馆数据作为例子,假设数据结构如下: 身份证号(sfzh) 姓名(xm) 旅馆代码(lgdm) 房号(fh) 入住时间(rzsj) 离店时间(ldsj) 现在需要将这些数据进行转换成csv文件并导入到neo4j图形
2017-10-18 17:04:16
1699
原创 Dubbo源码分析 之 netty调用获取返回值
netty作为异步非阻塞的rpc框架,也是dubbo默认的远程rpc协议,让我们来看一下dubbo的客户端是实现同步获取返回信息的效果的: 在调用发送请求之前,如果我们设置断点进行跟踪的话会进入一连串的Invoker ,因为在dubbo客户端只有接口没有具体的实现类,所以dubbo使用反向代理的方式实现类方法的代理调用,最终会进入 DubboInvoker 类的 doInvoke 方法:
2017-07-31 16:02:18
4167
原创 基于spring-session的Sesion工具类
spring-session-data-redis可结合redis实现session的共享,并且使用SessionRepositoryFilter代理了所有session的相关方法。 然鹅,这么牛逼的模块却只能用在session上,不能自定义某些操作,略有不爽。于是自己写了一个session工具类: private SessionRepository sessionRepository; p
2017-07-05 23:14:49
1643
原创 基于RedisTemplate的redis工具类
RedisTempla是一个spring-redis模块下的操作redis的工具类,有点类似于jdbcTemplate。 但是操作起来略显麻烦,于是封装一个稍微简单点的redis工具类,直接上代码: import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.co
2017-07-05 22:52:17
5486
1
原创 Groovy、Scala的闭包作为入参(闭包的回调)
Groovy和Scala的闭包回调写法 Groovy: public void test(Closure closure) { def a = 1; closure.call(a); } test { x -> println x + 1 }
2017-03-29 18:53:33
662
原创 netty4 的同步调用
netty是一个基于nio的socket框架,其调用方式也是异步调用。客户端建立和服务端的链接后,客户端向服务的发送消息,客户端并不等待服务端的的返回,而是在另外一个监听线程中监听服务的的返回。所以客户端的信息发送和信息返回是在两个线程中进行的。 但是在很多时候客户端需要等待服务端的消息,那么如何操作呢,就是使用闭锁等待。具体示例: 先定义一个消息类 NettyMessage public
2016-11-04 14:12:04
3530
原创 Hibernate criteria 关联
hibernate的criteria版本相对比较老了,好像好久没更新内容了,在hibernate5的源码中直接被@Deprecated掉了,然后建议使用Jpa的criteria。
2016-10-14 17:24:42
1811
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人