自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(147)
  • 资源 (13)
  • 收藏
  • 关注

转载 阿里技术分享:深度揭秘阿里数据库技术方案的10年变迁史

本文原题“阿里数据库十年变迁,那些你不知道的二三事”,来自阿里巴巴官方技术公号的分享。1、引言第十个双11即将来临之际,阿里技术推出《十年牧码记》系列,邀请参与历年双11备战的核心技术大牛,一起回顾阿里技术的变迁。今天,阿里数据库事业部研究员张瑞,将为你讲述双11数据库技术不为人知的故事。在零点交易数字一次次提升的背后,既是数据库技术的一次次突破,也见证了阿里技术人永不言败的精神,...

2018-11-24 15:56:18 595

转载 MySQL MVCC原理

1 MVCC基本原理MVCC:多版本并发控制(MVCC,Multiversion Currency Control)。一般情况下,事务性储存引擎不是只使用表锁,行加锁的处理数据,而是结合了MVCC机制,以处理更多的并发问题。Mvcc处理高并发能力最强,但系统开销 比最大(较表锁、行级锁),这是最求高并发付出的代价。** InnoDB实现MVCC的方法是,它存储了每一行的三个额外的隐藏...

2018-08-10 11:43:09 299

原创 关于安装pyhanlp失败

由于要使用hanlp进行分词,而我们的环境是python环境所以得安装pyhanlp,但是安装过程总是出现这样的问题看上去感觉是缺少了visual c++环境,于是安装visual c++,可查看这个博客http://www.hankcs.com/nlp/python-calls-hanlp.html安装完后发现问题并没有解决,初步怀疑应该是 jpype1没有安装成功,于是使用pip instal...

2018-07-09 15:36:28 8451 1

转载 Etcd架构与实现解析

