首页
Zcyoop
取消

设计模式 - 创建型模式

创建型模式 单例模式 抽象工厂模式 原型模式 创建者模式 工厂模式 单例模式 单例模式介绍 所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法(静态方法)。 比如 Hibernate 的 SessionFactory,它充当数据存储源的代理,并负责创建 Session...

设计模式 - 七大原则

设计模式七大原则 单一职责原则 接口隔离原则 依赖倒转原则 里氏替换原则 开闭原则 迪米特法则 合成复用原则 单一职责原则 定义: 即对类来说,一个类应该只负责一个职责。例如,存在一个A类,负责两个不同职责,职责1、职责1,当职责1需求变更需要改变代码时,会对职责2产生影响,则需要将A类拆分为两个不同的类来处理两个职责 图解:...

Spark - 累加器的陷阱

目录 累加器(Accumulator)简介 累加器使用陷阱 原因分析&解决方案 累加器(Accumulator)简介 累加器(Accumulator)是Spark提供的累加器,顾名思义,该变量只能够增加。由Driver端进行初始变量,Task再对声明的变量进行累加操作。 可以为Accumulator命名,这样就会在Spark web ui中看到...

Spark - RDD&持久化

1.RDD持久化简介 Spark 中一个很重要的能力是将数据持久化(或称为缓存),在多个操作间都可以访问这些持久化的数据。当持久化一个 RDD 时,每个节点的其它分区都可以使用 RDD 在内存中进行计算,在该数据上的其他 action 操作将直接使用内存中的数据。这样会让以后的 action 操作计算速度加快(通常运行速度会加速 10 倍)。缓存是迭代算法和快速的交互式使用的重要工具。 ...

Java- 自己手动编译OpenJDK8

[TOC] Ubuntu下载 Ubuntu版本:16.04 下载链接:http://releases.ubuntu.com/16.04/ubuntu-16.04.6-desktop-amd64.iso 虚拟软件:VMWare OpenJDK源码下载 据原文说法,OpenJDK 使用Mercurial进行版本管理。另外一个名叫AdoptOpenJDK project.提供了Open...

Java - 静态绑定与动态绑定

程序绑定的概念 绑定指的是一个方法的调用与方法所在的类(方法主体)关联起来。对java来说,绑定分为静态绑定和动态绑定;或者叫做前期绑定和后期绑定. 静态绑定:在程序执行前方法已经被绑定,此时由编译器或其它连接程序实现。例如:C。 也就是说在编译过程中就已经知道这个方法到底是哪个类中的方法; 针对java简单的可以理解为程序编译期的绑定;这里特...

Java - 按值传递的方式

先来看一个简单的Demo public class Demo45 { public static void main(String[] args) { List<Integer> list = new ArrayList<Integer>(); for (int i = 0; i < 10; i++) { ...

Linux - 常用命令

dirname、basename作用 去除路径最后一级,即/home/test.sh 输出:/home 输出路径最后一级,即/home/test.sh 输出:test.sh shell 脚本变量$#,$@,$0,$1,$2,$*,$,$? 的含义 $# 是传给脚本的参数个数 $0 执行脚本时的名称,即 /home/test.sh 输出:/home/test...

nohup和&的使用说明

1.nohup和&后台运行 1.1 nohup 功能:不挂断运行命令 语法:nohup Command [ Arg … ] [ & ] ​ 无论是否将 nohup 命令的输出重定向到终端,输出都将附加到当前目录的 nohup.out 文件中。   如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。   如果没有...

Spark Streaming - 写出文件自定义文件名

1.背景 ​ 在工作中碰到了个需求,需要将Spark Streaming中的文件写入到Hive表中,但是Spark Streaming中的saveAsTextFiles会自己定义很多文件夹,不符合Hive读取文件的规范且saveAsTextFiles中的参数只能定义文件夹的名字,第二个是采用Spark Streaming中的foreachRDD,这个方法会将DStream转成再...