自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

个人博客

每个人心中都有一团火,而路过的人只看到了烟。

  • 博客(117)
  • 资源 (14)
  • 收藏
  • 关注

原创 Redis | 持久化机制

一、简介在指定的时间间隔内,将内存中的数据集快照写入磁盘,恢复时是将快照文件写入内存。持久化的类型有 3 中,分别是 RDB 持久化(默认),AOF 持久化,还有就是两种混合持久化。二、原理1、RDB在默认的 RDB 模式中,Redis 会单独 fork 一个与当前进程一模一样的子进程来进行持久化,这个子进程的所有数据(变量,环境变量,程序程序计数器等)都和原进程一模一样,会先将数据写入到...

2020-03-05 20:55:11 231

原创 SpringBoot 2.0 | SpringBoot 集成 Apollo

一、创建项目首先我们在安装好的 Apollo 配置中心门户网站创建一个项目,然后添加配置,最后进行发布配置,效果如下。二、 SpringBoot 对接 Apollo1、添加 maven 依赖 <dependency> <groupId>com.ctrip.framework.apollo</groupId> <artifactId&...

2020-03-03 23:30:22 339

原创 延迟满足 —— 达到目标需要忍住重重诱惑

20世纪60年代,美国斯坦福大学心理学教授沃尔特·米歇尔做了一个著名的“延迟满足”实验,这个实验所在美国斯坦福大学附近的一间幼儿园粒粒面进行的。实验过程大致如下:研究人员找来数十名儿童,把他们都单独安排在一间只有一张桌子和一把椅子的小房间里面,然后再桌子上放着他们喜欢吃的棉花糖,曲奇和各种小零食。然后告诉他们,如果等 20 分钟后再吃,还能得到更多的奖励,如果现在就吃了,将没有任何奖励。当研究...

2020-03-02 21:11:50 624

原创 Redis | Redis 单机版安装与使用(Linux)

一、简介是完全开源免费的,用c语言编写的,是一个单线程,高性能的(key/value)内存数据库,基于内存运行并支持持久化的 nosql 数据库。主要是用来做缓存,但不仅仅只能做缓存,比如:redis的计数器生成分布式唯一主键,redis 实现分布式锁,队列,会话缓存,点赞,统计网站访问量。二、安装1、下载https://redis.io/download2、解压下载完成后,传到 Li...

2020-03-02 13:40:00 222

原创 分布式的冰与火 | 分布式配置中心 Apollo (CentOS安装)

一、Docker 快速安装1、安装 DockerDocker 安装与入门2、安装 Docker-ComposeDocker-Compose 安装与入门3、下载配置文件https://github.com/ctripcorp/apollo/tree/master/scripts/docker-quick-start4、启动 Docker-Compose在 docker-quick-s...

2020-03-01 22:38:33 477

原创 写作的好处

一、我们为什么需要写作写作是一个重要的技能,无论何总职业,无论身在何处,好的文笔,不仅能给我们带来更多的机会,还能让我们更易于得到他人的信服,从而让我们能够接近自己的目标。所以,这是一个人人都有必要掌握的技能。在互联网的时代,我们如果想提高自己的影响力,通过的途径除了是演讲,还有就是写作,写作是一项低门槛的,绝大多数人都能够学习的技能。二、写作的好处1、锻炼思考和表达能力写作能够锻炼我们的...

2020-03-01 02:55:43 1372

原创 自媒体的未来

一、自媒体的未来因为自媒体,个人的能力被无限的放大,过去,我们的能力只能影响身边的人,但现在,因为互联网,我们的能力可以影响到整个世界,在这个时代,每一个普通的人都可以连接更多的人,哪怕你只是一个偏远山区的人,也能够为世界各地的人带来价值,这是以前无法想象的事,自媒体改变了一个时代。在未来,每一个人都有机会成为一个个超级个体,就好比一个节点,每一个节点都会产生价值。我们可以举一个例子,比如说我...

2020-02-25 21:46:25 438

原创 Kong 网关 | Route

一、简介路由用来匹配客户端向上游服务器请求的规则,也就是客户端调用的 API,每个路由(Route)和一个服务(Service) 相关联,一个服务可有有多个路由,我们可以对每一条路由进行细粒度的配置,可以使用正则表达式进行通用的配置。二、重要属性创建一个路由需要配置的属性,其中路径 paths 为必须设置,其余为可选。AttributesDescriptionname...

2020-01-18 19:25:35 1941

原创 Kong 网关 | Service

