自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

l1394049664的博客

技术、生活、观点、个人成长。 主要关注互联网电商广告业务、数据分析方法论、大数据分析平台建设;java web、分布式、大数据处理以及可视化等相关技术。

  • 博客(220)
  • 收藏
  • 关注

原创 zookeeper源码3.6.0本地idea构建运行

1、下载github下载源码构建2、idea中启动3、遇到的问题备注:当前代码基于版本tag3.6.01、下载github下载源码构建直接Git clone下来后执行clean install -Dmaven.test.skip=true或者clean package -Dmaven.test.skip=true即可备注:如果不跳过单元测试构建及其漫长,建议通过参数-Dmaven.test.skip=true跳过2、idea中启动启动日志:2020-05-30 11:52:25..

2020-05-30 12:00:11 1531 3

原创 spark学习笔记

https://github.com/lishuai2016/ls-spark

2018-12-02 18:49:42 446 1

原创 大数据相关技术学习

https://github.com/lishuai2016/ls-bigdata-learn

2018-12-02 18:49:02 660

原创 springboot学习笔记

https://github.com/lishuai2016/ls-springboot-learn

2018-12-02 18:36:20 343

原创 springcloud学习日记

https://github.com/lishuai2016/ls-springcloud-learn

2018-12-02 18:35:26 277

原创 优秀的开源项目整理

https://github.com/lishuai2016/lishuai-notes

2018-12-02 18:24:10 356

原创 CommandLineRunner和ApplicationRunner接口

在开发中可能会有这样的情景。需要在容器启动的时候执行一些内容。比如读取配置文件,数据库连接之类的。SpringBoot给我们提供了两个接口来帮助我们实现这种需求。这两个接口分别为CommandLineRunner和ApplicationRunner。他们的执行时机为容器启动完成的时候。这两个接口中有一个run方法,我们只需要实现这个方法即可。这两个接口的不同之处在于:ApplicationRunn...

2018-11-13 23:35:42 569

原创 获取用户请求的IP

