自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(79)
  • 问答 (1)
  • 收藏
  • 关注

原创 远程拷贝多个文件到多个服务器怎么快速处理

一.问题 场景:生产上线,数据备份 有时候我们需要将多个文件远程拷贝到多个服务器 方案: 1.scp命令,将单个文件拷贝到单个服务器方便 2.用ftp的工具,可以一次将多个文件选中拷贝到一台服务器,但是当面临多个文件多个服务器时,也是需要多次执行 那么有什么方法可以一次性就将多个文件拷贝到多个服务器呢.二.命令 sscp命令 命令的脚本我放在最后了,先看使用的效果 1.帮助文档 ...

2020-10-21 11:23:11 1019 1

原创 k8s错误之failed to run Kubelet: running with swap on is not supported, please disable swap! (七)

第一种配置忽略swap报错# vim /etc/sysconfig/kubelet KUBELET_EXTRA_ARGS="--fail-swap-on=false"第一种关闭交换分区

2020-10-09 15:48:42 3181

原创 k8s错误之error execution phase control-plane-prepare/download-certs(六)

控制平面认证的certs已过期,默认时间两个小时,需要重新生成上传在已存在的控制平面运行:kubeadm init phase upload-certs --upload-certs修改加入控制平面的kubeadm join语句kubeadm join 192.168.9.111:8443 --token vf8sku.klyq3gfwd4wl29ct \--discovery-token-ca-cert-hash sha256:3e19607f26fe2af4c518f985be186c8

2020-10-09 15:46:43 2435

原创 k8s错误之no configuration has been provided, try setting KUBERNETES_MASTER environment variable(五)

mkdir -p $HOME/.kubecp -i /etc/kubernetes/admin.conf $HOME/.kube/configchown $(id -u):$(id -g) $HOME/.kube/config/etc/kubernetes/admin.conf(主节点上的admin.conf文件)如果kubectl并不是在主节点上执行,cp -i这一步变为远程拷贝scp [email protected]:/etc/kubernetes/admin.conf..

2020-10-09 15:44:42 4698

原创 k8s错误之unknown container “/system.slice/docker.service“(四)

vim /etc/sysconfig/kubelet KUBELET_EXTRA_ARGS="--fail-swap-on=false"追加为:KUBELET_EXTRA_ARGS="--fail-swap-on=false --runtime-cgroups=/systemd/system.slice --kubelet-cgroups=/systemd/system.slice"

2020-10-09 15:41:30 1444

原创 k8s集群安装metrics-server(三)

1.获取压缩包wget https://github.com/kubernetes-sigs/metrics-server/archive/v0.3.6.tar.gz2.版本选择metrics-server0.1版本选择1.7+/0.2以上版本选择1.8+/3.修改metrics-server-deployment.yaml文件apiVersion: v1kind: ServiceAccountmetadata: name: metrics-server.

2020-10-09 15:37:46 262

原创 kubeadm高可用集群安装k8s1.8(二)

1.查看系统版本要求Ubuntu 16.04+ Debian 9+ CentOS 7 Red Hat Enterprise Linux (RHEL) 7 Fedora 25+ HypriotOS v1.0.1+ Container Linux (测试 1800.6.0 版本)要求:cpu>2核,内存>2G生产上禁用交换分区如果iptables使用了nftables,应切回旧版2.检查端口控制平面 协议 方向

2020-10-09 15:30:56 419 1

原创 kubeadm安装k8s集群(一)

1.查看系统版本要求Ubuntu 16.04+ Debian 9+ CentOS 7 Red Hat Enterprise Linux (RHEL) 7 Fedora 25+ HypriotOS v1.0.1+ Container Linux (测试 1800.6.0 版本)要求:cpu>2核,内存>2G生产上禁用交换分区(测试环境内存不够,可以选择不关闭交换分区)如果iptables使用了nftables,应切回旧版2.检查端口控制平面 ...

2020-10-09 15:15:45 263

原创 Zookeeper源码分析(一)

一、选中Zookeeper最近准备阅读一两个框架的源码,刚好准备学习关于分布式的知识,就选中了Zookeeper。关于选择这个框架有几个原因。1.可以实现集群。2.服务注册与发现一直是分布式必须要研究与使用的。3.可以实现分布式锁4.等等,各种原因,让我选择了它。没办法,只能从官网开始慢慢探索源码之路。二、学习方式为了更好的开展后面的路子,准备...

2019-11-13 13:24:52 356

原创 Java最全学习线路图

