自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 filecoin 手把手教你使用lotus创建集群挖矿

(一)Ubuntu系统安装: 步骤一、制作U盘镜像 1.下载Ubuntu18.04系统镜像 下载地址: http://mirrors.aliyun.com/ubuntu-releases/18.04/ubuntu-18.04.3-live-server-amd64.iso 2.下载安...

2020-03-22 13:56:44 984 0

原创 java多线程 —— 多线程同步器

1、什么是多线程同步器? 可以理解为,用于控制多线程之前同步动作的工具。 2、为什么使用多线程同步器? 在实际应用中,我们希望多线程根据某些一些特定的规则执行。因此有了多线程同步器,通过不同的多线程同步器,可以让多线程实现多样的行为。 3、多线程同步器介绍 3.1、Samaphore ...

2020-05-30 20:42:33 253 0

原创 软件建模和UML

如果要建造一个高楼大厦,首先要做的肯定不是先去买所需的材料,而是需要对建筑物的大小,形状和样式建立一个模型,设计相应的图纸。而软件同样也需要建模。 1、软件建模的原则? 从不同的视角,选取最显著的特征,可以建立出不同的模型。 主要有四种视角: 外部视角:对软件所处上下文环境进行建模。 交互视角...

2020-05-19 09:56:53 209 0

原创 Eureka注册中心

Eureka注册中心 最近在学习springcloud,接触到了Eureka,在这跟大家分享下。 一、需求分析: 在微服务中有众多的服务,那微服务的信息如何管理?Spring Cloud中提供服务注册中心来管理微服务信息。 首先说下我对Eureka的理解。微服务其实就像是我们的经常逛的万达一样,里...

2020-05-18 00:32:05 25 0

原创 Full GC触发原理和日志分析

1、Java GC的工作原理 GC(garbage collection)是指垃圾回收机制,当一个对象不能再被后续程序所引用到时,这个对象所占用的内存空间就没有存在的意义了,java虚拟机会不定时的去检测内存中这样的对象,然后回收这块内存空间。当可用内存不能满足内存请求时,GC会自动进行。 所有通...

2020-05-11 11:32:42 136 0

原创 IPFS星际文件系统

IPFS星际文件系统 一、IPFS是什么 互联网的底层超文本传输协议,ipfs与http同为互联网的底层协议,主要用于传输一些文本、音频、视频以及其他的互联网信息 HTTP协议: (1)已经使用了25年 (2)传统的互联网底层协议 (3)几乎所有的网站、app都是建立在http协议的基础之上 IP...

2020-05-10 22:21:35 51 0

原创 网络协议之FTP协议

1、什么是FTP协议? FTP 是File Transfer Protocol(文件传输协议)。用于ftp客户端和ftp服务器之间进行文本、文件传输的协议。与http的短连接不同,FTP协议是一种基于socket的长连接。 2、FTP协议的原理 FTP协议实际上是工作在TCP/IP协议族的应...

2020-05-10 20:42:45 108 0

原创 设计模式六大原则之里氏代换原则

1、什么是里氏代换原则(Liskov Substitution Principle)? 总链接:https://blog.csdn.net/jjs15259655776/article/details/105619335 LSP最正宗的定义是:如果每一个类型为T1的对象o1,都有类型为T2的对...

2020-04-26 11:07:33 102 0

原创 Netty应用程序实战

一、编写服务器 所有的Netty服务器都需要以下两部分。 至少一个 ChannelHandler ——该组件实现了服务器对从客户端接收的数据的处理,即它的业务逻辑。 引导 ——这是配置服务器的启动代码。至少,它会将服务器绑定到它要监听连接请求的端口上。 1.ChannelHandler和业务逻...

2020-04-19 21:58:01 96 0

原创 设计模式六大原则之开闭原则

1、什么是开闭原则? 总链接:https://blog.csdn.net/jjs15259655776/article/details/105619335 开闭原则的意思是:对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果。简言之,是为了使程序的扩展...

2020-04-19 18:59:07 30 0

原创 设计模式概述

设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式 结构型模式,共七种:适配器模式、装饰者模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备...

2020-04-19 18:07:38 60 0

原创 初入netty的概念及结构体系

netty的概念及结构体系 最近在netty的相关知识,跟此跟大家分享下学习成果 在学习netty之前,我们需要先了解下java的网络编程 一、Java网络编程 在早期的Java API中只支持由本地系统套接字库提供的所谓的阻塞函数 package com.liwai.game; import ...

2020-04-19 17:30:26 99 0

原创 spring boot ioc实操

spring boot 的ioc 一、简介 ioc与aop是spring boot的两个核心理念,spring boot是基于注解开发的Spring IOC。 IOC容器一般具备两个基本功能: 1、通过描述管理Bean,包括发布和获取。 2、描述Bean之间的依赖关系 在此有必要解释下什么是bea...

2020-04-12 23:17:33 137 0