在为服务平台设计IP白名单或者黑名单的时候,不能通过request.getRemoteAddr()获取IP地址,因为用户可能通过代理服务器来访问,因此需求对于需要获取用户的IP,需要对其进行特殊处理 public class IPUtils { private static Logger logger = LoggerFactory.getLogger(IPUtils.clas...

2018-11-13 22:04:06 1619 1

原创 借助ApplicationContextAware接口获取spring容器的工具类

@Componentpublic class SpringUtil implements ApplicationContextAware { private static ApplicationContext applicationContext; @Override public void setApplicationContext(ApplicationCont...

2018-11-13 22:01:04 697

原创 自定义注解、lock、aop实现注解锁

1、自定义的锁注解@Target({ElementType.PARAMETER, ElementType.METHOD})    @Retention(RetentionPolicy.RUNTIME)    @Documented    public  @interface Servicelock {      String description()  default "";}...

2018-11-13 21:59:22 3111 1

原创 springboot2配置swagger

 @Configuration@EnableSwagger2public class Swagger2 {    @Bean    public Docket createRestApi() {        return new Docket(DocumentationType.SWAGGER_2)                .apiInfo(apiInfo())   ...

2018-11-13 21:56:09 289

原创 Redisson 实现分布式锁

初始化redission链接/**在初始化数据时候,最好不要使用static{} 即静态块。因为在多核机器的情况下读取配置文件,会抛出java.lang.NoClassDefFoundError: Could not initialize class XXX。所以最好还是使用init的方式,在启动程序的时候手动执行下。 */import org.redisson.Redisson;...

2018-11-13 21:53:23 854

原创 aop切面记录请求日志

 @Aspect@Componentpublic class WebLogAspect {    private static final Logger logger = LoggerFactory.getLogger(WebLogAspect.class);    @Pointcut("execution(public * com.ls.demo.controller.*.*(...

2018-11-13 21:46:35 561

原创 Mysql中的存储过程简介

1、什么是存储过程简单的说,就是一组SQL语句集,功能强大,可以实现一些比较复杂的逻辑功能,类似于JAVA语言中的方法;ps:存储过程跟触发器有点类似,都是一组SQL集,但是存储过程是主动调用的,且功能比触发器更加强大,触发器是某件事触发后自动调用;2、存储有哪些特性有输入输出参数,可以声明变量,有if/else, case,while等控制语句,通过编写存储过程,可以实现复杂的逻辑功...

2018-11-11 21:13:19 1714

原创 定时推送后台数据到前台websocket和sse实现

前言:本文的实现环境基于springboot21、websocket的实现前端页面:<!DOCTYPE html><html><head lang="en">    <meta charset="UTF-8" />    <title></title></head&

2018-11-11 21:04:22 4199

原创 websocket与HTTP long poll、ajax轮询简述

一、WebSocket是HTML5出的东西(协议),也可以说HTTP协议没关系,但HTTP是不支持持久连接的(长连接,循环连接的不算)。首先HTTP有1.1和1.0之说,也就是所谓的keep-alive,把多个HTTP请求合并为一个,但是Websocket其实是一个新协议,跟HTTP协议基本没有关系,只是为了兼容现有浏览器的握手规范而已,也就是说它是HTTP协议上的一种补充。两者有交集,但是并不...

2018-11-11 20:59:26 671

原创 优化http报文传输的方案

目录1、http报文压缩2、分块传输3、获取部分内容的范围请求1、http报文压缩http报文可以采取压缩来提高传输的效率,可以在请求的头部字段Accept-Encoding中来说明客户端可以接受的压缩格式,如Accept-Encoding: gzip, deflate 常用的内容编码有以下几种。gzip(GNU zip)compress(UNIX 系统的标准压缩)d...

2018-11-10 09:54:17 1489 1

原创 常用的HTTP状态码详解

目录状态码的类别2XX 成功200 OK204 No Content206 Partial Content3XX 重定向301 Moved Permanently302 Found303 See Other304 Not Modified307 Temporary Redirect4XX 客户端错误400 Bad Request401 Una...

2018-11-10 09:52:07 917

原创 session详解

简述session机制。session机制是一种服务器端的机制,服务器使用一种类似于散列表的结构(也可能就是使用散列表)来保存信息。 当程序需要为某个客户端的请求创建一个session时,服务器首先检查这个客户端的请求里是否已包含了一个session标识------------称为session id,如果已包含则说明以前已经为此客户端创建过session,服务器就按照session id把这...

2018-11-09 23:45:36 604

原创 http请求和响应

目录1、HTTP请求报文格式1)、GET2)、POST2、HTTP响应报文格式3、HTTP请求方法说明4、请求头部5、响应头部6、响应的状态码7、HTTP请求GET和POST的区别8、http短链接和长连接的区别1、HTTP请求报文格式HTTP请求报文主要由请求行、请求头部、空行、请求正文四部分组成(可选部分,比如GET请求就没有请求正文),其中空行...

2018-11-09 23:41:47 265

原创 cookie

存储在用户本地终端的数据,http请求自动发送,跨域除外用途:客户端记录用户信息特点:存储在硬盘上的cookie可以在不同的浏览器进程间共享,比如两个IE窗口。而对于保存在内存里的cookie,不同的浏览器有不同的处理方式。属性name:cookie名称value:cookie值domain:可以访问cookie的域名,某一级域名可以访问上一级级域名的cookieexpires/Ma...

2018-11-09 23:31:54 244

原创 乐观锁和悲观锁

1、悲观锁(Pessimistic Lock)每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。2、乐观锁(Optimistic Lock) 每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期...

2018-11-09 23:29:02 164

原创 HDFS、MapReduce、hive、HBASE和spark常用参数设置

一、MapReduce重要配置参数1.  资源相关参数(1) mapreduce.map.memory.mb一个Map Task可使用的资源上限(单位:MB),默认为1024。如果Map Task实际使用的资源量超过该值,则会被强制杀死。(2) mapreduce.reduce.memory.mb一个Reduce Task可使用的资源上限(单位:MB),默认为1024。如果Re...

2018-09-25 20:55:09 1028

原创 Hadoop权威指南---MapReduce的工作机制

目录1、 剖析MapReduce作业运行机制 ​1.1、 作业的提交 ​1.2、 作业的初始化 ​1.3、 任务的分配 ​1.4 、任务的执行 1.5、 进度和状态的更新​1.6、 作业的完成 ​2 、失败 2.1、 任务运行失败​2.2、 application master运行失败​2.3 、节点管理器运行失败 ​2.4 、资源管理器运行失败 ...

2018-09-25 20:27:53 696

原创 Hadoop权威指南---MapReduce的类型与格式

目录1、MapReduce的类型简介2、 输入格式 2.1、输入分片与记录 1)、FileInputFormat类2)、FileInputFormat类的输入路径3)、FileInputFormat类的输入分片4)、小文件和combineFileInputFormat5)、避免切分6)、mapper中的文件信息7)、把整个文件当成一条记录处理2.2、文本...

