自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 Linux之虚拟机配置双网卡

首先检查本地windows 是否有新的HOST-ONLY网卡 vim /etc/sysconfig/network-scripts/ifcfg-enp0s3 DEVICE=enp0s3 TYPE=Ethernet BOOTPROTO=dhcp ONBOOT=yes NM_CONTROLLED=n...

2018-10-04 17:47:34 1017 0

原创 编程基础 之 位运算专题

一 原码、反码和补码 1.1原码 原码就是将10进制数,转化为2进制码,比如: 8:00001000 -8: 10001000 最高位表示符号位。   1.2 反码 反码:如果是正数,即最高位是0,则反码是原码自己;如果是负数,即最高位符号位是1,则符号位保持不变,其余位取反。比如...

2018-09-04 12:11:12 223 0

原创 window 环境下搭建多个git项目

很多时候,我们在开始用git的时候,就使用全局的配置文件设置了用户名和邮件地址,导致每次切换项目提交代码都需要修改用户名和地址。这种情况主要是开始对git不熟,网上找的例子。另外确保自己本地已经安装git 和 git-bash,并且安装路径添加到环境变量。git-bash里面会有一些用户相关的ss...

2018-05-24 17:25:34 555 0

原创 Log4J 1.x 配置详解

一 Log4J有三个主要的组件 1.1 Loggers(记录类型) Log4j划分了5个级别:DEBUG,INFO,WARN,ERROR,FATAL。 这5个level是有优先级顺序的,DEBUG 指定的日志级别。比如你指定了WARN级别,可以输出WARN,ERROR和FATAL的日志,但是...

2018-01-20 17:43:09 591 0

转载 Linux之内核调试sysrq

# 立即重新启动计算机 echo "b" > /proc/sysrq-trigger   # 立即关闭计算机 echo "o" > /proc/sysrq-trigger   # 导出内存分配的信息 (可以用/var/log/mess...

2018-01-15 15:06:48 674 0

原创 Shell脚本基础语法

一、       编写shell的格式 1 第一行决定使用哪一种shell Bash:#! /bin/bash Python: #! /usr/bin/python 不知道解释器的完整路径,可使用whereis 解释器名称(bash) 2 # …… 表示注释 3 正常的程序体   ...

2018-01-14 00:02:56 443 0

转载 Linux之rsync

一 rsync介绍   我们经常需要在不同主机或者相同主机的不同目录做文件同步和更新,Linux提供了很多内置命令可以使用比如scp,cp等等,但是rsync命令是一个更加强大的远程同步工具,可以通过LAN/WAN快速同步多台主机间的文件,它使用的就是rsync算法达到本地和远程两个主机之间文...

2018-01-13 21:29:20 280 0

原创 Linux之磁盘配额

磁盘配额:限定用户或组对磁盘空间的使用 一 查看是否安装quota的包 rpm -qa|grep quota 如果没有则安装 yum install quota   二 启用quota磁盘配额功能 mkfs.ext4 /dev/sdb3 mkdir /tmp/sdb3 mount...

2018-01-09 08:18:05 369 0

转载 Vim查找替换 & 正则表达式

查找替换语法: => :[range]s/{pattern}/{string}/[flags] :1,10s/from/to/ 表示在第1到第10行(包含第1,第10行)之间搜索替换 :10s/from/to/ 表示只在第10行搜索替换 :%s/from/to/ 表示在所有行...

2017-12-29 10:29:29 1021 0

原创 Linux 常用开关机以及7个启动级别

一 关机或重启 1.1 shutdown -r: 重启 -h 关机 -h 时间 定时关机 1.2 init 关机: init 0 重启: init 6 1.3 poweroff 1.4 reboot 二 7 个启动级别 语法 init 0-6 0: 系统停机模式...

2017-12-28 06:37:20 779 0

原创 Linux 别名

