自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(60)
  • 资源 (7)
  • 论坛 (1)
  • 收藏
  • 关注

原创 K8S在centos-7.1~7.6上部署安装教程系列

环境说明主机名操作系统版本ipdocker版本K8S版本备注mastercentos-7.1~7.6192.168.56.11v19.03.12v1.20.4master主机node01centos-7.1~7.6192.168.56.12v19.03.12v1.20.4node01节点node02centos-7.1~7.6192.168.56.13v19.03.12v1.20.4node02节点备注:K8S版本详细信息参考 h

2021-02-24 17:42:41 126

原创 Docker使用详解系列

零、docker命令详解、宿主机和容器通信原理的问题;一、CentOS上安装Docker;二、Docker创建实例并安装MySQL

2020-05-12 08:56:18 350

原创 Netty学习笔记:三、NIO零拷贝

阿萨德

2021-07-01 00:29:07 41

原创 Netty学习笔记:二、NIO网络应用实例-群聊系统

实例要求:编写一个NIO群聊系统,实现服务器端和多个客户端之间的数据简单通讯(非阻塞); 实现多人群聊; 服务器端:可以监测用户上线、离线,并实现消息转发功能; 客户端:通过channel可以无阻塞发送消息给其他所有用户,同时接受其他用户发送的消息; 目的:进一步理解NIO非阻塞网络编程机制;代码演示:群聊系统服务端代码:package com.study.demo.groupchat;import java.io.IOException;import java.net.Ine

2021-06-30 00:59:50 44

原创 Netty学习笔记:一、NIO知识体系

1、BIO、NIO、AIO适用场景BIO方式适用于连接数目较小且固定的架构,这种方式对服务器资源要求比较高,并发局限于应用中,JDK1.4以前的唯一选择,但程序简单容易理解; NIO方式适用于连接数目多且连接比较短(轻操作)的架构,比如聊天服务器,弹幕系统,服务器之间的通讯等。编程比较复杂,JDK1.4开始支持; AIO方式适用于连接数目多且连接比较长(重操作)的架构,比如相册服务器,充分调用OS参与并发操作,编程比较复杂,JDK7开始支持;...

2021-05-09 13:58:04 58

转载 redis系列 二、链表原理

概述除了字符串外,链表作为一种常用的数据结构,提供了高效的节点重排能力以及顺序性的节点访问。redis 使用的C语言没有内置链表结构,本篇博客我就来整理下 redis 链表类型的实现。redis 数据类型redis 有以下五种常用的数据类型:String:字符串类型 Hash:哈希类型 List:链表类型 Set:集合类型 zSet:有序集合类型1、List 链表类型C语言默认是不支持链表的,redis 使用头文件 adlish.h 中的 ListNode 表示单个链表结构:

2021-04-22 19:49:57 28

转载 redis系列 一、字符串原理

概述redis 作为目前市面上应用最广泛的 key-value 非关系型数据库经常在项目中使用,它的高性能以及线程安全等优势可以在很多场景中大放异彩。从本篇开始,我将通过一个系列的博客系统的整理 redis 相关的知识。本篇先从它的基础类型开始,简单介绍下 redis 字符串类型原理redis 数据类型redis 有以下五种常用的数据类型:String:字符串类型Hash:哈希类型list:链表类型set:集合类型zSet:有序集合类型1、String 字符串类型redis

2021-04-15 13:26:56 23

原创 LeetCode 01:回溯思想 (给定一个由若干 0 和 1 组成的数组 A,我们最多可以将 K 个值从 0 变成 1 , 返回仅包含 1 的最长(连续)子数组的长度)