2018-09-23 12:01:24 291

原创 Hadoop权威指南---MapReduce应用开发

目录1、打包作业 2、 启动作业 3、 MapReduce的Web界面 3.1、资源管理器界面3.2、MapReduce作业界面​4、Hadoop日志 6、 远程调试 7、作业调优8、MapReduce的工作流 8.1、 将问题分解成MapReduce作业 ​8.2、 关于JobControl 8.3 、关于Apache Oozie 1、打包作业...

2018-09-21 01:05:04 353

原创 通过maven的pom文件打jar包并指定jar的主类

通过在maven的pom.xml文件加入如下的代码即可指定jar文件的主类<build>        <plugins>            <plugin>                <groupId>org.apache.maven.plugins</groupId>                <arti...

2018-09-20 23:08:48 5518

原创 Hadoop权威指南---map和reduce函数使用解析

目录1、数据准备2、  Java MapReduce 2.1、map函数的实现2.2、reduce函数的实现2.3、负责运行MapReduce的代码2.4、运行测试 3、旧的和新的Java MapReduce API几个明显的区别4、数据流和combiner函数 4.1  数据流 4.2  combiner函数 4.3  Hadoop Streaming...

2018-09-19 20:52:21 12672

原创 MapReduce输出自定义序列化对象以及自定义分区Partitioner实现map函数的定向输出

目录准备数据文件flowcount.txt一、输出自定义序列化对象1、首先自定义的类需要实现Writable,实现write和readFields方法2、编写MapReduce程序二、自定义分区Partitioner实现map函数的定向输出1、自定义分区需要实现Partitioner接口的getPartition2、编写MapReduce函数准备数据文件flowco...

2018-09-18 22:46:59 933

原创 Quertz定时执行框架使用与解析

目录一、使用Quertz编写定时任务的一般步骤1、job类2、JobDetail类的xml配置3、触发器类Trigger的配置4、启动配置的定时任务xml配置二、定时任务的冲突避让三、原理解析一、使用Quertz编写定时任务的一般步骤Quertz使用Job、JobDetail、Trigger,SchedulerFactoryBean等对象来进行各种类型的任务调度...

2018-09-17 22:15:42 477

原创 Hadoop权威指南---Hadoop配置

目录1、 环境设置 1.1、内存堆大小1.2、系统日志文件2、 Hadoop守护进程的关键属性2.1、HDFS相关设置2.2、yarn相关设置2.3、yarn和MapReduce的内存设置2.4、yarn和MapReduce的CPU设置3、 Hadoop守护进程的地址和端口 4、 Hadoop的其他属性4.1、集群成员添加和移除4.2、缓冲区大小...

2018-09-16 22:19:14 353

原创 Hadoop权威指南---管理Hadoop