原创 java多线程 ———— 小结(干货)

java多线程中常见问题小结: 1、java中实现多线程的几种方法: 继承Thread类; 实现Runnale接口; 实现Callable接口,通过FutureTask包装器来创建Thread; 使用线程池; package com.test; import java.util.co...

2020-04-12 19:14:49 80 0

原创 java多线程 ———— 线程停止

1、线程的停止方法 我们在之前的博客提到过,线程怎么创建。 线程池:https://blog.csdn.net/jjs15259655776/article/details/105037208 创建和启动线程:https://blog.csdn.net/jjs15259655776/arti...

2020-04-05 13:26:43 79 0

转载 最最原始的问题——两点间的最短路

最最原始的问题——两点间的最短路 这类背景一般是类似:已知各城市之间距离,请给出从城市A到城市B的最短行车方案 or 各城市距离一致,给出需要最少中转方案。 也就是,固定起始点的情况下,求最短路。 这个问题用简单的搜索就能轻松解决。(本部分内容不涉及图论算法,可跳过) 假设用邻接矩阵存图,...

2020-03-30 22:12:36 94 0

原创 java多线程 ———— 读写锁

目录 1、什么是读写锁? 2、为什么使用读写锁? 3、怎么使用读写锁? 1、什么是读写锁? 读写锁有很多,最终极的父类就是ReadWriteLock,他把锁分为两类,读锁和写锁。即获得读锁的线程,拥有读取变量的权利;获得写锁的人,拥有写入变量的权利。 2、为什么使用读写锁? 我们都知...

2020-03-30 01:04:12 103 0

原创 AOP编程

一、什么是AOP? 同上篇IOC编程一样,AOP也是一种编程思想,而不是一门技术。AOP的全称叫Aspect-Oriented Programming,也叫面向切面编程。在理解什么事AOP之前,我们需先知道什么是分散关注。 分散关注   即将通用需求功能从不相关类之中分离出来;同时,能够使得很...

2020-03-29 23:14:34 107 0

原创 ioc编程

一、什么是ioc? 首先要强调的是ioc是一种编程思想,而不是技术。ioc的全称叫inversion of control,即控制反转的意思。那控制反转又是什么意思呢?通俗点来说就是原来你控制的事情,现在不再由你来控制。在java传统的编程设计中,我们在对象内部通过new来创建对象,而ioc编程...

2020-03-29 12:02:35 102 0

原创 java多线程 —— ThreadLocal

目录 1、什么是ThreadLocal? 2、为什么要用ThreadLocal? 3、ThreadLocal的内部实现? 4、怎么用ThreadLocal? 1、什么是ThreadLocal? ThreadLocal是一种变量类型,称为“局部变量类型”。一般用private sta...

2020-03-27 20:05:39 99 0

原创 java多线程——线程池

1、什么是线程池? 线程池是一种线程的使用模式。类似数据库连接池一样,线程可以通过线程池对系统使用的线程进行统一的管理。统一管理线程的创建,调度,销毁等等。 2、为什么使用线程池? 统一管理。一个功能复杂的系统中,势必需要使用多线程,一旦线程数量过多,就需要统一管理。如果不用线程池进行统...

2020-03-22 22:58:04 98 0

原创 Arthas实践

最近跟一个网友讨论游戏框架的问题,在说到热更新的时候,他给我介绍了这个工具Arthas。最近学习了下,这个工具不仅能实现游戏的热更新,在解决线上问题的时候也非常实用的,今天跟大家分享下。 一、简介 官网:https://alibaba.github.io/arthas/ 根据官网的介绍,...

2020-03-22 22:26:57 88 0

原创 java多线程 —— 单例模式

1、什么是单例? 单例模式实际上是一种模式。它达到的效果是,在程序的运行过程中,一个类最多只会被实例化(初始化)一次。 2、为什么使用单例? 上面我们已经知道单例模式,其实就是一个类的变量和方法最多只会被初始化一次,即全局唯一。全局唯一可以节省内存开销,提供全局唯一的变量和方法等等优...

2020-03-19 20:33:44 100 0

原创 java异常处理和异常分类

一、背景信息: 异常才是程序遇到的最场景的情况。一段具有某种功能或者达到某种效果的程序,在理想的情况下,是完美的。这里的理想情况是程序不会遇到处理不了的异常,然后在大部分生产关系下,会面临各种各样的异常:IO错误、网络异常、不合法数据、容器越界、内存溢出等等。所以异常才是正常的情况。 ...

2020-01-15 18:08:08 130 0

原创 Java多线程——第二篇(创建和启动线程)

多线程怎么理解呢? 我个人有一个理解:就像是你们的军队去执行一项任务,就像你的主线程一样。这时候,你派了一个小队去执行侦查敌情的任务。多线程就是这样,主线程执行着任务,这时候,启动一个子线程,说,你去,把这个任务执行了。 这就是我对多线程的理解:新建一个任务。 那么今天我们就来看看怎么派出你...

