自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 收藏
  • 关注

原创 启动rockerMQ报错 There is insufficient memory for the Java Runtime Environment to continue.

[root@fc6cb9eda604 bin]# ./mqbrokerJava HotSpot™ 64-Bit Server VM warning: INFO: os::commit_memory(0x00000005c0000000, 8589934592, 0) failed; error=‘Cannot allocate memory’ (errno=12)There is insufficient memory for the Java Runtime Environment to conti

2021-04-18 13:49:44 1267

原创 linux查看内存占用情况

注意命令:top ,free,ps ux ,kill -9 ,top -H -p + 进程IDtoptoppid 进程iduser 进程的使用者%cpu 进程占用cpu的百分比%eme 内存占用的物理内存百分百time+ 进程启动后用的总cpu时间command 启动进程所用到的命令名称freeps ux解决cpu占用高问题利用上述命令去查找 哪个cpu占用高的进程id然后通过命令:top -H -p 进程id然后可以通过kill -9 进程id 来杀死进程

2021-04-04 13:16:22 1270

原创 基于NFS实现集群

准备环境:三台服务器192.168.209.137 master192.168.209.138 node01192.168.209.139 node02master节点下载nfc组件[root@master ~]# yum install -y nfs-utils rpcbind配置共享文件夹usr/local下面创建文件夹/data/www-data[root@master local]# mkdir data[root@master local]# cd data[

2021-03-31 23:15:08 3097

原创 docker 容器数据卷技术

启动cento os容器 挂载数据卷[root@192 ~]# docker run -it -v /home/test:/home centos /bin/bash-it 以交互模式运行-v 挂载数据卷 将当前系统下的home/test 目录挂载到即将启动的centos 容器里面的/home 目录进入到centos容器,并在/home目录下添加文件和文件夹退出且关闭容器后用exit 命令退出发现在容器内添加的文件已经全部同步到linux系统里,如此实现了一个数据的持久化,

2021-03-31 09:41:32 122 1

原创 docker commit镜像

进入容器[root@node02 ~]# docker exec -it 7580bee5378a /bin/bash在docker官方下载的镜像文件里面,webapp下面是空的5d65:/usr/local/tomcat/# cp -r webapps.dist/* webapps ## 递归copy文件退出容器exit提交commit 成为新的镜像[root@node02 ~]# docker commit -a=“yf” -m=“add webapps app” 7580b

2021-03-30 22:38:57 785 1

原创 k8s-deployment脚本部署tomcat集群

创建一个mkdir /usr/k8s/tomcat-deplay在tomcat-deplay 文件夹下窗口tomcat-deplay.yml文件,内容如下:apiVersion: extensions/v1beta1kind: Deploymentmetadata: name: tomcat-deployspec: replicas: 2 template: metadata: labels: app: tomcat-cluster s

2021-03-29 23:21:58 332

原创 Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

我在重启docker 的时候报这个错误Mar 28 23:12:53 node01 systemd[1]: docker.service: main process exited, code=exited, status=1/FAILUREMar 28 23:12:53 node01 systemd[1]: Failed to start Docker Application Container Engine.Mar 28 23:12:53 node01 systemd[1]: Unit docker

2021-03-29 08:10:57 104

原创 Master开启仪表盘 web UI dashboard

配置阿里镜像加速器执行开启仪表盘命令kubectl apply -f kubernetes-dashboard.yamlkubectl apply -f admin-role.yamlkubectl apply -f kubernetes-dashboard-admin.rbac.yamlkubectl -n kube-system get svc说明当前对外暴露的端口是32000则可以通过浏览器输入当前master的ip 和32000端口号访问http://192.168.163

2021-03-29 08:05:19 161

原创 kubeadm/kubelet/kubectl的区别 及k8s重启命令

k8s重启命令

2021-03-28 20:15:23 2460

原创 利用kubeam构建集群

master 主服务器配置kubeadm init --kubernetes-version=v1.14.1 --pod-network-cidr=10.244.0.0/16kubernetes-version=v1.14.1 ## 指定操作的k8s的版本号–pod-network-cidr=10.244.0.0/16 ## 指定pod 的ip地址的边界初始化错误运行命令:systemctl enable kubelet.service 执行下去再执行初始化命令又报错了这个一