Linux中别名,可以让我们平时经常敲的一些很长的命令变短,提高效率。语法如下: alias "命令" 比如:alias vimens33= " vim /etc/sysconfig/network-script/ifcfg-ens33" 设...

2017-12-28 06:14:40 314 0

原创 Linux下 sshd服务不能启动

今天遇到CentOS 7 下远程连不上,怀疑服务没有启动,先检查了端口和服务是否启动: ps -A| grep sshd 发现没有 netstat -nultp|grep 22 也没有发现22端口 检查防火墙是不是会影响,关闭了防火墙,重启sshd服务  systemctl...

2017-12-25 11:02:37 33184 1

原创 Java虚拟机专题对象内存定位

一  对象在内存中的布局 1.1对象的创建过程 对象的创建过程可以如下图所示: 1.2 什么是符号引用和直接引用,为什么需要在常量池定位到符号的引号? 在类的解析阶段,把虚拟机常量池内的符号引号替换为直接引用。 1.2.1 符号引用(SymbolicReferences)...

2017-12-19 17:09:13 358 0

原创 Java虚拟机内存的代的划分

一 Java虚拟机为什么需要分代 # 如果每次都对整个堆空间进行垃圾回收,花费的时间肯定较长 # 不同的对象生命周期不一样,如果每次垃圾回收这些周期的较长的也都去遍历一下,显然没有意义。 所以实现分而治之的思想,采用分代,方便进行不同生命周期的对象的管理。   二 如何划分代 2.1J...

2017-12-19 17:04:17 251 0

原创 Java虚拟机内存溢出

一 生成内存快照 我们要检测是哪里的代码出了问题,就必须要借助一些命令或者工具定位到这个问题代码行,那么通常做法是生成内存快照,那么快照应该如何生成呢? 我们可以设置JVM的参数: -XX:+HeapDumpOnOutOfMemoryError 这样在内存溢出的时候,就会生成内存快照。 ...

2017-12-19 17:02:24 273 0

原创 Java虚拟机专题之class文件结构(读书笔记)

我们知道一个Class文件对应着一个接口或者注解的类,但是他们并不一定定义在文件里,也可以直接由类加载器生成。   Java虚拟机定义了专门的数据类型来表示class文件的内容,他们包括u1,u2,u4表示1,2,4个无符号数   一 Class文件结构 在Class文件中,各个项按照严...

2017-12-19 16:58:48 289 0

原创 Java虚拟机专题之类加载机制(读书笔记)

一 类的加载阶段 类加载具体做的是什么 # 根据类的权限定名,获取此类的二进制流(文件或者网络等) # 将这个字节流所代表的静态存储结构转化为方法区的运行时数据 # 在内存创建一个代表这个Class的对象,然后作为数据的访问入口     二 类的连接阶段 2.1 验证阶段 验证的...

2017-12-19 16:53:18 258 0

原创 Java虚拟机专题之字节码指令(读书笔记)

一 字节码与数据类型 大部分的指令都包含了其操作所对应的数据类型信息。 比如iload指令用于从局部变量表中加载int类型的数据到操作栈中,而fload指令加载的则是float数据类型的数据。   二 加载与存储指令 主要用于将数据在栈帧的局部变量表和操作数栈之间来回传输。 将局部变量...

2017-12-19 16:48:41 301 0

原创 Java虚拟机专题之垃圾回收(读书笔记)

一 如何判断对象是垃圾对象 1.1 引用计数法 (Reference Counting) 在对象中添加一个引用计数器,当有其他地方引用这个对象的时候,引用计数器就加1,当引用失效的时候就-1. 当垃圾回收器检查到引用为0,就会认为是垃圾对象,进行回收。   但是有一个问题,比如对象之间循环...

2017-12-19 16:44:23 268 0

原创 Java虚拟机专题之内存管理(读书笔记)

