FFA(Frighting for Ambition!)

梦想注定是孤独的旅行,路上少不了质疑和嘲笑,但那又怎样!

kafka通过java api 获取当前消费组offset/logsize/lag信息,实现消费延迟监控

一般监控kafka消费情况我们可以使用现成的工具来查看,但如果发生大量延迟不能及时知道。所以问题就来了,怎么用java api 进行kafka的监控呢? 用过kafka都该知道 延迟量 lag = logSize(topic记录量) - offset(消费组消费进度) 所以我们获取到logSi...

2018-04-11 14:02:03

阅读数 6984

评论数 7

代理模式 - spring aop 抛砖

一、什么是代理模式 这里使用到编程中的一个思想:不要随意去修改别人已经写好的代码或者方法,如果需改修改,可以通过代理的方式来扩展该方 法。 举个例子来说明代理的作用:假设我们想邀请一位明星,那么并不是直接连接明星,而是联系明星的经纪人,来达到同样的目 的.明星就是一个目...

2017-12-21 12:14:27

阅读数 2078

评论数 0

使用aop代理获取不到Annotation注解问题

问题场景:使用aop切面方法执行一些业务,过程中查看执行的方法是否有一个自定义的注解,有的话做其他的操作 这里碰到了一个问题 ,执行的方法有注解,但是通过Annotation an = method.getAnnotation(UserChangeLog.class); 取值为null.具体情况和...

2017-12-19 14:29:54

阅读数 4736

评论数 2

Java面试之路(二)数据库部分

由于本人只用过mysql数据库,所以本文整理的面试题也是基于mysql数据库的。 画外音:以前一直觉得为什么面试非要问你原理性的东西呢,开发的工作是利用我们学的去创造一些东西,能达到目的不就行了,为什么买个车还要知道车轱辘是怎么造的? 最近面试的几天,我慢慢明白了,一方面你对一个工具了解的多,...

2017-11-18 21:57:52

阅读数 2140

评论数 0

Java面试之路(一)Java基础部分

引言最近辞职,开始了一轮又一轮腥风血雨的面试,开个专栏,记录下面试中的各种疑难杂症问题,面试的公司有58企服、便利蜂,美团等,给大家分享下。专栏将分为几部分:java基础、数据库部分、分布式架构中间件部分、网络及算法部分。本篇来说下基础部分。博主刚毕业一年,加上大四一年外包经验,工作两年,本以为面...

2017-11-17 15:55:10

阅读数 2055

评论数 2

使用junit进行多线程并发测试

没使用过junit的,请看上篇博客。 这篇讲一下如何使用junit进行多线程并发测试 ~ 实际上junit是不支持多线程的,你可以试试,在test方法里面new个 Thread ~ 会报错 ~ 那你会问我在这还扯什么犊子 ~ 我当然不是在这扯犊子了~~ 有插件 ~~ 对,有插件!...

2017-08-24 15:06:38

阅读数 7296

评论数 0

使用junit进行集成spring项目的单元测试

本文介绍下项目集成spring,如何使用junit进行单元测试。 我们知道spring的项目测试时可以手写一个main方法,用ClassPathXmlApplicationContext 或 FileSystemXmlApplicationContext读取配置文件,然后实例化bean进行测试...

2017-08-24 14:51:30

阅读数 2220

评论数 0

使用redis实现分布式锁

在高并发、分布式部署的场景中,为保证数据的一致性,常常会用到锁。举个例子,在修改金额这种比较敏感的数据,同一时间只能允许一人操作,如果有两人同时进行一条数据的修改,一个增加金额,一个减少金额,这时就很可能出现数据错误了。如果是单机操作,我们可以使用Synchronized同步实现锁,但对于集群分布...

2017-08-24 11:55:17

阅读数 1749

评论数 0

JVM性能调优(一)

JVM参数:实例 : -Xmx4g -Xms4g -Xmn512m -Xss1m -XX:PermSize=512m -XX:MaxPermSize=512m1 -Xmx – 堆初始值 2 -Xms – 堆最大可用值 3 -Xmn – 新生代大小 4 -Xss – 栈空间大小 5 -Per...

