程序员

Java服务CPU飙到99%问题排查

欢迎大家关注我的博客:Neo的博客 刚开始写会不定期更新的。 一大早刚来到公司工位上,电话响起来了,一看是运维老湿打过来到,紧张的接起电话,小心脏扑通扑通跳。“小路啊,你有个服务CPU飙到99%,现场给你保留了,赶紧看看吧!”挂了电话一看短信,果然有告警过来了!还好服务没有重启,现场保留了,赶紧上到…

大数据

设计模式之单件模式(Singleton Pattern)

单件模式,也叫单例模式,可以说是设计模式中最简单的一种。顾名思义,就是创造独一无二的唯一的一个实例化的对象。 为什么要这样做呢?因为有些时候,我们只需要一个对象就够了,太多对象反而会引起不必要的麻烦。比如说,线程池,缓存,打印机,注册表,如果存在多个实例的话,反而会导致许多问题! 引出单例模式 我们…

大数据

Java研发方向如何准备BAT技术面试答案(上)

最近因为忙于工作,没时间整理,本篇是下班后晚上抽空整理的,文中部分答案本来是想自己好好整理一份的,但是时间真的很紧,所以就整理了一下网络上的文章链接,挑了写的不错的文章,后续有时间补上来。更多精彩内容请关注我的微信公众号:JavaQ。1.面向对象和面向过程的区别面向过程优点:性能比面向对象高,因为类…

大数据

redis的事务和watch

redis的事务 严格意义来讲,redis的事务和我们理解的传统数据库(如mysql)的事务是不一样的。 redis中的事务定义 Redis中的事务(transaction)是一组命令的集合。 事务同命令一样都是Redis的最小执行单位,一个事务中的命令要么都执行,要么都不执行。事务的原理是先将属于…

大数据

设计模式之工厂方法模式(FACTORY METHOD)

工厂方法模式定义了一个创建对象的接口,但由子类决定要实例化的类是哪一个。工厂方法让类把实例化推迟到子类。我们依然接着简单工厂模式提出的披萨店问题继续探讨 问题模拟 我们假设有多种不同的pizza店,比如纽约的pizza点,芝加哥的pizza店,他们都有自己制作的不同种类的pizza。如果我们采用简单…

程序员

设计模式之简单工厂模式(Simple Factory Pattern)

简单工厂模式其实并不是一个设计模式,反而像是一种比较常用的编程习惯!他还有个名字叫静态工厂方法(Static Factory Method)模式。 简单工厂模式应该是工厂模式家族中最简单的一种模式,同时也是很常用的一种模式。 我们一如既往的通过实际问题的模拟来学习简单工厂模式! 问题引出 假设我们要…

大数据

深入浅出NIO Channel和Buffer

前言 Java NIO 由以下几个核心部分组成: Buffer Channel Selector 传统的IO操作面向数据流,意味着每次从流中读一个或多个字节,直至完成,数据没有被缓存在任何地方。NIO操作面向缓冲区,数据从Channel读取到Buffer缓冲区,随后在Buffer中处理数据。本文着重…

大数据

【Java】从源码角度分析String,StringBuffer和StringBuilder

很多人都知道String是不可变的,StringBuffer和StringBuilder是可变的,那么为什么呢? 首先我们确定一个概念性问题,什么是不可变对象!什么是不可变对象:如果一个对象,在它创建完成之后,不能再改变它的状态,那么这个对象就是不可变的。不能改变状态的意思是,不能改变对象内的成员变…