一 Java虚拟机运行时的内存数据区域 二 为什么有线程共享区和线程独占区 我们知道,Java程序在JVM中运行,有的内存对象声明周期长,不随线程的释放而释放,比如堆和方法区;但是有些内存对象,就是线程私有范围的,随着线程的结束而结束,该部分使用的内存也会被释放。当然这也是...

2017-12-19 16:38:11 230 0

原创 Java虚拟机专题之内存分配(读书笔记)

一 虚拟机内存分配策略 1.1 对象优先在Eden区域分配 1.2 大对象直接进入老年代 1.3 长期存活的对象进入老年代 1.4 空间分配担保 1.5 动态对象年龄判定   二 对象优先在Eden区域分配 假设构建4M大小的数组,通过打印GC详细日志,也可以看到是优先在Eden上...

2017-12-19 16:31:20 235 0

原创 Java 多线程总结

第一章 原子性 可见性 有序性 1.1 原子性 即某个正在执行的操作不能中断,不能被分割,要么就不执行,要么就执行完毕。 正如我们所知道的synchronized代码块,这块里面的东西要么就是被执行完毕,要么就不执行。 还有就是我们所熟知的基本数据类型的读写,long 和 double除外...

2017-12-08 10:14:01 282 0

原创 Java中的锁

一 synchronized 内置锁和Lock的比较 相同点: 都能够防止多线程同时访问共享资源 都支持重进入锁 不同点: 内置锁获取锁和释放锁是隐式的,不需要程序员手动去管理锁;Lock需要显示地获取和释放锁,灵活性也更大,如果没有释放锁,可能会导致死锁。 内置锁获取锁的顺序都是无序...

2017-12-08 09:59:18 207 0

原创 并发库之信号量

Semaphore用来控制同时访问资源的线程数量,它通过协调各个线程,以保证合理使用公共资源。特别是公用资源有限的情况下,比如数据库连接。假如有一个需求,要读取几万个文件的数据,因为都是IO密集型任务,我们可以启动几十个线程并发读取,但是读到内存之后,还要存储到数据库,而数据库的连接只有5个,这时...

2017-12-08 09:47:39 188 0

原创 并发库之同步屏障

