美团 吴孟达

天道酬勤

《可伸缩架构:面向增长应用的高可用》读书笔记

术语定义 可靠性:系统是否具备无差错地执行预期操作的能力。 可用性:为了执行预期操作,系统当前可运行的能力。 可用性百分比:(该期间的总秒数-系统宕机的秒数)/该期间的总秒数。 风险缓和:通过降低风险发生的可能性,或者降低风险发生时的严重性,来降低风险的影响。 风险管理:在解决风险和缓和...

2018-03-07 12:26:03

阅读数 362

评论数 0

mysql官方文档Clustered and Secondary Indexes翻译

mysql官方文档 聚簇索引与二级索引翻译

2017-07-30 20:08:53

阅读数 566

评论数 0

互联网大厂面试题回忆录

博主工作3年了,面过几家大厂,应聘的岗位是高级Java开发工程师,以下是亲身经历的一些面试题,记录下来,留给需要的人~

2017-04-15 17:46:21

阅读数 2880

评论数 0

Java内存模型

java并发采用的是共享内存模型,线程之间的通信对程序员来说是透明的,内存可见性问题很容易困扰着java程序员,今天我们就来揭开java内存模型的神秘面纱。在揭开面纱之前,我们需要认识几个基础概念:内存屏障(memory Barriers),指令重排序,happens-before规则,as-if...

2017-03-15 11:51:28

阅读数 393

评论数 0

Runnable,Callable,Future,FutureTask的区别与联系

这几个接口和类,我们工作中可能会经常用到,但未必很清楚之间的区别和联系~

2016-09-09 19:16:40

阅读数 736

评论数 0

如何读取Java项目不同路径的配置文件

搭建项目的时候离不开配置文件,项目的配置文件通常会出现在两种位置: 1、src->main->resources 2、磁盘文件夹中(比如D:\opt\wf\activity)对于第一种位置,可以使用下面这种方式ClassLoader cl = Thread.currentThrea...

2016-09-07 20:27:00

阅读数 2046

评论数 0

使用线程池与CountDownLatch多线程提升系统性能

下面这个业务场景,大家可能都会遇到,在遍历一个list的时候,需要对list中的每个对象,做一些复杂又耗时的操作,比如取出对象的uid,远程调用一次userservice的getUserByUid方法,这属于IO操作了,可怕的是遍历到每个对象时,都得执行一次这种RPC的IO操作(甚至不止一次,因为...

2016-08-17 21:03:23

阅读数 4203

评论数 0

AWK的NR和FNR详解

书上说:NR,表示awk开始执行程序后所读取的数据行数.FNR,与NR功用类似,不同的是awk每打开一个新文件,FNR便从0重新累计.下面看两个例子:1,对于单个文件NR 和FNR 的 输出结果一样的 :awk ‘{print NR,$0}’ file11 a b c d 2 a b d c ...

2016-06-21 18:28:42

阅读数 768

评论数 0

使用Java如何让需求在指定时间内生效

比如说端午节有个运营活动,只在6月7号到6月11号之间,过期就自动下线。下面代码就可以实现这个功能。 static{ String s1="2016-06-07 00:00:00"; String s2="2016-06-12 00:00:00...

2016-06-12 11:21:03

阅读数 1145

评论数 0

设计原则(开发必知必会)

1、单一职责原则 一个类,只有一个引起它变化的原因。应该只有一个职责。每一个职责都是变化的一个轴线,如果一个类有一个以上的职责,这些职责就耦合在了一起。这会导致脆弱的设计。当一个职责发生变化时,可能会影响其它的职责。另外,多个职责耦合在一起,会影响复用性。例如:要实现逻辑和界面的分离。fro...

2016-05-14 11:55:10

阅读数 461

评论数 0

使用Redis的Java客户端Jedis

Jedis提供了多种操作方式:单机单连接方式、单机连接池方式、多机分布式+连接池方式。 预备 jedis-2.5.2 commons-pool2-2.2.jar 使用单连接 此方式仅建议用于开发环境做调试用。 // 创建连接String host = "192...

2016-01-04 18:05:15

阅读数 1037

评论数 0

maven + jetty配置context path

在工作中,会遇到开发环境和线上环境,请求url不同的情况,就需要在开发环境中配置一下context path,来模拟线上环境。 org.mortbay.jetty jetty-maven-plugin 9966 foo 0 ...

2015-12-07 15:05:14

阅读数 2536

评论数 0

chrome jsonView插件安装

chrome 应用商店打不开,想装插件愁死人了。 今天想到一个好方法,以 jsonView插件为例分享一下。 1、打开 https://github.com ; 2、搜索 jsonView 链接:https://github.com/search?utf8=%E2%9C%93&a...

2015-11-22 19:30:31

阅读数 875

评论数 0

探索 ConcurrentHashMap 高并发性的实现机制

Java 内存模型 由于 ConcurrentHashMap 是建立在 Java 内存模型基础上的,为了更好的理解 ConcurrentHashMap,让我们首先来了解一下 Java 的内存模型。 Java 语言的内存模型由一些规则组成,这些规则确定线程对内存的访问如何排序以及何时可以...

2015-10-09 16:02:11

阅读数 668

评论数 0

JVM参数优化指南

堆大小设置 JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5...

2015-09-18 13:59:23

阅读数 510

评论数 0

使用jstat分析系统的垃圾回收情况

jstat -gccause pid 1 每格1毫秒输出结果 jstat -gccause pid 2000 每格2秒输出结果 S0 — Heap上的 Survivor space 0 区已使用空间的百分比      S1 — Heap上的 Survivor space 1 区已使用空间的百...

2015-09-16 15:31:56

阅读数 4594

评论数 0

使用 awk 命令行快速分析 accesslog访问日志

IBM HTTP Server 访问日志的格式 定义日志的格式 我们可以在 IBM HTTP Server 的配置文件中,使用预定义的经典格式,或者自定义访问日志的格式。下文中如无特别说明,将假设日志使用名称为 combined的经典格式。 LogFormat "%h...

2015-09-15 17:34:14

阅读数 5268

评论数 0

log4j日志配置详解

1、配置根Logger: log4j.rootLogger = [ level ] , appenderName, appenderName2 level:日志的级别,指定这条日志信息的重要性。分为ALL DEBUG , INFO ,WARN ,ERROR四种,分别对应Logger类的四种方法...

2015-08-27 10:50:05

阅读数 524

评论数 0

如何查看线上机器的QPS

注:本文作者是笔者的leader 背景:线上有一个推荐服务,日志量比较大,想确认下是不是qps过高 问题:如何根据日志查看一个服务的qps tail -f XXX.log,可以发现日志格式如下: [8708-10 14:51:44 638 INFO ] [async task worker...

2015-08-13 19:42:56

阅读数 6601

评论数 2

velocity中调用Java代码无效或者无法debug

velocity调用Java代码的标准写法是这样的 $!{classname.staticMethod()}或者$!{objectname.instanceMethod()} 比如: $!{salehelper.isWltUser($info.getCateID(),$info.getUse...

2015-06-19 17:00:37

阅读数 3818

评论数 0

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