2017-06-23 14:55:03

阅读数 2108

评论数 0

项目发布docker后,请求获取不到参数

docker tomcat get 问题: post请求获取不到参数,get请求受传输字符限制,也获取不到参数、 解决方法: 修改tomcat server.xml 文件,通过shell脚本上传到docker容器,替换掉原来的文件 RUN rm /data/tomcat7/conf...

2017-04-07 17:34:11

阅读数 2502

评论数 1

消息队列kafka java API, 新版旧版消费代码

一、kafka / zookeeper环境配置 (mac下可以使用以下进行配置) 安装zookeeper :brew install zookeeper 启动zookeeper:zkServer start 安装kafka:brew install kafka 启动kafka服务:kaf...

2016-12-09 17:21:40

阅读数 4073

评论数 2

SpringMVC通过@Value读取配置文件

spring中配置: <bean id="configProperties" class="org.springframework.beans.factory.config.PropertiesFactoryBean"> <...

2016-11-21 17:20:58

阅读数 2135

评论数 0

常用git命令

git 操作 * git branch #查询所有分支 * git branch aaa #创建本地分支aaa(创建分支时必须要切到master) * git checkout aaa #切换到分支aaa * git push origin #本地:远程 将本地分支aaa推送到远程分支a...

2016-11-18 10:27:41

阅读数 3581

评论数 0

mac idea配置maven项目

一、首先需要在本机安装maven插件(类似于tomcat的 zip包),然后设置maven环境变量 设置方式:点击 二、idea配置 -Dmaven.multiModuleProjectDirectory=$M2_HOME

2016-09-26 15:43:35

阅读数 3136

评论数 0

mac配置java/maven等环境变量

mac安装java后是不需要修改环境变量的,会自动配置,但是如要更改,可以使用vi编辑器: 打开终端,输入 vi .bash_profile 进入后是命令模式,点击 i 进行编辑, 输入:export M2_HOME=/Users/D_xiao/work/java_tools/idea_ap...

2016-09-26 15:38:58

阅读数 2446

评论数 0

Mac下eclipse安装svn插件

在mac上安装svn真是费了老劲了,简直无语了。 终于装上了。分享一下方法~ 希望对后面用到的朋友有些帮助~

2016-08-24 23:17:44

阅读数 4020

评论数 0

js正则表达式使用

如上图所示,通过 //.test()来使用正则,图中第一个正则表示匹配中文。 同时正则可以在replace/split等方法中使用。 测试js正则可以直接在浏览器开发者工具中测试,即f12控制台中。

2016-08-02 14:02:51

阅读数 2000

评论数 0

利用java反射将map值封装到对象中

有时候我们需要将map里面的值依据键依次封装到对象里面。 这时需要简单的用下反射。 例子如下:public void newLoadFromMap(Map<?,?> map) throws IllegalArgumentException, IllegalAccessExcepti...

2016-07-28 14:56:30

阅读数 4166

评论数 0

使用spring quartz实现任务调度(注解方式)

任务调度的意义就不多说了,无非就是个定时任务。这里写一下使用spring quartz注解方式更方便的实现任务调度:1⃣️配置文件注入定时器,添加schema标记: 注:这里的id什么的随便写就可以的,和你的任务类没有关系,这段配置复制粘贴就好。 2⃣️编写任务类:@Component(&...

2016-07-21 00:13:54

阅读数 3432

评论数 0

spring中使用多线程

我们知道创建多线程有两种方式。 1⃣️实现runnable接口 2⃣️继承thread类 但执行多线程前必须要实例化对象,然后调用start方法才能执行。我们知道spring通过ioc创建实例,对象被动注入到你需要使用的类中,而且,spring创建对象默认是单例的。那么该如何操作呢?方法很简...

2016-07-21 00:06:20

阅读数 3631

评论数 0

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