自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 redis单线程、持久化、过期策略及其内存淘汰策略

原理:redis使用的是单线程为什么还能这么快?​ 因为redis 数据都在内存中,是内存级别的运算处理,而且单线程避免了多线程切换的性能损耗问题。redis处理数据的时间是纳秒级别redis单线程如何处理那么多的并发客户端?​ redis采用epoll来实现IO多路复用(linux本身的内核技术),将连接信息和事件放到队列中,依次放到文件事件分派器,事件分派器将事件发送给事件处理器传统数据库中的ACID:​ 原子性​ 一致性​ 独立性​ 持久性持久化redis持久化之RDB​

2020-09-01 21:08:54 301

原创 redis 缓存雪崩、缓存穿透、缓存数据与数据库数据双写一致问题

缓存雪崩问题使用缓存的优势:查询速度快,查询内存中的数据比磁盘快提高并发能力,缓存分担一部分请求,支持更高的并发缓存雪崩:​ 同一时刻有大量缓存消失,会使数据库任务加重,甚至宕机造成缓存雪崩的两种情况redis宕机,所有请求都会走数据库同一时刻有大量缓存过期,导致一段时间内缓存失效,大量请求走数据库解决办法对于redis宕机,可以采用redis高可用对于同一时刻大量缓存过期,可以采用定期删除+惰性删除(即在缓存的时候给过期时间加上一个随机值,就会大幅度减少缓存在同一时间过期

2020-09-01 18:42:09 176

原创 redis五种基础数据结构常用操作

String键值对设置​ set key value获取​ get key删除​ del key判断key是否存在 存在返回1,不存在返回0​ exists key批量键值对获取多个​ mget key1 key2 key3…设置多个​ mset key1 value1 key2 value2 key3 value3…设置key存在时间​ 1.set name pangzi​ 2.expire name 5 //5秒后删除​ 3.setex name 5 pangzi

2020-09-01 18:39:05 192

原创 Scala基本常用操作

与java不同,scala里面都是类的操作object test { /** * 有参 * @param x 返回值x */ def show(x:Int): Int = { return x } /** * 无参 */ def show2():Unit = { println("无参") } def main(args: Array[String]): Unit = { //变量 var a = 100

2020-09-01 17:20:03 385

转载 kafka生产者消费者的一些原理

kafka:消息队列:用于暂存数据,这就具有了解耦和削峰的作用,以应对临时高峰期达到缓冲的目的 1.Kafka是一种高吞吐量的分布式发布/订阅式消息系统  2.它可以处理消费者规模的网站中的所有动作流数据  3.具有高性能、持久化、多副本备份、横向扩展能力生产者: 消息写入leader后,follower是主动的去leader进行同步的! producer采用push模式将数据发布到broker,每条消息追加到分区中,顺序写入磁盘,所以保证同一分区内的数据是有序的! 分区的主要目的:  1

2020-08-13 19:13:08 778

原创 Kafka操作指令

kafka是依赖于zookeeper的,也就是说创建的topic中的分区副本等信息存储在zookeeper上面,实际的数据还是存储在本地指定的logs文件中  在集群中启动kafka首先要启动zookeeper1. 2181是客户端与zookeeper通信用的端口号2. 9092是客户端与kafka通信用的端口号启动kafka集群服务(单起)kafka-server-start.sh -daemon server.properties创建test的主题(指定副本数为1,分区数为2)kafka

2020-08-11 20:50:14 186

原创 hadoop_yarn运行流程

2020-07-27 21:11:18 90

原创 yarn中的资源调度器_笔记

yarn中资源调度器共分为三种1.FIFO调度器 优点是简单易懂而且不需要配置, 但是它不适合共享集群:   在FIFO调度器中只有一个队列,而且同一时刻只能有一个作业执行,就会出现有一个大作业A一直在运行,而小文件B要阻塞到作业A执行完毕才能运行的情况2.容量调度器 1.它是yarn默认使用的调度器,如果不指定队列,那么应用都会被放在default的默认队列中(就和FIFO没区别了), 2.如果在配置文件capacity-scheduler.xml中设置了队列(同时可以指定每个队列的最大容量

2020-07-27 20:43:38 780

原创 hadoop_MR优化:压缩

压缩文件的好处 1.减小文件存储所占空间 2.加快文件传输效率,从而提高系统的处理速度 3.降低IO读写的次数压缩文件的坏处 1.使用数据时先对文件解压,加重CPU负荷,压缩越狠,解压时间越长Snappy<LZ4<LZO<GZIP<BZIP2//开启map压缩********************************************************configuration.setBoolean(Job.MAP_OUTPUT_COMPRE

2020-07-24 23:07:07 236

原创 MR关于Join笔记及共同好友案例的实现

join1.map 端 join 应用于一个大文件和一个小文件的场景,小文件可以直接读取到内存中,这样每个mappertask都可以有一份小文件的数据,每次map处理数据从大文件中读取一条数据跟小文件中比对,如果有key与之对应,那么相连之后输出 下面是一个简单案例部分代码小文件的路径需要在驱动类中指定map中具体实现的业务逻辑2.reduce端join 应用于两个大文件的场景,在map阶段对两个文件同时进行读取,在获得数据的同时为其打上“标签”(用来区分两个不同的文件中的数据),然后co

2020-07-24 15:18:17 276

原创 hadoop_MR优化:Combiner

Combiner实现原理(个人理解): 溢写前的快速排序后或者归并排序后对数据进行一次合并(相当于一次reduce处理数据) 或者说在mapper和reducer之间多了一次reducer代码实现方法: 1.添加一个实现类继承reducer<key,value,key,value>接口,前面的key,value是map的输出,后面的key,value是redece的输出,  2.然后重写reduce方法(实际上就是另一个reduce),  3.然后在Driver中指定combine

2020-07-21 21:53:38 151

原创 MR_shuffle流程笔记

下面是我一些对流程源码的理解还是WordCount案例,进入到context.write()方法进入到mapContext.write()方法进入到write方法在进入到write方法可以看到有一个collectorc.collect()方法其中getPartition()作用是获得当前数据的分区号我们进入这个方法因为我自定义了partition并指定了分区类所以执行的是我重写过的getPartition方法如果没有重写或者指定分区类,那么就会执行默认的getPartition.

2020-07-21 18:03:34 138

原创 MR关于分区、排序、分组的笔记及TopN问题实现

MR分区:   1.在MR中partitioner将Mapper产生的中间结果进行分区,然后将同一组数据提交给一个Reducer中处理   2.partitioner默认调用的是Hashpartitioner,用它来把数据分组然后发送给不同的reducer   3.计算公式:(key.hashCode() & Integer.MAX_VALUE) % numReduceTasks实现分区:  1.继承Partitioner<key, value>,泛型为mapper输出

2020-07-20 21:54:16 1334

原创 MR切片源码分析笔记

这里用的WordCount案例运行debug模式,F5进入waitForComplent()方法可以看到它调用了submit()方法,进入这个方法可以看到又有四个方法,下面一个个看1.进入

2020-07-19 17:11:15 881

原创 JVM关于内存区域与内存溢出异常

运行时数据区JVM在运行java程序的时候,会把它所管理的内存分成若干块1.程序计数器 说白了就是当前线程运行到哪里的指标 。如果一个正在运行的java程序,那么计数器里面存的就是正在执行的虚拟机字节码指令的地址。2.JAVA虚拟机栈  生命周期与线程相同。它描述的是java方法执行的内存模型,每个方法在执行的同时都会创建一个栈帧,栈帧中包含:  (1)局部变量数据    用来存放方法参数和方法内部的局部变量  (2) 动态链接    ???????  (3)操作数栈     

2020-07-17 21:22:47 86

转载 java类继承、抽象类继承、接口继承的区别与联系

类、抽象类、接口(接口只是个类型)——简化概括类继承—>子类完全继承父类特点抽象类继承—>继承时抽象的部分不同的子类可以有不同的实现接口继承—>所有成员在子类都可以有不同的实现至于为什么要用接口而不是抽象类这要看二者适用的情况当个性大于共性时,适合接口,如鸟和飞机,适合抽象出一个飞的接口当共性大于个性时,适合抽象类,如老鹰和麻雀,适合抽象出一个鸟的父类另外接口可以...

2020-03-26 15:19:23 788

原创 关于Java Arraylist中的一些方法的代码实现和约瑟夫问题

手写的一些集合方法package JiheChongxie;import java.util.Arrays;public class JiheData { String[] shuzu = new String[1]; int sum = 0; /*** * 集合里的添加数据,如果数据数量大于长度则自动扩充 * @param str */ public void ad...

2020-03-22 23:47:54 146

原创 java学习Day4

实例化对象时(声明、初始化块、构造函数)初始化的顺序package day7;public class Chushihua { public String data = getdata("声明"); //声明初始化 { data = getdata("初始化块");//静态初始化块 初始化 } public Chushihua(){ ...

2020-03-11 21:01:17 101

原创 java学习Day3

继承package day6;class Item{ String name; int pirce;}public class Armor extends Item{ int ac; int exp; void shuchu(){ System.out.println("name:"+this.name); Sys...

2020-03-09 14:45:51 101

原创 java学习Day2

for continue 求其0-20里离0.618最近的黄金分割率package day3;public class Huangjinfenge { public static void main(String[] args) { double minshu = 10; int fenzi=0 ; int fenmu=0 ; ...

2020-03-03 21:38:21 117

原创 java学习Day01

面向对象,设计一个英雄类package day1;public class Hero { String neam; float hp; float hujia; int sudu; public static void main(String[] args) { Hero gailun = new Hero(); ga...

2020-03-03 21:19:52 194

原创 liu读《数据结构与算法分析——c语言描述》笔记~~第1章

第一天:(在大学嘛,所以只能课后弄喽)安装了VC++6.0,教程网上都有,这里不再说了

2019-09-09 23:28:46 276

原创 虚拟机Linux全屏化

1.点击重新安装2.双击打开3.右键提取提取到哪都行,我在这里新建了(在桌面上)个文件:aa4.打开终端 "Ctrl+Alt+T"按图示操作再然后就没然后了,恭喜你窗口全屏了...

2019-09-06 18:40:10 1884

原创 关于打开github网站慢如何解决

以win10为例话不多说简单粗暴1.键盘上“开始”+X2.在管理员界面中输入 notepad 打开记事本 3.打开记事本4.输入 C:\Windows\System32\drivers\etc右下角选择所有文件,出现hosts文件,选中它打开5.粘贴下面的代码到文件里的末端# GitHub Start 192.30.253.112 gi...

2019-09-03 23:22:53 3816 4

转载 win10利用虚拟机安装Ubuntu

引用两篇文章,第一次写,见谅1.具体操作教程很详细2.虚拟机下载地址VMware3.Ubuntu下载地址

2019-08-29 00:44:12 253

空空如也

空空如也

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

TA关注的人

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