2020-01-10 15:09:46 120 0

转载 mybatis学习手册

https://mybatis.org/mybatis-3/zh/getting-started.html

2019-11-30 11:01:24 36 0

原创 log4j2的自动加载顺序

log4j2的自动加载顺序: log4j将检查“log4j.configuration file”系统属性,如果设置了,将尝试使用与文件扩展名匹配的configurationfactory加载配置。 如果未设置系统属性,则属性配置工厂将在类路径中查找log4j2-test.properties...

2019-10-30 16:09:16 331 0

转载 在Java中使用xpath对xml解析

xpath是一门在xml文档中查找信息的语言。xpath用于在XML文档中通过元素和属性进行导航。它的返回值可能是节点,节点集合,文本,以及节点和文本的混合等。 在学习本文档之前应该对XML的节点,元素,属性,文本,处理指令,注释,根节点,命名空间以及节点关系有一定的了解以及对xpath也有了解。...

2019-10-16 15:36:01 32 0

原创 小记 —— IO的String和Byte转换

1、转换方法: //string 转 byte[] String str = "Hello"; byte[] srtbyte = str.getBytes(); // byte[] 转 string String res = new String(srtbyte);...

2019-09-27 11:10:56 32 0

原创 ActiveMQ中的Session

当你从ActiveMQ的 ConnectionFactory中获得Connection之后,可以通过Connection创建多个Session,创建Session时有两个参数 SessioncreateSession(booleantransacted,intacknowledgeMode); ...

2019-07-25 11:21:52 338 0

原创 python2和python3的编码格式

1、Python2和Python3的 字符编码 和 字符类型 Python3: Unicode字符串 str 类型 非Unicode字符串 bytes 类型 Python2: Unicode字符串 unicode 类型 非Unicode字符串 str 类型 2、python的Unicode和...

2019-07-18 17:26:42 147 0

原创 两句话:if __name__ == '__main__'

每个python模块都包含内置的变量__name__。 如果模块自身调用,则__name__的值为__main__,如果模块被import调用,则__name__的值为进行了import的模块名。

2019-07-08 11:23:12 1717 0

原创 Timer already cancelled 或者 Task already scheduled or cancelled

关于Timer already cancelled以及Task already scheduled or cancelled问题 1、问题的原因 我们想要设置一个开关,控制定时器的状态。当我们关掉开关的时候,也就是在使用task.cancel()或者timer.cancel()来取消定时任务后...

2019-06-13 20:19:03 668 0

原创 SimpleDateFormat的format和parse妙用。

SimpleDateFormat.format把date转成String SimpleDateFormat.parse把String转成date。 tips: SimpleDateFormat.parse的时候,经常会有ParseException原因是输入的字符串格式跟SimpleDa...

2019-06-11 17:51:57 3146 0

转载 UTC时间、CST时间和GMT时间

1、UTC时间是l零时区的时间。(时间协调时间) CST时间是四大时区的时间,(中央标准时间) 分别是:     Central Standard Time (USA) UT-6:00(美国cst时间:零区时减6个小时) Central St...

2019-06-03 21:06:36 3656 0

原创 Log4j配置文件解读

<?xml version="1.0" encoding="UTF-8"?> <!--日志级别以及优先级排序: OFF > FATAL > ERROR > WARN > INFO > DEBUG > ...

2019-05-28 17:04:40 107 0

转载 log4j配置文件模板

<?xml version="1.0" encoding="UTF-8"?> <!--日志级别以及优先级排序: OFF > FATAL > ERROR > WARN > INFO > DEBUG > ...

2019-05-28 16:23:34 18 0

转载 人工智能三大学派:符号主义,连接主义,行为主

人工智能各学派简介:符号主义,连接主义,行为主义 人工智能学派简介 目前人工智能的主要学派有下面三家: (1)符号主义(symbolicism),又称为逻辑主义(logicism)、心理学派(psychologism)或计算机学派(computerism),其原理主要为物理符号系统(即符号操...

2019-05-28 09:46:16 2104 0

转载 ArrayList和LinkedList的区别以及优缺点

ArrayList和LinkedList都是实现了List接口的容器类,用于存储一系列的对象引用。他们都可以对元素的增删改查进行操作。 对于ArrayList,它在集合的末尾删除或添加元素所用的时间是一致的,但是在列表中间的部分添加或删除时所用时间就会大大增加。但是它在根据索引查找元素的时候速度...

2019-05-10 18:01:16 45 0

转载 转:为什么要Base64编码

Base64编码及其作用 Base64就是用来将非ASCII字符的数据转换成ASCII字符的一种方法 最重要的是 1.便于网络传输。 2.不可见性。 我们知道在计算机中任何数据都是按ascii码存储的,而ascii码的128~255之间的值是不可见字符。而在网络上交换数据时,比如说从A地...

2019-04-30 17:24:29 584 0

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