一、简介服务 Service 是 Kong 对上游服务的抽象,也就是我们的一个个微服务,一个个项目,它用来管理上游服务的 API在创建一个上游的 API 之前,需要创建一个服务。二、相关属性kong 配置一个服务需要设置的相关属性,其中 protocol,host,port 是必须设置的属性,其余属性是可选属性,所对应的参数和描述如下表:AttributesDescription...

2020-01-17 20:46:32 482

原创 Kong网关 | 「Kong & Prometheus & Grafana」 实时监控

一、安装 Go1、下载wget https://dl.google.com/go/go1.12.14.linux-amd64.tar.gz2、解压tar -zxvf go1.12.14.linux-amd64.tar.gz3、配置环境变量vim /etc/profileexport PATH=$PATH:/usr/local/go/binsource /etc/profile...

2020-01-13 18:02:27 3821

原创 Kong 网关 | Rate Limiting 限流

一、简介限流允许开发人员规定在几秒、几分钟、几小时、几天、几个月或几年的时间内可以发出多少HTTP请求。二、实例1、配置服务2、配置路由3、为路由配置限流访问:http://www.javahly.com:8000/三、配置属性属性说明是否必须默认示例consumer设置消费之,当时用身份认证时能够识别出消费者否所有消费者secon...

2019-12-10 00:12:29 1752

原创 Kong 网关 | 快速安装与入门

一、简介二、docker 安装 Kong1、创建网桥# docker network create kong-net2、创建数据库,Kong 支持 Cassandra 或者 PostgreSQL,任选其一,以下以 PostgreSQL 为例2.1 启动 PostgreSQL 容器# docker run -d --name kong-database \ ...

2019-12-07 13:15:00 1055

原创 PostgreSQL 安装与入门

一、简介PostgreSQL是一种特性非常齐全的自由软件的对象-关系型数据库管理系统(ORDBMS),是以加州大学计算机系开发的POSTGRES,4.2版本为基础的对象关系型数据库管理系统。POSTGRES的许多领先概念只是在比较迟的时候才出现在商业网站数据库中。PostgreSQL支持大部分的SQL标准并且提供了很多其他现代特性,如复杂查询、外键、触发器、视图、事务完整性、多版本并发控制等。同...

2019-12-06 18:52:58 568

原创 Spring-Cloud-Finchley | 配置中心 Config

简介在一个分布式微服务集群中,可能会有成百上千的服务,每个服务都有大量的配置,这些配置散落在各个服务,造成难以维护,所以,我们需要一个配置中心来统一管理这些配置,Spring Cloud Config 可以实现所有服务的配置管理。实例1、创建 maven 工程 <properties> <project.build.sourceEncoding>UTF-8...

2019-11-05 23:38:32 233

原创 Spring-Cloud-Finchley | 路由网关 Zuul

简介Zuul 是Netflix 旗下实现路由网关的一个组件,客户端在进行请求时,首先请求会到达网关,然后网关将请求分发到不同的服务,网关可以根据 URI 区别用户请求的具体服务,然后进行转发,返回响应的资源给用户。实例实例1、创建 maven 工程创建 maven 工程,添加核心的父 maven 依赖,所有子 pom 文件继承这个父 pom 文件。 <properties&gt...

2019-11-04 00:52:15 222

原创 Spring-Cloud-Finchley | 熔断 Hystrix

简介熔断机制产生的背景是“雪崩效应”,在分布式系统中,一个服务提供者的不可用会导致服务消费者的不可用,一个服务的异常,最终会影响其他服务,造成线程阻塞,资源耗尽,如果有大量的请求,会导致服务瘫痪,引蝴蝶效应造成系统宕机。如果一个服务的错误过多,短时间内得不到修复,就可以开启熔断机制,防止多次没有意义的调用。服务调用方会定时重试,如果可用,就继续使用。熔断有以下几种状态:闭合状态添加一...

2019-10-31 01:08:14 200

原创 Spring-Cloud-Finchley | 声明式服务调用 Feign

简介本篇的 Feign 和 上一篇的 Ribbon 都是用于调用其他服务,但是调用的方式不同,Ribbon 需要搭配 RestTemplate 进行 Http 请求,步骤较为繁琐;Feign 是 Ribbon 的改进,整合了 Ribbon 和 Hystrix,不需要构建 Http 请求,并且采用接口的方式声明即可调用。实例1、创建 maven 工程创建 maven 工程,添加核心的父 ma...

2019-10-30 01:02:48 218

原创 Spring-Cloud-Finchley | 负载均衡 RestTemplate+Ribbon