前一段时间的项目里用到了 Etcd(http://jolestar.com/etcd-architecture), 所以研究了一下它的源码以及实现。网上关于 Etcd 的使用介绍的文章不少,但分析具体架构实现的文章不多,同时 Etcd v3的文档也非常稀缺。本文通过分析 Etcd 的架构与实现,了解其优缺点以及瓶颈点,一方面可以学习分布式系统的架构,另外一方面也可以...

2018-05-05 23:47:46 313

转载 下一代微服务架构——Service Mesh

Service Mesh 是什么?为什么我们需要它?Service Mesh(服务网格)是一个基础设施层,让服务之间的通信更安全、快速和可靠。如果你在构建云原生应用,那么就需要 Service Mesh。在过去的一年中,Service Mesh 已经成为云原生技术栈里的一个关键组件。很多拥有高负载流量业务的公司都在他们的生产应用里加入了 Service Mesh,如...

2018-05-05 23:43:34 225

转载 ETCD 简介 + 使用

随着CoreOS和Kubernetes等项目在开源社区日益火热,它们项目中都用到的etcd组件作为一个高可用、强一致性的服务发现存储仓库,渐渐为开发人员所关注。在云计算时代,如何让服务快速透明地接入到计算集群中,如何让共享配置信息快速被集群中的所有机器发现,更为重要的是,如何构建这样一套高可用、安全、易于部署以及响应快速的服务集群,已经成为了迫切需要解决的问题。etcd为解决这类问题带来了福音,本...

2018-05-05 23:19:16 569

原创 java8新特性——Stream接口

1、什么是Stream?    a、Stream在java8中被定义为泛型接口    b、Stream接口代表数据流    c、Stream不是一个数据结构,不直接存储数据    d、Stream通过管道操作数据    e、创建Stream接口实现类对象:        stream(): 创建一个Stream接口实现类的对象        例如:Stream<Person> stre...

2018-04-12 20:15:12 492

原创 java8新特性——lambda

1、lambda概述    lambda表示数学符号“λ”,计算机领域中λ代表“λ演算”,表达了计算机中最基本的概念:“调用”和“置换”。2、为什么使用lambda        一、Java是面向对象的语言,不能像函数式语言那样嵌套定义方法。        二、Java的匿名内部类只能存在于创建它的线程中,不能运行在多线程中,无法充分利用多核的硬件优势        三、匿名内部类的缺点还有: ...

2018-04-12 19:56:42 165

转载 Flume(NG)架构设计要点及配置实践

Flume NG是一个分布式、可靠、可用的系统,它能够将不同数据源的海量日志数据进行高效收集、聚合、移动,最后存储到一个中心化数据存储系统中。由原来的Flume OG到现在的Flume NG,进行了架构重构,并且现在NG版本完全不兼容原来的OG版本。经过架构重构后,Flume NG更像是一个轻量的小工具,非常简单,容易适应各种方式日志收集,并支持failover和负载均衡。架构设计要点

2018-01-25 19:35:57 171

转载 Flume中的HDFS Sink配置

Flume中的HDFS Sink配置参数说明type:hdfspath:hdfs的路径,需要包含文件系统标识,比如:hdfs://namenode/flume/webdata/filePrefix:默认值:FlumeData,写入hdfs的文件名前缀fileSuffix:写入 hdfs 的文件名后缀,比如:.lzo .log等。inUsePref

2018-01-25 15:11:08 7627

转载 Flume安装及简单部署

1 Flume简介Flume是Cloudera提供的一个高可用、高可靠、分布式的海量日志采集、聚合和传输的系统。Flume支持在日志系统中定制各类数据发送方用于收集数据,同时Flume提供对数据的简单处理,并将数据处理结果写入各种数据接收方的能力。Flume作为Cloudera开发的实时日志收集系统,受到了业界的认可与广泛应用。2010年11月Cloudera开源了Flume的第一

2018-01-24 18:45:47 214

转载 java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.

在已经搭建好的集群环境Centos6.6+Hadoop2.7+Hbase0.98+Spark1.3.1下,在Win7系统Intellij开发工具中调试Spark读取Hbase。运行直接报错:12345678910111213141516171819202122232425

2018-01-02 18:19:26 304

转载 从kinit到kerberos安全机制

最近老在项目的shell脚本中看到kinit这个东西,完整的命令是kinit -k -t ./conf/kerberos.keytab sherlocky/[email protected]查阅一番资料后了解到,之所以有这个命令,是由于该shell脚本接下来会访问Hadoop集群,从上面拉取文件做一些处理任务,并将结果存到Hadoop集群上,那么该命令的作用就是进行身份验证(Authentic

2017-12-27 16:07:29 27206 2

转载 hdfs 文件的追加

1、修改hdfs-site.xml         Java代码    lt;name>dfs.support.append  true  operty>  2、目前如何在命令行里面给HDFS文件中追加内容我还没找到相应的方法。但是,我们可以通过Hadoop提供的API实现文件内容追加,如何实现?这里我写了一个简单的测试程序:    

2017-12-26 16:02:01 2912

转载 Maven生成可以直接运行的jar包的多种方式

Maven可以使用mvn package指令对项目进行打包,如果使用java -jar xxx.jar执行运行jar文件,会出现"no main manifest attribute, in xxx.jar"(没有设置Main-Class)、ClassNotFoundException(找不到依赖包)等错误。要想jar包能直接通过java -jar xxx.jar运行,需要满足:1

2017-12-26 11:16:37 268

转载 Mongodb数据更新命令(update、save)

Mongodb更新有两个命令:update、save。1.1update命令update命令格式:db.collection.update(criteria,objNew,upsert,multi)参数说明:criteria:查询条件objNew:update对象和一些更新操作符upsert:如果不存在update的记录,是否插入objNew

2017-10-25 11:22:23 51977

转载 获取通过body传输的postdata数据

目前基于rest风格的很多API开始使用通过body data来传输来代替之前的key-value传输方式。在java servlet或者springmvc中可以通过如下代码来获取并图片通过流方式传输的数据: 1InputStream is= null; String contentStr=""; 2t

2017-10-17 17:40:17 1356

原创 BeanUtils.copyProperties()用法

前言:今天看别人写的代码,在action里面看到有人用了BeanUtils.copyProperties(obj, objForm);感觉很奇怪于是就点击进去看了一下源码public static void copyProperties(Object source, Object target) throws BeansException { copyPropertie

2017-09-04 15:52:45 393

转载 java公平锁源码解读

基本概念本章,我们会讲解“线程获取公平锁”的原理;在讲解之前,需要了解几个基本概念。后面的内容,都是基于这些概念的;这些概念可能比较枯燥,但从这些概念中,能窥见“Java锁”的一些架构,这对我们了解锁是有帮助的。 1. AQS – 指AbstractQueuedSynchronizer类。 AQS是java中管理“锁”的抽象类,锁的许多公共方法都是在这个类中实现。AQS是独占锁(例

2017-09-03 20:40:31 448

转载 简洁例子了解CAS

前言CAS,Compare and Swap即比较并替换,设计并发算法时常用到的一种技术,Doug lea大神在java同步器中大量使用了CAS技术,鬼斧神工的实现了多线程执行的安全性。目前的处理器基本都支持CAS,只不过不同的厂家的实现不一样罢了。CAS有三个操作数:内存值V、旧的预期值A、要修改的值B,当且仅当预期值A和内存值V相同时,将内存值修改为B并返回true,否则什么都不做并返

2017-08-30 14:27:07 768

转载 Java CAS原理深度分析

看了一堆文章,终于把JAVA CAS的原理深入分析清楚了。感谢GOOGLE强大的搜索,借此挖苦下百度,依靠百度什么都学习不到! 参考文档:http://www.blogjava.net/xylz/archive/2010/07/04/325206.htmlhttp://blog.hesey.net/2011/09/resolve-aba-by-atomics

2017-08-28 14:21:12 270

原创 Hbase安装出现的错误

1、在执行hbase version时txr:hbase-0.98.6-cdh5.3.6 zj-db0236$ hbase version/Users/txr/Downloads/hbase-0.98.6-cdh5.3.6/bin/hbase: line 386: /usr/bin/java/bin/java: Not a directory/Users/txr/Downloads/hba

2017-08-11 16:14:13 1431

原创 Hbase安装部署

前言:安装Hbase之前要先安装好hadoop(zookeeper如果要用自己的也需先安装好)1、下载Hbase安装包从Apache网站上(hbase.apache.org)下载Hbase稳定发布包:也可以直接下载:http://pan.baidu.com/s/1nuB9kz3解压安装包tar -zxf 安装包名称2、设置环境变量使

2017-08-11 15:39:01 282

转载 java 双重检查加锁弊端

Java是在语言级提供对线程的支持,所以Java的内存模型分为主存储器和工作存储器.[Main memory]主存储器就是实例所在的存储区域,所有实例本身都被放在主存储器中,当然这句话本身就说明了实例的字段也在主存储器中,主存储器被实例的所有线程所共有.[working memory] 工作存储器当然就是每个线程所专有的工作区域,当然其中有它们共有的主存储器中的一些必要的如

2017-08-02 20:13:06 689

原创 并发编程实战死锁读书笔记之吐槽

简单顺序死锁package com.txr.TransferMoneyDemo;/** * Created by txr on 2017/7/28. */public class LeftRightDeadlock { private final Object left =new Object(); private final Object right=new

2017-07-28 16:27:48 371

转载 Callable和Future

本篇说明的是Callable和Future,它俩很有意思的,一个产生结果,一个拿到结果。        Callable接口类似于Runnable,从名字就可以看出来了,但是Runnable不会返回结果,并且无法抛出返回结果的异常,而Callable功能更强大一些,被线程执行后,可以返回值,这个返回值可以被Future拿到,也就是说,Future可以拿到异步执行任务的返回值,下面来看一个简单的

2017-07-26 16:06:51 623

转载 Java 并发专题 :闭锁 CountDownLatch

最近一直整并发这块东西,顺便写点Java并发的例子,给大家做个分享,也强化下自己记忆。每天起早贪黑的上班,父母每天也要上班,话说今天定了个饭店,一家人一起吃个饭,通知大家下班去饭店集合。假设:3个人在不同的地方上班,必须等到3个人到场才能吃饭,用程序如何实现呢?作为一名资深屌丝程序猿,开始写代码实现:[java] view plain copy

2017-07-25 19:32:59 194

转载 Java并发编程:并发容器之CopyOnWriteArrayList(转载

原文链接:  http://ifeve.com/java-copy-on-write/    Copy-On-Write简称COW,是一种用于程序设计中的优化策略。其基本思路是,从一开始大家都在共享同一个内容,当某个人想要修改这个内容的时候,才会真正把内容Copy出去形成一个新的内容然后再改,这是一种延时懒惰策略。从JDK1.5开始Java并发包里提供了两个使用CopyOn

2017-07-25 13:46:10 216

转载 为什么使用 SLF4J 而不是 Log4J 来做 Java 日志

每个Java开发人员都知道日志记录对Java应用的重要性,尤其是对服务端应用,而且其中许多人都已经熟悉了各种记录日志的库,比如java.util.logging,Apache的log4j,logback,然而如果你不知道SLF4J,java的简单记录日志的设计的话 ,那么到了学习并在你的项目中使用它的时候了。在这篇Java文档里,我们将学习为什么使用SLF4J比使用log4j或者java.util

2017-07-20 21:05:42 308

原创 log4j.xml详解及log4j教程学习参考资料推荐

log4j.xml代码--> <!-- 注意: 1:当addi

2017-07-20 17:57:49 406

原创 This is usually caused by another repository pushing:refusing to merge unrelated histories

事情是这样的,我先是在一个git好了的目录连接了一个仓库创建了一个项目并发布到了那个仓库上,然后我又在idea中创建了一个更完整的项目,又连接到了这个git仓库中(俩项目名称相同),然后就想发布上去,结果add ,commit完成之后要push时,出现了这一幕error: failed to push some refs to '我相关联的git仓库'hint: Updates were r

2017-07-20 17:39:14 7010

原创 浅学redis之Jedis

将redis-server变成后端运行将修改redis.conf中的 daemonize后的no修改为yes,运行时 ./redis-server ./redis.conf即可daemonize yes存储数据set key value取数据get keyJedis介绍jedis是Redis  官方首选的java客户端开发包下载jedis包

2017-07-16 20:50:29 348

转载 Log4j使用相对路径指定log文件及使用总结

原文地址:http://huanyue.iteye.com/blog/574598Log4j在指定log文件位置时一般是使用绝对路径,这样在部署环境发生变化时显得十分麻烦,在网上找了很多种方法,个人感觉以下方法比较适用:由于spring也会加载log4j.properties,如果加载不到就往控制台打log信息。Spring提供了 一个Log4jConfigListen

2017-07-16 15:07:15 416

转载 TimeUnit

public enum TimeUnitextends EnumTimeUnit 表示给定单元粒度的时间段,它提供在这些单元中进行跨单元转换和执行计时及延迟操作的实用工具方法。TimeUnit 不维护时间信息,但是有助于组织和使用可能跨各种上下文单独维护的时间表示形式。TimeUnit 主要用于通知基于时间的方法如何解释给定的计时参数。例如,如果 lock 不可用,则以下代码将

2017-07-11 19:08:31 503

原创 虚拟机类初始化机制

类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载7个阶段。其中验证、准备、解析3个部分统称为连接。加载、验证、准备、初始化和卸载这5个阶段的顺序是确定的,类的加载过程必须按照这种顺序按部就班地开始加载的时间:虚拟机规范严格规定了有且只有5种情况必须立即对类进行“初始化”(而加载、验证、准备自然需要在此之前开始):

2017-07-06 20:42:35 362

原创 深入了解java虚拟机之GC回收机制

用断点机制来一步一步看虚拟机的变化先来介绍每个参数的意义-GC 参数含义S0CSurvivor1总空间S1CSurvivor2总空间S0USurvivor1已用空间S1CSurvivor2已用空间ECEden总空间EUEden已用空间OCOld总空间

2017-07-06 17:00:32 295

原创 hive在客户端执行总是报告找不到类

今天在用客户端执行hive的时候服务端总是报找不到jar包找不到类,很纳闷,发现在hive-env.sh中已经加入了这个jar包,在命令行中执行hive时是可以成功的,但是在客户端执行却总是报错,纳闷,后来去hive官方配置文档中看才发现原来是在hive-site.xml中没有配置jar包官方文档查看方式:http://hive.apache.org/--->点击Hive wiki(进来后往下

2017-06-30 20:08:10 1932

原创 关于hive自定义JsonSerde处理json

Hive自身提供UDF函数对json数据格式解析的函数,即get_json_object(…)与json_tuple(…)支持json数据的操作,但是使用效果并不是非常理想。如果可以像普通hive建表指定字段映射到json中的key就太好了!幸好hive本身提供了数据序列化反序列化的接口Serde,开发者只需要自定义实现Serde接口实现自己的逻辑即可。下面介绍的是通过开源工具Hive-JSON-

2017-06-30 13:43:12 3685

原创 好奇宝宝对于灰度了解的随笔

今天拿到需求做统计时第一次听说灰度这一词,于是抱着好奇的态度去百度一下,然后就做个小笔记灰度发布:是指在黑与白之间,能够平滑过渡的一种发布方式。ABtest就是一种灰度发布方式,让一部分用户继续用A,一部分用户开始用B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。

2017-06-30 10:34:03 237

原创 Java里一个线程调用了Thread.interrupt()到底意味着什么?

一个线程不应该由其他线程来强制中断或停止,而是应该由线程自己自行停止。所以,Thread.stop, Thread.suspend, Thread.resume 都已经被废弃了。而 Thread.interrupt 的作用其实也不是中断线程,而是「通知线程应该中断了」,具体到底中断还是继续运行,应该由被通知的线程自己处理。具体来说,当对一个线程,调用 interrupt() 时,

2017-06-29 20:20:24 1148

程序员面试指南及源码

程序员面试指南及源码,左程云,算法过关 50字节,50字节

2017-10-09

java并发编程实战pdf及源码

看书一定要结合源码看不然会有很多无法理解的坑

2017-07-28

Java并发编程实战

java并发编程实战

2017-07-22

logback用户手册中文版

logback用户手册中文版

2017-07-21

linux与shell编程指南

linux与shell编程指南

2017-07-02

hive-json-serde-0.2.jar

hive-json-serde-0.2.jar

2017-06-30

mou for mac

mou for markdown

2017-06-13

hadoop官方中文文档

hadoop官方文档(中文版)

2017-05-22

VMware_install_clear

VMware清理工具

2017-02-15

由浅入深学Java—基础、进阶与必做260题

由浅入深学Java—基础、进阶与必做260题

2016-10-15

详细划分23种设计模式

23种设计模式帮助文档

2016-10-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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