- 博客(59)
- 收藏
- 关注
原创 设计模式之代理模式
代理模式代码示例:https://blog.youkuaiyun.com/weixin_39865508/article/details/141924680代理模式的左右,一定程度上不暴露被代课对象的内容,更安全,也减少系统的耦合性。
2024-12-24 21:25:12
485
原创 启动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
1320
原创 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
1323
原创 基于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
3176
原创 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
143
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
814
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
374
原创 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
131
原创 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
188
原创 利用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
237
原创 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
421
1
原创 docker联合文件系统和镜像加载原理
联合文件系统镜像加载原理自己做一个镜像:官方的tomcat的webapps下面没有文件,则需要copy一份文件
2021-03-28 16:16:28
217
原创 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
225
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
4140
原创 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
264
原创 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
324
原创 2021年java面试题
最近去了很对家面试,面试不会的下下来,方便自己以后查看switch支持的数据类型基本数据类型:byte, short, char, int包装数据类型:Byte, Short, Character, Integer枚举类型:Enum字符串类型:String(Jdk 7+ 开始支持)...
2021-03-13 18:06:36
108
原创 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
176
原创 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
852
原创 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
196
原创 mysql的锁机制
mysql的锁机制1、MySQL锁的基本介绍 **锁是计算机协调多个进程或线程并发访问某一资源的机制。**在数据库中,除传统的 计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一 个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。 相对其他数据库而言,MySQL的锁机制比较简单,其最 显著的特点是不同的存储引擎支持不同的锁机制。比如,MyI
2021-02-24 16:13:28
228
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
599
原创 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
118
原创 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
155
原创 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
155
原创 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
864
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
735
原创 ThreadPoolExecutor应用
ThreadPoolExecutor JDK能够提供的线程池, 大家可以往这个线程池里面扔东西,让它自己去运行,首先看戏如何定义一个线程池:这里面有7个 参数:public ThreadPoolExecutor(int corePoolSize, 核心线程数int maximumPoolSize, 最大线程数long keepAliveTime, 生存时间,线程多久没干活请归还操作系统TimeUnit unit,生存时间的单位BlockingQueue workQueue, 任务队列Thre
2021-01-22 14:43:15
176
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
95
原创 pmp备考分享-自己的一点感悟
首先,我是2020年12月5号pmp考试5A成绩通过,备考周期2个月这里讲下备考历程首先我是报了培训班的,培训费2500,报名费3900,pmp考试如果没有很多的学习时间和把握,建议报班,报班的好处:1.最新的资料,2.专业的老师,3.pmp的资质审核需要中英文的,给培训机构给帮忙报很方便4.一个备考环境,老师会把大家拉到PMP群里,大家互相交流,群里也有老师对问题进行解答,pmp有些问题自己怎么想都想不明白,专业的老师已解答,可能就听懂了5.有线下课最好,周末去线下听课,效率更高接下来说下
2021-01-19 23:23:26
444
原创 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
172
原创 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
158
原创 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
195
原创 测试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
134
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
144
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人