一、整体线路1.在学习一门课程之前,最好掌握整体路径,不要盲目踏入,循序渐进的学习方式会让知识更容易嚼烂。2.这里列出了学习java的整体路径,每一步都是凭借自己的经验,走过的路总结出来的。也许有人会认为这个路径不对,每一个人都有每一个的学习方式,没有对不对,只有适不适合自己,我这里仅是凭借自己的经验来总结让想要学习这么课程的同学少走弯路。3.java基础位于最前,这...

2019-11-10 17:44:21 308

原创 JDK1.8新特性(详解)

一、新特性  1、default关键字  在java里面,我们通常都是认为接口里面是只能有抽象方法,不能有任何方法的实现的,那么在jdk1.8里面打破了这个规定,引入了新的关键字default,通过使用default修饰方法,可以让我们在接口里面定义具体的方法实现,如下。public interface NewCharacter { public void...

2019-11-09 14:07:45 202

原创 导入Spring源码找不到包spring-cglib-repack和spring-objenesis-repack

一、问题1.最近准备阅读下Spring源码,学习下它优秀的架构和编程思想。但是出师不利。Spring源码git仓库:https://github.com/spring-projects/spring-framework使用的包管理工具是gradle。我一直用的是maven,对这个工具并不熟悉。所以先在本地安装了gradle客服端5.6.42.克隆代码到本地:git clo...

2019-11-09 13:58:54 534

原创 IDEA常用快捷键大全(完整及设置快捷键)

一、常用快捷键大全 常用快捷键 介绍 Ctrl+Shift+Alt+N 知道类名全局查找类 Ctrl+Shift+R 全局搜索 Ctrl+Alt+O 优化导入的类和包 (删除没有用到的包) Ctrl+/ 或 Ctrl+Shift+/ 注释(// 或者/*...*/ ) ALT+回车 ...

2019-11-01 15:44:29 504

原创 java实现邮箱发送邮件功能

一、介绍邮箱验证是一个很常见的功能了,基本上每个网站都会用的到,java也有专门的jar来处理邮件发送等服务,这里只是简单的实现一下发送邮件的功能,具体jar包就不再提供了,我会把所有需要引用的包都贴出来,方便大家copy。直奔主题:二、实现第一步:封装发件人账号密码import javax.mail.Authenticator;import javax.mail.Pas...

2019-11-01 15:25:28 669

原创 工厂方法模式(详解)

一、工厂方法1.特点定义一个创建产品对象的工厂接口,将产品对象的实际创建工作推迟到具体子工厂类当中。这满足创建型模式中所要求的“创建与使用相分离”的特点。2.简单工厂简单工厂不在23中设计模式中,因为它违背了开闭原则。在新增产品的时候,需要重新修改Factory类的代码。而工厂方法是对简单工厂的一种改进,在新增产品的时候,不需要修改原来的代码。二、实现package...

2019-10-29 09:38:52 151

原创 原型模式(详解)

一、概念用一个已经创建的实例作为原型,通过复制该原型对象来创建一个和原型相同或相似的新对象。在这里,原型实例指定了要创建的对象的种类。用这种方式创建对象非常高效,根本无须知道对象创建的细节。二、深拷贝和浅拷贝浅拷贝:只是新建了一个句柄,句柄指向的内存地址不变深拷贝:新建句柄,指向的内存地址发生了变化三、实现1.浅拷贝package com.moshi;...

2019-10-28 15:24:19 138

原创 ConcurrentHashMap源码解析详解(JDK1.8面试必备)

一、概述1.很多人看源代码只是单纯的看,也许并不知道为什么要看源代码。jdk源代码是经过很多大牛无数次的版本升级、更新最后沉淀下来的精华,如果只是单纯的为了熟悉这个api。完全不需要看源代码,只需要记住api文档就行。看源代码有两个好处。 a.能够学习大牛的设计思想,它为什么是这样设计的,而不是那样设计的,这个也是最重要的。 b.当然在看我一遍源代码后,对里...

2019-10-23 10:02:57 776

原创 HashMap源码解析详解(jdk1.8)

一、概述1.jdk1.8之前,HashMap底层采用的数据结构为数组+链表。1.8之后使用了数组+链表+红黑树。2.jdk1.8之前,数组中的一个元素称为一个桶。对传入的(key,value)中的key值进行hash运算。比如在下面的图中,我们将一个(key,value)对key进行运算后得到了最后值为下标3,会将这个元素保存在下标3的Entry1中。当又一个(key,value)传入进来...

2019-10-18 14:18:09 192

原创 java并发编程笔记(一)

一、介绍由初始的计算机由始至终的执行一个程序到后面的,操作系统同时运行多个进程。促进多程序同时执行的发展的因素:1.资源利用:比如在执行某些输入输出时,程序需要等待,但是在等待的过程运行其他进程,将加大对系统资源的利用2.公平:多个程序拥有相同的优先级,将同时执行,这比执行完一个程序在继续下一个程序更可取3.方便:写一些程序,让他们各自执行并进行相互之间的协调,这比让一个程序执...

2019-10-17 09:57:17 150

原创 jvm常用命名及参数总结

一、jvm工具 1.jps:虚拟机进程状况工具(JVM Process Status Tool) a).命令格式: jps [options] [hostid] b).-l:输出主类全名或jar路径 -q:只输出LVMID -m: 输出jvm启动时传递给main()的参数 -...