目录1、HDFS 1.1 永久性数据结构 1.1.1、namenode的目录结构1.1.2、文件系统镜像和编辑日志1.1.3、辅助namenode的目录结构1.1.4、DataNode的目录结构1.2 安全模式1.3 日志审计​1.4 工具 1.4.1、dfsadmin1.4.2、文件系统检查工具fsck1.4.3、datanode块扫描器1.4...

2018-09-16 20:54:05 213

原创 Hadoop权威指南---HDFS简介和java API操作

目录1、HDFS的设计2、 HDFS的概念 2.1 数据块 2.2 namenode和datanode 概述2.3 块缓存 ​2.4 联邦HDFS 2.5 HDFS的高可用性 3、 命令行接口4、 Hadoop文件系统分类5、Java接口API5.1、增:创建文件create和write、文件夹mkdirs5.2、删:删除文件夹和文件delete...

2018-09-16 17:03:05 937

原创 Hadoop权威指南---I/O操作

目录Hadoop的I/O操作 1、数据完整性 1.1、HDFS的数据完整性 1.2、 LocalFileSystem 和 ChecksumFileSystem 2、 压缩 CompressionCodec2.1、 codec:Hadoop中对常用压缩解压缩算法的实现2.2、 压缩和输入分片2.3、 在MapReduce中使用压缩​3、 序列化 Writable...

2018-09-16 12:45:03 560

原创 Hadoop权威指南---YARN

目录YARN简介​一、剖析YARN应用运行机制 ​1、资源请求---分配机制​​2、应用生命期---工作模式二、 YARN与MapReduce 1相比三、 YARN中的调度 (默认的是容量调度器)1、调度器的分类2、容量调度器配置 ​​​3、公平调度器配置 4、延迟调度 5、主导资源公平性 YARN简介一、剖析YARN应用运行机制 ...

2018-09-15 14:44:37 631

原创 Hadoop权威指南.大数据的存储与分析.第4版目录

目录第Ⅰ部分 Hadoop基础知识第1章 初识Hadoop 31.1 数据!数据! 31.2 数据的存储与分析 51.3 查询所有数据 61.4 不仅仅是批处理 71.5 相较于其他系统的优势 81.5.1 关系型数据库管理系统 81.5.2 网格计算 101.5.3 志愿计算 111.6 Apache Hadoop发展简史 121.7 本书包含的内容 16第2章 关于M...

2018-09-10 10:03:53 844

原创 MapReduce统计文本单词,逆序输出统计结果

1、准备数据wordcount2.txtThey say we are what we areBut we do not have to beI am bad behavior but I do it in the best wayI will be the watcherOf the eternal flameI will be the guard dogof all y...

2018-09-09 23:48:56 1963 2

原创 MapReduce自己编写Wordcount程序

1、准备数据文件,并且上传到HDFS上,路径/input/wordcount.txtwordcount.txtHello HadoopHello BigDataHello SparkHello FlumeHello Kafka 2、编写Wordcount代码这里用户可以输入三个参数,分别为应用的名称、数据文件的路径、结果的输出路径package ls.wordc...

2018-09-09 23:07:06 3825

原创 Hadoop2.7运行自带的wordcount

目录1、准备数据文件2、把文件上传到HDFS上3、执行命令4、原理解析1、准备数据文件word1.txt i love the worldword2.txt i love the world , hello ni hao2、把文件上传到HDFS上hadoop fs -mkdir /input hadoop fs -put word1.txt /input...

2018-09-09 21:32:10 2827

原创 Hadoop1.0与Hadoop2.0的区别

1、什么是Hadoop1.0?Hadoop1.0即第一代Hadoop,指的是版本为Apache Hadoop 0.20.x、1.x或者CDH3系列的Hadoop,内核主要由HDFS和MapReduce两个系统组成,其中MapReduce是一个离线处理框架,由编程模型(新旧API)、运行时环境(JobTracker和TaskTracker)和数据处理引擎(MapTask和ReduceTask)...

2018-09-09 10:01:16 2458

空空如也

空空如也

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

TA关注的人

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