2021-03-28 20:12:57 211

原创 k8s(kubernetes)安装步骤 版本V1.14.1

环境准备虚拟出3台虚拟机1台master2台node节点 node01 和node02设置时区,三台都执行timedatectl set-timezone Asia/Shanghai设置主机名master 192.168.209.137node01 192.168.209.138node02 192.168.209.139分别设置自己的主机名[root@192 ~]# hostnamectl set-hostname master配置hosts信息[root

2021-03-28 18:44:12 377 1

原创 docker联合文件系统和镜像加载原理

联合文件系统镜像加载原理自己做一个镜像:官方的tomcat的webapps下面没有文件,则需要copy一份文件

2021-03-28 16:16:28 187

原创 Docker 安装nginx 详细步骤

查看docker仓库是否有nginx通过docker命令搜索[root@192 ~]# docker search nginx方式2,通过官网去查看官网地址:https://hub.docker.com/docker 当前支持的nginx版本下载nginx镜像不指定版本,默认下载最新版[root@192 ~]# docker pull nginx下载完成,看下下docker的所有镜像[root@192 ~]# docker images运行nginx容器[roo

2021-03-28 11:59:51 192 1

原创 docker 20安装教程及常见命令详解

本文笔记学习来自B站狂神说视频链接:https://www.bilibili.com/video/BV1og4y1q7M4?p=14docker安装先卸载系统之前的老版本dockersudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker

2021-03-28 11:06:49 3770

原创 2021年3月java开发面试题汇总

最近去了很对家面试,面试不会的记录下来,方便自己以后查看?面试时间(2021.3.10-2021.3.30)java基础和linux基础switch支持的数据类型基本数据类型:byte, short, char, int包装数据类型:Byte, Short, Character, Integer枚举类型:Enum字符串类型:String(Jdk 7+ 开始支持)为什么重写了equal要重写hashcodehashmap和hashtable的区别常见的集合类有哪些?说下区别?list—&g

2021-03-20 14:35:36 235

原创 Lock接口获取锁的方法lock,tryLock,lockInterruptibly