2019-09-30 14:51:41 290

原创 建造者模式(Builder模式)

一、特点1.它是将一个复杂的对象分解为多个简单的对象,然后一步一步构建而成。2.各个具体的建造者相互独立,有利于系统的扩展。3.客户端不必知道产品内部组成的细节,便于控制细节风险。4.建造者模式注重零部件的组装过程。二、实现package com.test;public class Test { public static void main(String[]...

2019-09-29 14:19:42 267

原创 RPC框架之RMI(一)

一.rmi远程方法调用,是java特有的一种RPC实现。二.特性1.支持面向对象的多态性,优势之一2.java独有,不支持其他语言3.使用java原生序列化4.BIO(异步阻塞IO)通信由于使用原生序列化和异步阻塞io通信,导致该类型性能较差,不适合高并发场景。三、实现1.服务端。HelloService接口,继承Remotepackage com.r...

2019-09-26 16:37:09 147

原创 zookeeper下载入门

一、下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.5.5/下载到本地后:tar -czvf 压缩文件,解压。二、使用1.打开conf/zoo_sample.cfg文件。更改文件名:2.文件内容查看文件内容可以查看到文件内容为:如果内容没有,请修改为该内容。...

2019-09-24 10:11:53 119

原创 swt开发环境(一)

一、eclipse插件1.eclipse插件核心思想:一切均 为插件。这些功能插件都与Eclipse无缝的结合,包括Java开发工具(Java Development Tools,JDT)、插件开发环境(Plug-in Development Environment,PDE),尽管Eclipse是使用Java语言开发的,但它的用途并不限于Java语言,还 支持诸如C/...

2019-09-23 21:22:51 346

原创 jvm中GC日志可视化工具分析(十一)

一、gc easy1.网址:https://gceasy.io2.直接上传GC日志文件里面有列出了各种信息,还有图形化的信息。吞吐量:99.997%响应时间:平均停顿时间11.9ms;最大停顿时间:40.0ms二、GCViewer1.github地址:https://github.com/chewiebug/GCViewer2.将项目...

2019-09-12 22:16:27 870

原创 jvm中GC日志格式详解(十)

一、日志相关参数1.-XX:+PrintGCDetails2.-XX:+PrintGCTimeStamps 打印时间戳3.-XX:+PrintGCDateStamps4.-Xloggc:/tmp/gc.log 将GC日志输出到指定文件5.-XX:PrintHeapAtGC 发生GC时,打印堆的使用情况6.-XX:PrintTenuringDistribution 发生GC...

2019-09-12 21:20:38 1736

原创 shell编程实战(二)

一、该shell主要目的是获取硬件信息1.#!/bin/bash#清屏clearverbose=0help=0if [ "$1" = "-v" ]; then verbose=1fi#打印帮助信息if [ "$1" = "-h" ]; then echo "hinv {-v|-h}" echo "-v=verbose" echo "-h=help" ex...

2019-09-12 17:04:00 120

原创 shell编程实战(一)

一、读取/etc/hosts文件中所以的ip.并使用ping指令循环执行二、代码#!/bin/bashcat /etc/hosts|grep -v "^#" |while read LINEdo ADDR=`awk '{print $1}'` for MACHINE in $ADDR do ping -c 1 $MACHINE d...

2019-09-12 10:49:19 191

原创 jinfo命令报错Error attaching to process

一、报错信息1.在使用jdk自带命令的时候,如jinfo ,jmap等命令,报错信息如下Attaching to process ID 8088, please wait...Error attaching to process: sun.jvm.hotspot.debugger.DebuggerException: Can't attach to the process: ptrac...

2019-09-11 17:33:27 3477

原创 LInux用户管理(八)

一、用户1.Linux下分为3类用户:超级用户,系统用户和普通用户,2.超级用户为root,拥有一切权限3.系统用户是系统正常工作所必需的内建的用户,如:bin,daemon,adm,lp等用户4.普通用户为了让使用者能使用linux资源二、账号系统文件1.etc/passwd:每一个注册用户在该文件有对应的一行记录2.每一行由七个字段的数据组成,中间用:隔开,如...

2019-09-11 15:38:00 249

原创 如何获取类的jvm字节码

一、为什么要获取jvm字节码1.一些代码的执行在源码层面是看不出来的,因为jvm执行的是字节码,只有通过字节码才能清除的知道代码的执行。二、javap1.javap是jdk自带的一款工具,可以通过该命令获取字节码三、实战1.java源代码package com.jvm;public class Test2 { public static void main(...

2019-09-10 22:31:56 647

原创 jvm垃圾收集器(九)

一、并行垃圾收集器1.Parallel Collector-XX:+UseParallelGC 手动开启并行垃圾收集,Server模式默认开启-XX:ParallelGCThreads=<N> 开启多少个线程并行收集垃圾CPU>8 ,则N=5/8;(CPU为8,开启5个)CPU<8,则N=CPU;2.Parallel Collector Er...

2019-09-07 18:54:01 128

原创 jvm垃圾收集器(八)

一、垃圾收集器1.串行收集器Serail: Serail、Serail Old单个线程执行完垃圾收集,再用单个线程去执行应用程序。如嵌入式2.并行收集器Parallel:Parallel Scavenge、Parallel Old 吞吐量优先指多个线程并发执行垃圾收集,在垃圾收集期间,暂停应用程序执行,适用于交互性弱的场景,如科学计算,后台处理3.并发收集器Co...

2019-09-07 14:38:18 101

原创 jvm常见垃圾回收算法(七)

一、怎么判断一个对象为垃圾1.在我们的jvm中有一个root根节点。root根节点会引用对象,如果一个对象做可达性分析能够到root根节点,则表示该对象不是垃圾(1,2,3,4),但是如5.6两个对象虽然两者间有相互引用,但是到root根节点不可达,则表示为垃圾,将会被垃圾收集器回收。2.哪些是root根节点。类加载器、Thread、虚拟机栈的本地变量表、static成...

2019-09-07 13:24:26 130

原创 Linux常用命令(其他命令)七

一、命令clear dmesg uname date cal help man init shutdown halt reboot poweroff alias unalias history su who whoami w last rpm 二、...

2019-09-05 17:11:29 110

原创 jvm内存结构(六)

一、jvm内存结构图1.左边为堆区,右边为非堆区。2.堆区:主要分为young区和old区。用来存放对象young区分为survivor(S0,S1)区和eden区。一个对象生产后,首先会出现在Eden区,经过一次minorGC之后对象会进入到S0区,然后S0将对象转移到S1区,当经过一定次数的minorGC之后,对象仍然存活着,将会从S1区进入到Old区。当Old区满之后将进...

2019-09-03 21:29:29 133

原创 Linux常用命令(网络命令)六

一、命令hostname ping host ifconfig traceroute telnet ftp wall write mesg mail finger netstat 二、使用1.hostname描述:显示或设置系统的主机名用法:hostname [主机名]案例:2.pi...

2019-09-03 15:21:00 148 1

原创 Linux常用命令(作业控制)四

一、命令at atq atrm crontab 二、使用1.at描述:将要执行的命令安排成队列,等到执行用法:at 时间案例:2.atq描述:查看通过at命令安排的任务用法: atq案例:3.atrm描述:删除通过at创建的任务用法:atrm 编号案例:编号可以通过atq命令查看4....

2019-09-03 11:08:59 389

原创 Linux常用命令(文件压缩与备份)五

一、命令compress uncompress gzip zip tar 二、使用1.compress描述:压缩文件用法:compress [参数] 文件名参数:-v 显示文件被压缩的压缩比压缩之后,源文件会被替换成.Z结尾的文件案例:2.uncompress描述:文件解压命令用法:uncompress [参数] 文...

2019-09-03 10:38:05 181

原创 Linux常用命令(进程管理)三

一、命令ps kill nice renice top bg jobs fg nohup 二、使用1.ps描述:查看系统的进程用法:ps [参数]参数:a :当前控制终端的进程(包括其他用户)u:显示进程的用户名和启动时间-w:宽行输出,不截取输出中的命令行-l:按长格式显示输出x:显示没有控制终端的...

2019-09-02 16:25:36 156

空空如也

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

TA关注的人

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