让一组线程达到一个同步点时被阻塞,直到最后一个线程达到同步点,这时候屏障才会放行,所有被屏障拦截的线程才会继续执行。 构造方法: public CyclicBarrier(int parties) { this(parties, null); } public CyclicBarrier(int...

2017-12-08 09:45:56 232 0

原创 并发库之CountDownLatch

允许一个或多个线程等待其他线程完成某一步操作。 需求1: 如果有三个线程,主线程,Thread1,Thread2.假设主线程必须等待线程1和线程2执行完毕,它才能继续往下执行。我们可能首先考虑到的是使用join方法。 public class JoinClient {       public...

2017-12-08 09:44:05 207 0

原创 阻塞队列

Java中的阻塞队列 1.1 什么是阻塞队列(BlockingQueue) 支持阻塞操作的队列。具体来讲,支持阻塞添加和阻塞移除。 阻塞添加:当队列满的时候,队列会阻塞插入插入的元素的线程,直到队列不满; 阻塞移除:在队列为空时,队里会阻塞插入元素的线程,直到队列不满。 阻塞...

2017-12-08 09:42:22 2326 0

原创 hashCode() 和equals() 区别和作用

一 hashCode() 和equals() 区别和作用 Java中任何一个类都具备hashcode和 equals方法,因为他们object定义的。 equals用来判断对象是否相等 hashcode返回一个int类型的数,即哈希值,一般作用是用于将数据均匀的散列在不同的桶。 若重写...

2017-12-08 09:37:46 274 0

原创 位运算

一 位运算符 &与运算:被比较的两个数,最后一位都为1,结果才是1 比如11&15,他们二进制是1011和 1111 1011 1111 结果1011,所以是11 比如128和129,他们二进制是10000000和 1000000100001101 10000000 ...

2017-12-08 09:29:23 136 0

原创 Python之面向对象

一 基本结构 class 类名(父类名字):    field =value //定义类变量       def__init__(self,实例变量字段1,实例变量字段2,……)    defmethod(self,参数列表): class Role(object): # object ...

2017-12-04 22:40:33 203 0

原创 Python之正则表达式

import re regex = "\w?\d{1,4}.*" target = "a123#" # 从头开始匹配,如果开始蔓延匹配上就没有匹配到 ret = re.match(regex,target) # 找到所有数字进行返回 ret ...

2017-12-04 22:39:00 181 0

原创 Python之模块

一 模块介绍 某个功能相关的代码集合。主要分为三种模块: 自定义模块、内置标准模块(标准库)和开源模块   二 time & datetime 模块 import time ''' 表示时间的几种方法 1)时间元组 time.struct_...

2017-12-04 22:37:54 228 0

原创 Python之函数

一 函数的基本语法 def 返回类型 func_name():       函数体   二 默认参数 # 默认参数,表示如果调用者没有提供值,就使用默认提供的值 def show(arg1,arg2 = 'default'):     print(arg1,a...

2017-12-04 22:35:51 146 0

原创 Python之队列和数据库

一 数据库 Python可以和数据库进行交互,这里也有一些交互的模块,比如MySQLdb、pymysql等,但是3.x 已经不再支持MySQLdb,所以你安装的时候会报错   我们以pymysql为例子: 1.1 创建连接 pymysql有几种创建连接的方式 import pymysq...

2017-12-04 22:34:51 543 0

原创 Python之线程(二)

一 ThreadLocal 我们知道多线程环境下,每一个线程均可以使用所属进程的全局变量。如果一个线程对全局变量进行了修改,将会影响到其他所有的线程。为了避免多个线程同时对变量进行修改,引入了线程同步机制,通过互斥锁,条件变量或者读写锁来控制对全局变量的访问。 只用全局变量并不能满足多线程环境...

2017-12-04 22:32:32 193 0

原创 Python之线程(一)

一 线程的启动与停止 线程需要使用线程库threading。 from threading import Thread import time ################直接调用的方式创建线程################ # 定义多线程要运行函数 def countdow...

2017-12-04 22:30:34 153 0

原创 Python之socket

Socket 也被称为套接字,用于描述IP地址和端口,是一个通信链上的句柄,应用程序通过socket向网络发出请求或者应答网络请求   一 Socket 和 File I/O 比较 File模块是针对某个指定的文件打开、读写和关闭 Socket模块是针对服务器端和客户端socket进行打开...

2017-12-04 22:28:35 262 0

原创 Java内存模型与线程

一:什么是Java内存模型 Java内存模型:是为了消除或者屏蔽各类硬件和内存访问差异,从而实现java程序在各种平台下能达到一致的内存访问效果。 主要目标:定义程序中实例字段,静态字段,以及构成数组对象的元素,不包括局部变量和方法参数。因为后者是线程私有的,不会被共享,自然不存在资源竞争问题...

2017-12-04 22:23:31 152 0

原创 ActiveMQ消息回流

可能有时候我们会遇到消息丢失的场景,比如broker1和broker2通过networkConnector连接,一些消费者连接到broker1,消费broker2的消息。broker2的消息先被broker1消费掉,然后broker1转发给这些消费者。但是转发部分消息的时候,broker1挂掉了或...

2017-12-04 14:51:38 549 0

原创 金融投资理财基础知识

随着当前金融互联网的兴起,当前的投资理财方式较以前相比,更加的多样化。就不说银行存款了,当下风险最低,收益最低的理财方式,因为通货膨胀,可能存的越久就钱越不值钱。下面主要介绍一下当下比较流行的投资方式:   一 银行理财产品 各个银行,无论是国有的,还是民营的银行,都有推出自己银行的理财产品...

2017-12-03 17:08:15 3924 0

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