简介负载均衡提供了一种廉价的方式扩展网络设备和服务器带宽,增加吞吐量,加强网络数据的处理能力,也就是把多个请求分摊到不同的服务器上,降低单台服务器的压力。Ribbon 和 Nginx 都可以用来做负载均衡,他们的区别与场景如下:Nginx 是服务器负载均衡,Ribbon 是客户端负载均衡,Nginx 是客户端把所有请求交给 Nginx,由 Nginx 进行转发,Ribbon 是从注册中心获取...

2019-10-29 00:28:00 252

原创 Spring-Cloud-Finchley | 服务注册与发现 Eureka

简介注册中心是微服务的核心,提供服务注册与发现,当一个服务启动时,会把自己的信息注册到注册中心,当一个服务需要调用另一个服务时,会通过别名从注册中心获取到相关服务的信息,比如该服务的地址等。Zookeeper 也可以作为注册中心,Eureka 和 Zookeeper 的区别在于 Eureka 保证 AP,Zookeeper 保证 CP,AP 也就是 CPA 理论中的高可用和分区容错,每一个服...

2019-10-28 00:25:47 208

原创 Java 大数据【Hadoop 安装入门】

一、开始1.创建用户及权限添加用户名$ adduser hadoop 添加密码$ passwd hadoop 赋予管理员权限$ usermod -aG wheel hadoop 切换用户$ su - hadoop 确认成功$ sudo ls –la /root2.添加权限有时会提示没有权限,切换到 root$ visudo找到 root ALL = (AL...

2019-08-20 22:38:38 265

原创 精通Spring 源码 (三) | Bean 的诞生及生命周期

一、前言上一篇我们结束了 Bean 的注册与扫描,本篇我们将走进 Bean 的实例化和初始化。二、源码分析我们首先开一张思维导图,Bean 的实例化和初始化主要在 finishBeanFactoryInitialization(beanFactory); 这个方法里面完成。我们可以随着思维导图一步一步跟进,调用 getBean,doGetBean,在 doGetBean 里面会两次调用 ...

2019-08-20 21:39:34 256

原创 精通 Spring 源码 (二) | 揭秘 Bean 的前世今生

一、前言接下来,我们对 Bean 的扫描与注册进行探究,一个 Java 类是如何变成一个 Bean 的呢,它中间走过了怎样的历程,这就是我们本章所要讨论的问题。二、源码分析在进行分析前,各位胖友可以先看一下思维导图,该思维导图详细记录了源码的每一步流程,并且每一步都有详细的注释,在在线地址可以看到注释,如下:点击浏览 Spring 源码思维导图本次我们将对 refresh 方法进行分析,...

2019-08-20 21:39:25 379

原创 精通 Spring 源码 (一) | 剑指 Spring 源码

一、前言当下,各大框架层出不穷,当我们还没有学完一个框架时,又会有新的框架出现,作为一名合格程序员,我们不应该满足于看着文档搬运API,而应该深入其源码,探究他的底层原理。在这个过程,虽然会很艰难,但你能收获到的不仅是知识,还有更为重要的开发思想,甚至会打破你的三观。学习源码并不能让你的能力得到立竿见影般的提高,但学习要踏实,学习是需要长期积累的,我们学习应该本着一颗学习某一件事务的思想及其本...

2019-08-20 21:39:07 979

原创 synchronized 和 volatile

一、synchronized 关键字1、synchronized 用法synchronized 关键字可以保证线程的原子性和可见性,它锁的是一个对象,他有如下几种用法1)对象锁这里锁的是 object 对象的实例。public class Demo1 { private int count = 10; private Object object = new Object(...

2019-07-30 17:00:16 214

原创 Java 数据结构 | 二叉树

1、定义节点类定义静态内部类 TreeNode 作为一个节点类,使用了泛型,data 为节点数据,lChild,rChild 为节点的左右子树,数据类型为 TreeNode//静态内部节点类 public static class TreeNode<AnyType> { //节点数据 public AnyType data; ...

2019-07-27 19:38:44 292

原创 八大排序算法解析及Java实现

八大排序算法解析及Java实现 1、冒泡排序时间复杂度:平均时间 最好情况 最坏情况O(n^2) O(n) O(n^2)空间复杂度:O(1)两层循环:第一层循环从第一个元素到倒数第二个元素,因为每次比较是前一个元素和后一个元素进行比较,所以在第一层循环,最后一个元素会和前一个元素进行比较,所以...

2019-07-26 15:02:05 388

原创 ASP.NET快速入门

# ASP.NET 简单实现CRUD本文将带你快速入门ASP.NET,并实现一个简单的CRUD,环境基于VS 2017。废话不多说,直接上干货!配置数据源首先创建一个 web 窗体网站,如下:创建好后,右键点击箭头所指,创建SqlServer数据源,步骤如下:创建好后,可查看数据库的属性,在右边可看到一个链接字符串,这个是重点,这个将会决定我们是否可以成功连接数据库。配置数...

2019-06-16 18:56:57 1979 1

原创 Java 基础知识 | 字符串 String&intern

简介java字符串在java编程中使用较为频繁,其中也涉及到不少知识点,String是典型的Immutable类,被声明为final,所有属性不可变,保证了基础的线程安全,由于不可变性,拼接,裁剪等动作,都会产生新的String对象。String创建一个字符串时,首先检查字符串常量池池中是否有相同的字符串对象有则直接取出,没有则创建对象把对象放入池中,new方法创建的对象不检查字符串池,直接在堆...

2019-05-19 01:03:51 405

原创 Spring Cloud Finchley | Spring Cloud OAuth2

一.简介OAuth(开放授权)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用。OAuth2.0是OAuth协议的延续版本,但不向后兼容OAuth 1.0即完全废止了OAuth1.0。在APP或者网页接入一些第三方应用时,时长会需要用户登录另一个合作平台,比如QQ,微博,微信的授权登录。OAuth 提...

2019-05-05 23:25:08 1402 2

原创 SpringBoot 2.0 | SpringBoot 集成 RabbitMQ

一、RabbitMQ 使用场景RabbitMQ 是一个消息中间件,最主要的作用:信息的缓冲区,应用场景如下:1、系统集成与分布式系统的设计各种子系统通过消息来对接,这种解决方案也逐步发展成一种架构风格,即“通过消息传递的架构”。例:现在医院有两个科“看病科”和“住院科”在之前他们之间是没有任何关系的,如果你在“看病课”看完病后注册的信息和资料,到住院科后还得重新注册一遍?那现在要改革,你看...

2019-05-01 13:39:30 683

原创 面试必问的设计模式 | 单例模式

一、简介单例模式,是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中,应用该模式的一个类只有一个实例。即一个类只有一个对象实例。单例模式的要点有三个;一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。从具体实现角度来说,就是以下三点:一是单例模式的类只提供私有的构造函数,二是类定义中含有一个该类的静态私...

2019-04-12 22:06:20 343

原创 SpringBoot 2.0 | SpringBoot + MyBatis 配置多数据源

在传统的单体架构中,一个系统对应一个数据库,但在一个分布式系统中,比如微服务,每一个服务对应一个数据库,由于业务的需求,有时需要在一个服务中访问多个数据库的数据,我们需要配置多数据源,以下是SpringBoot 2.0.5 + MyBatis + .yml 格式配置多数据源的方法。数据源配置application.yml 文件的配置spring: datasource: arti...

2019-04-09 11:24:20 824

原创 Java 数据结构 | 线性表「顺序存储 + 链式存储」

一、顺序存储####1) 特点(1) 使用一组地址连续的存储单元依次存放线性表中各个数据元素。(2) 逻辑上相邻的数据元素,物理上也是相邻的,删除数据会引起大量数据移动。(3) 便于随机存取。(4) 不便于插入和删除操作。(5) 若要扩充存储空间,需要重新创建一个地址连续的更大的存储空间,并把所有数据复制到新的存储空间。####2) 实现package com.hly.dataSt...

2019-03-11 20:01:10 800

原创 计算机网络自顶向下方法(第六版) 课后题答案 | 第五章

复习题R1.公共汽车、火车、汽车R2.虽然每个链路都保证通过链路发送的IP数据报将在链路的另一端接收到,没有错误,但不能保证IP数据报将以正确的顺序到达最终目的地。有了IP,同一TCP连接中的数据报可以在网络中采取不同的路由,因此无法正常到达。TCP仍然需要以正确的顺序向应用程序的接收端提供字节流。此外,IP可能会由于路由循环或设备故障而丢失数据包。R3.帧:IP和TCP也有帧;链接访...

2018-12-30 17:53:29 9329 1

原创 计算机网络自顶向下方法(第六版) 课后题答案 | 第四章

复习题R1.网络层的分组名称是数据报。路由器是根据包的 IP 地址转发包;而链路层是根据包的 MAC 地址来转发包。R2.数据报网络中网络层两个最重要的功能是:转发,路由选择。虚电路网络层最重要的三个功能是:转发,路由选择,和呼叫建立R3.转发是当一个分组到达路由器的一条输入链路时,该路由器将该分组移动到适当的输出链路。路由选择是当分组从发送方流向接收方时,网络层必须决定这些分组所...

2018-12-30 17:20:28 10449

原创 计算机网络自顶向下方法(第六版) 课后题答案 | 第三章

复习题R1.a.将此协议称为简单传输协议(STP)。在发送方端,STP 从发送过程中接收不超过 1196 字节的数据块、目标主机地址和目标端口号。STP 向每个块添加一个 4 字节的报头,并将目标进程的端口号放在这个报头中。然后 STP 将目标主机地址和报文段提供给网络层。网络层将报文段传送到目标主机上的 STP。STP 然后检查段中的端口号,从段中提取数据,并将数据传递给端口号标识的进程。...

2018-12-30 16:43:13 15357

原创 计算机网络自顶向下方法(第六版) 课后题答案 | 第二章

复习题R1.非专用的因特网所在的应用层协议WebHTTP文件传输FTP远程登录Telente-mailSMTPP2PBitTorrentR2.网络体系结构是指如五层Internet架构。应用程序体系结构是由应用程序开发人员设计的,它规定了应用程序的广泛结构(例如客户机-服务器或P2P)。R3.发起请求的是客户端,接收请求的是服务...

2018-12-25 19:53:17 27931 2

原创 计算机网络自顶向下方法(第六版) 课后题答案 | 第一章

复习题R1.没什么不同,主机就是端系统,可互换使用;端系统包括PC 机,工作站,Web 服务器,邮件服务器,联网游戏机等。R2.外交礼仪通常被描述为一套国际礼仪规则。这些建立已久、历史悠久的规则使国家和人民更容易在一起生活和工作。R3.标准对于协议很重要,这样人们就可以创造相互连接的网络系统和产品。R4.1.电话拨号调制解调器:住宅2.电话线路DSL:住宅,小型公司3.电缆HF...

2018-12-24 16:09:39 34475 3

原创 SpringBoot 2.0 | SpringBoot 文件上传下载

环境与配置添加 maven 依赖 &lt;dependency&gt; &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt; &lt;artifactId&gt;spring-boot-starter-thymeleaf&lt;/artifactId&gt; &lt;/dependency&gt; &...

2018-12-04 21:05:09 1190

原创 JavaWeb 实现基础增删改查 CRUD

1.数据库表如下CREATE TABLE `employee` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(40) NOT NULL, `note` varchar(200) DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=10 DEF...

2018-11-29 22:19:35 8547 3

项目开发文档规范.zip

项目开发文档的规范,包含两份文件,一份是基本项目开发文档规范,上百个文件,精确到每一个阶段,每一个文件都包含了具体任务;另一份是java项目开发文档,比较专业和简洁。

2019-07-13

ASP.NET实现增删改查

快速入门ASP.NET,并实现一个简单的CRUD,环境基于VS 2017。

2019-06-16

成组链接法Java版

成组链接法 java 版本,对应文章:https://mp.csdn.net/postedit/80822999

2018-12-19

计算机网络自顶向下方法原书第六版课后练习题答案pdf+课后编程题答案

计算机网络自顶向下方法原书第六版课后练习题答案pdf+课后编程题答案。

2018-12-05

JavaWeb增删改查

JavaWeb 基础增删改查,一个 Servlet ,使用反射技术,实现多个表单事件处理。

2018-11-29

prop-types.js(15.6.1)

Props 验证使用 propTypes,它可以保证我们的应用组件被正确使用,React.PropTypes 提供很多验证器 (validator) 来验证传入数据是否有效。当向 props 传入无效数据时,JavaScript 控制台会抛出警告。

2018-09-06

react,babel,react-dom三个包整合

react,babel,react-dom三个包的整合,实现react环境的搭建

2018-09-05

PowerDesigner16.6破解

PowerDesigner16.6(x32,x64)破解文件pdflm16.dll和原文件pdflm16.dll,亲测,完美破解,注意版本是16.6的。

2018-07-20

成组链接法java模拟实现

操作系统文件管理成组链接法的java代码模拟实现,详细解析

2018-06-25

Android悬浮拖动无视父类组件按钮

Android悬浮拖动,无视父类组件的按钮,绝对比其他地方下载的更加精致。

2018-05-31

SSM框架精致注册登录

IDEA开发环境,maven搭建的SSM框架的精致漂亮的登录注册界面,若静态资源无法加载,请参考博主文章https://blog.csdn.net/sirius_hly/article/details/80417320

2018-05-31

访慕课网实战页面精致前端代码

访慕课网前端实战界面,相似度95%以上,还增添了动态图片效果,献给所有初学者,值得下载。创作不易,请支持。

2018-05-30

类似淘宝电商平台详细用例图

类似淘宝电商平台详细用例图,包括总模块,各类细分模块共10页ppt,需求获取详细分析

2018-05-09

空空如也

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

TA关注的人

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