lockpackage com.yf.reentrantLock;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;public class DemoLock { public static void main(String[] args) { int proLen=1; //一个生产者线程 int conLen=1; //一个

2021-03-16 13:09:06 296

原创 2021年java面试题

最近去了很对家面试,面试不会的下下来,方便自己以后查看switch支持的数据类型基本数据类型:byte, short, char, int包装数据类型:Byte, Short, Character, Integer枚举类型:Enum字符串类型:String(Jdk 7+ 开始支持)...

2021-03-13 18:06:36 84

原创 java注解的使用和原理,自定义注解

jdk自带的三个注解/*jdk自带注解*/public class JDKAnno implements Runnable { @Override //默认注解 public void run() { } @Deprecated //方法已弃用,表示这个方法已过时,不建议用 public static void f1() { } //关闭编译器警告信息 @SuppressWarnings("unchecked")

2021-03-13 17:41:15 150

原创 springcloud-Hoxton 学习教程(可参考jar包依赖版本)

创建一个父项目,引入maven依赖一开始引入的时候,依赖冲突很多,心态爆炸,下面是可以用的依赖版本号:注意:dependencyManagement标签,只是做了版本归一,后面的子项目在引入jar包的时候如果父pom有规定,可以不写版本号<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.o

2021-03-02 17:37:44 789

原创 mysql调优1(profile,数据类型优化,索引优化,执行计划)

目录性能监控:使用profile 来查询运行性能schema和数据类型优化:1、数据类型的优化2、合理使用范式和反范式3、主键的选择4,字符集的选择5、存储引擎的选择6、适当的数据冗余——是要join回降低查询速度7、适当拆分-表中有的字段非常大,且不常用,可以拆分出去,执行计划通过索引进行优化1,索引基本知识2、mysql为啥采用b+数结构?3、myISAM和InnorDB都是b+树,但是有区别:性能监控:使用profile 来查询运行性能.

2021-02-26 12:21:36 166

原创 mysql的锁机制

mysql的锁机制1、MySQL锁的基本介绍​ **锁是计算机协调多个进程或线程并发访问某一资源的机制。**在数据库中,除传统的 计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一 个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。​ 相对其他数据库而言,MySQL的锁机制比较简单,其最 显著的特点是不同的存储引擎支持不同的锁机制。比如,MyI

2021-02-24 16:13:28 199 1

原创 MYSQL5.7详细安装步骤:保姆级教程

以下为MySQ安装步骤,安装的过程中有很多坑,下文一一写了,希望对你有帮助,啦啦啦yum install wget -y 没有装wget安装下,wget一个下载工具mv CentOS-Base.repo CentOS-Base.repo.backup 更改下文件名称,(这步是为了后面更改yum源,下载的yum源 命名为CentOS-Base.repo)更换yum源:wget -O /etc/yum.repos.d/CentOS-Base.repo http://...

2021-02-24 13:36:26 552

原创 redis基础学习-管道,发布订阅,做缓存,事务,RDB

目录Redis 管道的使用redis发布订阅技术redis作为缓存使用redis事务redis的持久化对象-RDBRedis 管道的使用2021年02月18日23:26如果出现-bash: nc: command not found 需要先按照ncyum install -y ncnc localhost 6379echo -e "set k2 99 \n incr k2 \n get k2" | nc localhost 6379...

2021-02-21 11:33:17 101

原创 redis中value类型-sorted_set

查看命令帮助多数命令以z开头,我因为s开头被占用了Sorted_set 已经拍好序的不重复的集合,包括:元素,分支,排名添加元素和获取元素zadd k1 8 apple 2 banana 3 orange 添加元素拿apple举例:apple 是元素 8是当前apple元素的分值,插入之后会根据分值排序,打印结果来看,apple排在第三位,则排名是2zrange k1 0 -1 withscores 这里面的0和-1指的是排名(从开始到结束...

2021-02-21 11:28:23 134

原创 mysql基础语法整理

数据库语法汇总(MYSQL) 序号 查询内容 示例 备注 1 两表联查全查询(内连接) SELECT * from clothes_tab cl,color_tab co WHERE cl.clo_color=co.color_id 只有左表,右表可以对应上才能显示,无法保证任何一张表数据的完整性 2 两表联查全查询(外左连接) SELECT * from clothes_tab cl LEFT JOIN color_tab co on cl.c.

2021-02-06 12:27:42 133

原创 redis6安装教程

安装wget(下载文件的工具)https://github.com/redis/redis/archive/6.2-rc2.tar.gz切换到opt目录,创建soft文件夹下载文件到soft文件解压文件执行:make 命令(make相当于一个编译工具)如果每天c语言编译器,可以装gcc安装完成,切换到src目录下,看到redis-server 里,也说明已经安装成功了可以直接启动它进入文本模式查找:/...

2021-02-06 12:17:15 839 1

原创 Redis 中value类型 list,hash ,set

目录Redis 中value类型-listRedis 中value类型-hashRedis 中value类型-set Redis 中value类型-list List主要知识点:栈(同向命令), 队列(反向命令), 数组, 阻塞队列Lpush 从左边开始添加进list队列里面,那么插入的顺序是a b c ,.....

2021-02-06 12:15:43 704

原创 redis -Setbit bitpos bitop 应用

2021-02-06 11:59:23 175

原创 redis学习笔记-二进制安全问题

2021-02-06 11:54:55 167

原创 redis学习笔记-string

内容概要:string 学习只能新增和只能修改限制参数nx xxobject 命令

2021-02-06 11:52:49 92

原创 ThreadPoolExecutor应用

ThreadPoolExecutor JDK能够提供的线程池, 大家可以往这个线程池里面扔东西,让它自己去运行,首先看戏如何定义一个线程池:这里面有7个 参数:public ThreadPoolExecutor(int corePoolSize, 核心线程数int maximumPoolSize, 最大线程数long keepAliveTime, 生存时间,线程多久没干活请归还操作系统TimeUnit unit,生存时间的单位BlockingQueue workQueue, 任务队列Thre

2021-01-22 14:43:15 156 1

原创 ThreadLocal 详解

两个线程共同访问一个对象name的值先被t1线程改成"zhangsan",又被t2线程改成"lisi",所以最后打印出来是"lisi";定义一个Person类public class Person { String name;}定义两个线程访问这个同一个对象public class Demo01 { volatile static Person person=new Person(); public static void main(String[] args)

2021-01-20 13:09:54 75

原创 pmp备考分享-自己的一点感悟

首先,我是2020年12月5号pmp考试5A成绩通过,备考周期2个月这里讲下备考历程首先我是报了培训班的,培训费2500,报名费3900,pmp考试如果没有很多的学习时间和把握,建议报班,报班的好处:1.最新的资料,2.专业的老师,3.pmp的资质审核需要中英文的,给培训机构给帮忙报很方便4.一个备考环境,老师会把大家拉到PMP群里,大家互相交流,群里也有老师对问题进行解答,pmp有些问题自己怎么想都想不明白,专业的老师已解答,可能就听懂了5.有线下课最好,周末去线下听课,效率更高接下来说下

2021-01-19 23:23:26 407

原创 LockSupport 详细应用

locksupport是一个阻塞线程的锁LockSupport.park方法:park方法,使当前线程阻塞住代码运行结果:当i=5的时候,线程阻塞,程序不往下运行public class LockSupport01 { public static void main(String[] args) { Thread t=new Thread(()->{ for (int i = 0; i <10 ; i++) {

2021-01-18 11:58:13 148

原创 ReentrantLock应用

package djs.reentrantlock;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;public class ReentrantLock01 { //ReentrantLock是可重入锁,可冲入锁,某个线程已经获得这把锁,可以再次获得这把锁而不会出现死锁 // ReentrantLock和synchronized 的区别? //1. R

2021-01-16 11:39:27 127

原创 cas无锁优化,自旋锁 ,Atomic类

在我的博客测试volatile不具有原子性,加volatile还用加sysnchronized吗?加sysnchronized还用加volatile吗中讲到加volatile还加sysnchronized好麻烦,能不能有别的办法呢?有的,我们可以通过cas操作来实现线程安全import java.util.ArrayList;import java.util.List;import java.util.concurrent.atomic.AtomicInteger;/** * cas无锁

2021-01-12 11:47:59 178

原创 测试volatile不具有原子性,加volatile还用加sysnchronized吗?加sysnchronized还用加volatile吗?

/** * 测试volatile不具有原子性 */public class T { volatile int count=0; //属性上加volatile 保证可见性 public void sumCount(){ for (int i = 0; i <1000 ; i++) { count++; //count++操作在底层是好几步来实现,它本身不是一个原子性的操作 } } public st

2021-01-12 11:10:53 118 2

原创 线程volatile使用

测试定义一个类,启一个线程来跑这个类,在主线程main方法里面,在执行1毫秒以后,把flag设成false,在flag不加volatile的情况下,程序在1毫秒之后未停止,说明main线程更改的flag并没有及时的同步到新线程里面,加volatile则在1毫秒之后停止public class HelloVolatile { volatile boolean flag=true; //不加volatitle,会发现程序在过1毫秒之后,线程还在继续执行,说明并没有把flag及时的变成fal

2021-01-11 23:21:10 122

原创 创建线程的方式

实现runable接口 public static void creatThead1(){ //线程表达方式1 实现runnable接口 Runnable runnable=()->{ System.out.println("线程跑起来了"); }; Thread thread=new Thread(runnable); thread.start(); //注意这里线程不要写成run方法,这样就

2021-01-11 12:21:18 61

原创 线程thread中join的用法详解

在线程中调用其他线程的join方法1.首先创建一个线程,在主线程中main中运行public class Thread01 extends Thread { @Override public void run() { try { for (int i = 0; i <100 ; i++) { Thread.sleep(50); //sleep 线程睡一会,再到既定时间醒来加入到就绪状态

2021-01-11 12:19:22 457

空空如也

空空如也

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

TA关注的人

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