
学习
文章平均质量分 80
卍杺歿卍
努力进取
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
字符串分割方法比较
s.split()与StringUtils包下的方法比较String s=":a:b::";System.out.println(s.split(":").length); //3Arrays.stream(s.split(":")).forEach(x->System.out.print("-"+x +"\t") );//- -a -b按照常用字符串拆分后,得到的长度及拆分后的数据方法 拆分后长度 拆分后数据结果 被忽略的字符 s.split(":") .原创 2020-10-30 20:53:53 · 290 阅读 · 0 评论 -
Hadoop HA 原理
1、Zookeeper为基础的集群上,NameNode 部署在2个节点上;两个NameNode 在ZK中谁先注册,谁就是Active,剩余的就是Standly状态;而同一时间只有一个NameNode 对外提供服务 ->Active NameNode。2、Zookeeper中有两个FailoverController,一个负责ANN的状态,一个监控SNN的状态,FailoverController通过心跳负责将监控信息保存在znode中。3、Standly NN负责同步Active NN中的元数原创 2020-09-12 23:51:07 · 159 阅读 · 0 评论 -
MapReduce工作流程
1、MapReduce工作流程(1)、客户端执行submit()方法之前,会先获取待读取文件的信息;(2)、将文件切片信息,jar包,job.xml 提交到yarn;(3)、yarn根据job.xml ,启动切片数量相应的MapTask;(4)、MapTask 调用inputFormat()方法读取HDFS文件,InputFormat()方法调用RecordRead()方法,默认TextInputFormat()将数据以行首字母的偏移量为key,一行数据为value,传到map...原创 2020-09-09 23:36:19 · 529 阅读 · 0 评论 -
HDFS序列化与反序列化
1、序列化:将内存中的对象,转成字节序列,可以用于在网络传输或者持久化到磁盘上。2、反序列化:将网络中接收到的字节序列或者磁盘持久化的数据,转换成内存中的对象。3、Hadoop本身是Java开发,为什么不直接使用java序列化框架(Serializable)? Java的序列化是一个重量级框架,一个对象被序列化之后,除了序列化数据之外,还会附带很多信息(数据校验信息,Header等),无效的数据太多,在网络传输较慢,序列化后很占内存。所以,Hadoop自己实现一套序列化机制(Writab...原创 2020-09-08 22:39:39 · 253 阅读 · 0 评论 -
多线程-基础-2[Concurrent包下的并发线程]
10.1、CountDownLatch :闭锁,线程递减锁需要指定一个数字,可以同构await()方法产生阻塞,直到数字减为0时,阻塞自动被解开,可以通过contDown()方法使数字递减。经常用于监听某些初始化操作,等待初始化执行完毕后,通知主线程继续工作。/** * ContDownLatch :用于程序资源初始化时 */@Slf4jpublic class UserCo...原创 2019-04-26 22:53:51 · 225 阅读 · 0 评论 -
多线程-基础-1
线程安全:多个线程同时访问这个类时,始终返回正常的行为,称为线程安全。1、Synchronized1.1 多个线程一个锁/**同步:synchronized * 同步的概念就是共享,我们要牢记“共享”,如果不是共享的资源就没必要进行同步 * 异步:asynchronized * 异步就是独立,相互之间不受任何制约。就好像我们学习http的时候,在页面发起ajax请求...原创 2019-04-16 23:10:00 · 172 阅读 · 0 评论 -
数据库事务
说明:本文章属于个人学习归纳总结,其中内容有摘自他人博客内容,严禁转载。数据库事务:控制事务的隔离级别,保证数据的完整性,安全性,一致性,在此基础上实现高性能访问。##msyql事务1.mysql:传统理解 mysql 中的一次操作过程(sql 执行)是一次事务。2.mysql:那么多个线程 同时操作 mysql 中的数据(同一条数据,一个范围内数据)就叫并发事务。3.mysql:...原创 2018-10-28 23:21:50 · 150 阅读 · 0 评论 -
Java 调c/c++ so库中接口
1、vs2013 新建win32 dll 空项目,main.h :extern "C" _declspec(dllexport) void hello(); extern "C" _declspec(dllexport) int add(int first, int second); 2、main.cpp,然后生成dll文件 :#include "main.h" #incl...原创 2018-09-22 18:25:40 · 1400 阅读 · 0 评论 -
Linux下对java文件调试——Jdk
利用jdk自带的调试工具对java代码进行调试。编译: javac –g –classpath jar包 xxx.java 运行: jdb –classpath :jar包 xxx 在需要的地方打断点:(1), stop at 类名:行号(2), stop in 类名.方法名.变量名启动: run 断点调试:step / stepi 查看某个变量的值: print...原创 2018-09-22 18:23:26 · 1430 阅读 · 1 评论 -
JVM总结归纳
JVM介绍说明:本文章属于个人学习归纳总结,其中内容有摘自他人博客内容,严禁转载。1 jvm介绍jvm是运行在操作系统之上的,与硬件系统没有直接的交互。1.1 程序计数器在CPU的寄存器中只有一个pc寄存器,存放下一条指令地址。每一条线程都有一个独立的程序计数器,Java虚拟机中的程序计数器指向正在执行的字节码地址,而不是下一条。1.2 虚拟机栈虚拟机栈是线程...原创 2018-08-26 12:57:04 · 1115 阅读 · 0 评论