package leetcode;/** * @description: * * 给定一个由若干 0 和 1 组成的数组 A,我们最多可以将 K 个值从 0 变成 1 。 * * 返回仅包含 1 的最长(连续)子数组的长度 * 输入:A = [1,1,1,0,0,0,1,1,1,1,0], K = 2 * 输出:6 * 解释: * [1,1,1,0,0,1,1,1,1,1,1] * 粗体数字从 0 翻转到 1,最长的子数组长度为 6。 * @author: xch * @tim.

2021-04-14 12:32:13 734

原创 部署和使用Harbor镜像仓库

一、Harbor介绍Docker容器应用的开发和运行离不开可靠的镜像管理,虽然Docker官方也提供了公共的镜像仓库,但是从安全和效率等方面考虑,部署私有环境内的Registry也是非常必要的。Harbor是由VMware公司开源的企业级的Docker Registry管理项目,它包括权限管理(RBAC)、LDAP、日志审核、管理界面、自我注册、镜像复制和中文支持等功能。二、环境准备Harbor的所有服务组件都是在Docker中部署的,所以官方安装使用Docker-compose快速部署,所以需要安装

2021-03-02 18:22:00 119

原创 K8S安装部署 五、Dashboard安装

注意:本部分操作在master上执行1、下载yaml[root@master ~]# wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-beta8/aio/deploy/recommended.yaml此命令版本间存在差异,详情查看https://github.com/kubernetes/dashboard2、配置yaml2.1 修改镜像地址[root@master ~]# sed -i 's/kuberne

2021-02-24 17:32:18 77

原创 K8S安装部署 四、Node节点安装

1、安装 kubelet、kubeadm、kubectl按照 三、Master节点安装 - 2、安装 kubelet、kubeadm、kubectl的文档操作执行2、下载镜像按照 三、Master节点安装 - 3、下载镜像的文档操作执行3、加入集群**注意:以下3.1、3.2、3.3的操作是在 master上执行**3.1 查看令牌[root@master ~]# kubeadm token list如果 令牌未失效(TTL下面有时间)则可以不用生成新的令牌,直接使用即可;如果 令牌失

2021-02-24 17:24:25 228 1

原创 K8S安装部署 三、Master节点安装

**注意:master执行本部分所有操作****node节点执行(2、安装 kubelet、kubeadm、kubectl) 和 (3、下载镜像)操作**1、版本查看[root@master ~]# yum list kubelet --showduplicates | sort -r1.20.4是文章编辑时的最新版本!2、安装 kubelet、kubeadm、kubectl2.1 开始安装[root@master ~]# yum install -y kubelet-1.20.4 kub

2021-02-24 17:07:14 230 2

原创 K8S安装部署 二、K8S安装准备工作

**注意:master和node节点都执行本部分操作**### 1、配置主机名1.1 修改主机名[root@localhost /]# hostnamectl set-hostname master[root@localhost /]# more /etc/hostname退出重新登陆即可显示新设置的主机名master1.2 修改hosts文件[root@localhost /]# cat >> /etc/hosts << EOF192.168.56.11 m

2021-02-24 17:00:30 128

原创 K8S安装部署 一、Docker安装

注意:master和node节点都需要安装docker1、卸载旧版本$ sudo yum -y remove containerd.io.x86_64$ sudo yum -y remove docker-ce.x86_64$ sudo yum -y remove docker-ce-cli.x86_642、设置存储库$ sudo yum install -y yum-utils$ sudo yum-config-manager \ --add-repo \ https:/

2021-02-24 16:50:07 256

原创 五、Docker创建实例并安装RocketMQ

一、RocketMQ1、查询rocketMQ的镜像$ sudo docker search rocketmq2、拉取star最多的rocketmqinc/rocketmq镜像$ sudo docker pull rocketmqinc/rocketmq3、创建nameserv服务实例宿主机上创建挂载的目录$ sudo mkdir /mydata/rocketmq创建实例,并把相关目录挂载在宿主机上$ sudo docker run -d -...

2020-12-23 18:02:27 72

原创 四、Docker创建实例并安装Zookeeper-单机;

一、Zookeeper1、下载镜像文件$ sudo docker pull zookeeper2、创建docker实例并运行创建/mydata/zookeeper/zookeeper-alone文件夹$ sudo mkdir -p /mydata/zookeeper$ sudo mkdir -p /mydata/zookeeper/zookeeper-alonedocker的2181端口映射到宿主机的2181端口上 {-p 宿主机端口:docker端口 }...

2020-10-16 14:44:13 59

原创 生产者消费者从低级到高级

一、使用Lock来模拟生产消费关键方法:lock()、await()、signalAll()、unlock()import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;/* 题目:一个初始值为0的变量,两个线程对其交替操作,一个加一一个减一,来5轮 */public class P.

2020-06-02 23:42:58 141

原创 三、Docker创建实例并安装Redis

一、Redis1、下载镜像文件$ sudo docker pull redis2、创建docker实例并运行docker的3306端口映射到宿主机的3306端口上 {-p 宿主机端口:docker端口 }dcoker的实例名mysql {--name docker实例名}docker的mysql的文件夹挂载到宿主机的对应文件上 { -v 宿主机文件:docker文件夹}docker中的mysql --访问地址 {宿主机ip:3306} --密码 {root}...

2020-05-13 00:03:22 325

原创 二、Docker创建实例并安装MySQL

一、mysql1、下载镜像文件$ sudo docker pull mysql:5.72、创建docker实例并运行docker的3306端口映射到宿主机的3306端口上 {-p }docker的mysql的文件夹挂载到宿主机的对应文件上 { -v 宿主机文件:docker文件夹}docker中的mysql --访问地址 {宿主机ip:3306} --密码 {root}$ sudo docker run -p 3306:3306 --name mysql \...

2020-05-12 00:42:41 443

原创 一、CentOS上安装Docker

1、卸载旧版本$ sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-log...

2020-05-11 23:51:14 117

原创 《数据结构与算法图解》算法java代码实现

前言正在读《数据结构与算法图解》一书,被其简单明了的讲解折服,其中涉及到了很多有用的算法,为了加深印象以及理解,便跟着把其中的代码转换为我平时所使用的的语言java。每种算法的时间复杂度标识出来。第 1 章 数据结构为何重要第 2 章 算法为何重要1、二分查找时间复杂度 基于有序数组 /** * @author xch * @para...

2019-12-27 11:21:00 414

原创 vue从搭建到打包发布 | 第一篇:前言及环境准备

前言一直想开一个系列,关于自己身为一个后端java开发者,却从最开始的使用Angular4到现在已经完整使用vue开发了一个前端项目的亲身经历和一步一步习得的前端东西。这个系列以教程为主,包含步骤、图片、讲解、以及碎碎念。碎碎念可能会占到百分之10的分量,不喜勿喷。作为一个半路出家到前端的后端开发者,碎碎念是这个过程中的茫然回忆,以及承载着一些自己能够开心继续写下去的小欲望。(不能在文...

2019-12-19 11:10:45 157 1

原创 Git导图以及命令汇总

一、git使用详解图片使用https://blog.csdn.net/qq_34908167博主的,侵权的话请联系我,我会删掉的。1、使用步骤2、本地代码与服务器代码的关系3、git提交代码流程4、总体示意图二、Git常用命令1、git clone我们需要克隆远程的代码进行编辑,代码服务器比如在file:////10.243...

2019-11-23 14:12:13 195

原创 Java-Freemarker替换模板文件.ftl中的变量,生成Word文档

一、前言前有java-poi替换模板文件word文档中的变量,生成Word文档,后有Java-Freemarker替换模板文件.ftl中的变量,生成Word文档。Freemarker是如今最流行的文档处理组件,poi已经相对过时了。FreeMarker 是一款模板引擎: 即一种基于模板和要改变的数据,简单点就是替换模板中的变量, 并用来生成输出文本(HTML网页,电子邮件,配置文件,...

2019-10-28 19:47:59 3415 6

原创 网站莫名其妙的去请求一个flash.js

问题描述:这个问题是这样产生的,我们的一个项目,在一个客户那里,总会被莫名奇妙的请求两次,就是点一次按钮,在network中能看到两次请求,但这两次请求中间总会有掺杂一个请求http://10.2.201.2:89/cookie/flash.js。当时心想,这是什么鬼啊?项目源码中全局搜索,也没有一个关于flash.js的代码,简直其妙到爆炸!没有任何的头绪后,开始百度,看到了有一...

2019-04-23 13:13:22 6374 1

原创 JVM内存详解

下面有关JVM内存,说法错误的是?A:程序计数器是一个比较小的内存区域,用于指示当前线程所执行的字节码执行到了第几行,是线程隔离的。B:虚拟机栈描述的是Java方法执行的内存模型,用于存储局部变量,操作数栈,动态链接,方法出口等信息,是线程隔离的。C:原则上讲,所有的对象都在堆区上分配内存,是线程之间共享的。D:方法区用于存储JVM加载的类信息、常量、静态变量、以及编译器编译后的代...

2019-03-22 13:53:40 148

原创 程序猿健康问题-----伸懒腰,站起来,撒泡尿,洗洗手,倒杯水

看到这篇博客,请你:伸懒腰,站起来,撒泡尿,洗洗手,倒杯水。2018/08/25周六程序猿猝死视频:http://tieba.baidu.com/p/5857257985?qq-pf-to=pcqq.group程序猿是个工资高,危险系数高,脑力系数高的行业。以后无论任何情况下,看到这篇博客,我都会按照标题,活动一下自己。身体是革命的本钱啊!希望看到这篇博客的程序猿,且敲...

2018-08-30 11:22:09 204

转载 深入浅出数据库索引原理问题

前戏使用索引很简单,只要能写创建表的语句,就肯定能写创建索引的语句,要知道这个世界上是不存在不会创建表的服务器端程序员的。然而, 会使用索引是一回事, 而深入理解索引原理又能恰到好处使用索引又是另一回事,这完全是两个天差地别的境界(我自己也还没有达到这层境界)。很大一部份程序员对索引的了解仅限于到“加索引能使查询变快”这个概念为止。 为什么要给表加上主键? 为什么加索引后会使查...

2018-08-24 16:14:16 166

原创 HashMap的put方法源码解析_JDK8

package demo.JavaJdk8;import java.util.HashMap;import java.util.Map;/** * @author Xch */public class MapDemo{ public void putDemo(){ Map&lt;String,Integer&gt; mapDemo=new HashMap...

2018-08-20 18:08:01 512

原创 Django中manage.py执行命令日常收集

1、创建表结构python manage.py migrate2、让 Django 知道我们在我们的模型有一些变更python manage.py makemigrations TestModel  3、创建表结构python manage.py migrate TestModel   4、用来将所有STATICFILES_DIRS中所有文件夹中的文件,以及各app中sta...

2018-08-02 10:34:18 760

原创 linux命令日常收集录

1. 改变所属群组, chgrpchgrp [-R] 群组名称 文件或文件夹2. 改变档案拥有者, chownchown [-R] 账号名称 文件或文件夹3. 改变权限, chmodchmod [-R] xyz 文件或文件夹 -R : 进行递归(recursive)的持续变更, 亦即连同次目录下的所有档案都会变更. ...

2018-08-02 10:24:21 172

原创 IDEA2018.1版搭建maven+spring环境——读书之前的准备

一、创建maven新项目第一步: 第二步: 第三步: 第四步: 第五步:到此Maven项目已经创建完毕。 二、配置pom.xml文件这里给出完整的pom.xml文件内容:&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;project xmlns="http://mave...

2018-07-16 17:53:14 1160

原创 过滤器和拦截器的区别和执行顺序

一、两者的区别1、拦截器java里的拦截器是动态拦截Action调用的对象。它提供了一种机制可以使开发者可以定义在一个action执行的前后执行的代码,也可以在一个action执行前阻止其执行,同时也提供了一种可以提取action中可重用部分的方式。在AOP(Aspect-Oriented Programming)中拦截器用于在某个方法或字段被访问之前,进行拦截然后在之前或之后加入某些操作...

2018-07-16 14:51:07 7401 1

原创 文件名或扩展名太长,目录层次过多,导致删除文件失败的问题(windows删除node_modules遇到的问题)

假设文件 "npm" 删除不掉!第一步:在“文件npm”同级下新建空文件夹“test”:第二步:在当前文件下打开命令行:输入命令:robocopy test npm /purge( robocopy 新建文件名 删不掉文件名 /purge)执行 Enter!...

2018-06-15 12:38:31 6972 2

原创 从安装Xshell到启动Linux主机的tomcat服务

 Xshell是一个强大的安全终端模拟软件,它支持SSH1、SSH2,以及Microsoft Windows平台的TELNET协议。Xshell通过互联网到远程主机的安全连接以及它创新的设计和特色,能够帮助我们开发人员在复杂的架构环境中开发。话不多说!一、下载安装Xshell1.下载Xshell下载地址:(百度软件中心)http://rj.baidu.com/soft/de...

2018-04-19 18:43:48 3205

原创 angular4如何使用Bootstrap的datetimepicker组件

新的公司使用的是angular4,以前一直是javascript+miniui,突然转到angular4+typescript,简直90度转弯,一脸懵逼。经过一周的适应,感觉angular4这种前端,很强大(我也不知道哪里强大,但大家都这样说......)。(这种转变就像Java基础-------&gt;Spring框架)言归正传!angular4如何使用Bootstrap的dat...

2018-04-12 18:10:00 4606 9

原创 docker命令详解、宿主机和容器通信原理的问题

我的笔记本是window7系统,为了模拟服务器的环境,安装了虚拟机centOS7。前戏准备一些操作都需要root权限操作,从用户角色转换到root角色命令:sudo su 启动docker服务:service docker start (docker所有的操作,都是基于启动docker服务,不然会报:Cannot connect to the Docker da...

2018-03-07 17:31:27 14656

原创 Spring AOP(获取入参和返回值)及其原理:动态代理

此篇会先演示Spring AOP(获取入参和返回值),之后再演示AOP的原理:动态代理。 Spring AOP:AOP思想:AOP(Aspect Oriented Programming),即面向切面编程,可以说是OOP(Object Oriented Programming,面向对象编程)的补充和完善。OOP引入封装、继承、多态等概念来建立一种对象层次结构,用于模拟公共行为的一个...

2018-02-28 16:17:59 40239

原创 常见数据库的SQL分页查询汇集

Oracle分页查询:select a.rn,a.* from     (select school.*,rownum rn from school where rownum&lt;=100)awhere a.rn&gt;55 MySQL分页查询: select * from t_customer limit 1,100注意:LIMIT[位置偏移量,]行数...

2018-02-27 16:27:24 257

转载 类加载过程

类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Using)和卸载(Unloading)7个阶段。其中准备、验证、解析3个部分统称为连接(Linking)。如图所示。加载、验证、准备、初始化和卸载这5个阶...

2018-02-27 15:29:26 190

word文档模板-使用poi技术替换文档中的变量

给出Java-poi导出Word时,所需的Word模板。 注意:1,word模板中的表格单元格只能有唯一的变量。(如需多个变量,可以在word中隐藏表格来实现。) 2,word模板中变量前后不能有空格。

2017-10-31

jdk-8u231-linux-x64_tar_gz.zip

看到csdn上jdk的资源所需的积分或者C币都贼高,我没分啊!我要搞一个便宜的,实惠的,我会把分数降到最低。大家安心下载使用。

2019-12-10

java-POI相关jar包

Java-poi所需的jar包,poi导出Word文档、Execl文档,居家必备神器。

2017-10-31

jdk8_231-window-64位.zip

看到csdn上jdk的资源所需的积分或者C币都贼高,我没分啊!我要搞一个便宜的,实惠的,我会把分数降到最低。放心使用。

2019-12-10

python2017.3(Professional)

很好的python的开发工具,http://blog.csdn.net/qq_34908167/article/details/78852431是关于介绍新建python项目的博客。

2018-01-09

apache-james-3.0-beta3-app

很好的Java邮箱开发服务器。

2017-02-08

Python简明教程-PDF

Python简明教程的中文版,内容简明,是学习Python的很好的入门书籍。

2017-12-01

opencv连通分量标记的异常问题

发表于 2018-04-30 最后回复 2018-05-05

空空如也

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

TA关注的人 TA的粉丝

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