自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Jak的博客

成长之路

  • 博客(27)
  • 资源 (5)
  • 收藏
  • 关注

原创 虚拟机克隆

1.https://blog.csdn.net/hll19950830/article/details/79761251?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.control

2020-12-30 13:31:34 345

原创 CentOS7.6安装

1.2.3.4.5.6.7.8.9.10.11.12.13.14.Ctrl+Alt退出虚拟机箭头15.16.17.18.

2020-12-30 10:44:39 1016 1

原创 K8S入门

二、搭建K8s集群2.1平台规划和部署方式介绍2.1.1 平台规划2.1.2服务器硬件配置2.1.3 搭建集群方式2.2 准备工作使用kubeamd方式搭建k8s集群3.所有节点安装Docker/kubeadm/kubelet三、kubernetes集群搭建(二进制方式)...

2020-12-26 14:23:07 186

原创 阿里云服务器购买

阿里云首页可以使用各种方式登录,选择适合自己的到此服务器购买完毕,1主,3从教程

2020-12-23 14:12:49 183

原创 Docker进阶篇

一、基础回顾Docker基础二、DockerCompose介绍2.1 简介DockerDockerFile build run 这些命令都要手动操作,单个容器还好对于很多微服务,100个微服务?麻烦Docker Compose来轻松高效的管理容器,定义运行多个容器。2.1.1 官方介绍https://docs.docker.com/compose/定义、运行多个容器yaml file配置文件single command ,命令有哪些Compose is

2020-12-22 21:16:23 210

原创 一文搞懂Docker

一、Docker概述1.1 Docker为什么出现?一款产品:开发->上线 生产环境、测试环境,两套环境!应用环境!应用配置!开发->运维问题:我在我电脑上可以运行!版本更新,导致服务不可用!环境配置十分麻烦,每一个机器都要部署环境(如集群Redis、ES、Hadoop...)!费时费力。发布一个项目(jar + (Redis MySQL jdk ES)),项目能不能都带上环境安装打包!之前在服务器配置一个应用到环境Redis MySQL JDK ES Hadoop,

2020-12-18 10:12:35 2716

原创 Shell问题

使用/bin/bash -c指定将命令转为一个完整命令执行$ sudo /bin/bash -c ‘echo “kettle” >> nohup.log’

2020-12-17 17:19:59 174

原创 Dockerfile模板

FROM reg.800best.com/bestapp/bestjava:8u144-springboot-0801ADD target/app.jar app.jar#解决中文乱码问题ENV LANG en_US.UTF-8ENV LANGUAGE en_US:enENV LC_ALL en_US.UTF-8#配置GC相关ENV BASE_OPTS="\-XX:+PrintGC \-XX:+PrintGCDetails \-XX:+PrintGCApplicationConcu.

2020-12-17 15:59:30 1051

原创 IDEA中VM options与Program arguments

一、VM optionsVM options其实就是我们在程序中需要的运行时环境变量,它需要以-D或-X或-XX开头,每个参数使用空格分隔使用最多的就是-Dkey=value设定系统属性值,比如-Dspring.profiles.active=dev3二、Program argumentsProgram arguments为我们传入main方法的字符串数组args[],它通常以--开头,如--spring.profiles.active=dev3等价于-Dspring.profiles.

2020-12-15 15:52:25 13213 4

原创 JVM调优

一、JVM调优和参数配置1.1 JVM参数类型1.1.1 标配参数java -versionjava -helpjava -showversion在jdk各个版本之间稳定,很少有大的变化1.1.2 X参数-Xint:解释执行-Xcomp:第一次使用就编译成本地代码-Xmixed:混合模式1.1.3 XX参数1.Boolean类型公式:-XX:+或者- 某个属性值+表示开启,-表示关闭Case是否打印GC收集细节-XX:+PrintG

2020-12-11 10:02:51 252

原创 Java内存模型(JMM)

一、JMMJMM(Java内存模型Java Memory Model,简称JMM)本身是一种抽象的概念并不真实存在,它描述的是一组规则或规范,通过这组规范定义了程序中各个变量(包括实例字段,静态字段和构成数组对象的元素)的访问方式。可见性/原子性/有序性JMM关于同步的规定:1. 线程解锁前,必须把共享变量的值刷新回主内存2. 线程加锁前,必须读取主内存的最新值到自己的工作内存3. 加锁解锁是同一把锁由于JVM运行程序的实体是线程,而每个线程创建时JVM都会为其创建一个.

2020-12-10 19:24:13 145 1

转载 Nepxion Discovery

一、Nepxion Discovery Spring Cloud灰度发布神器二、Nepxion Discovery 灰度发布初体验三、Nepxion Discovery 项目结构简介四、Nepxion Discovery 之 Spring Cloud 服务注册抽象五、Nepxion Discovery 之 服务注册发现增强六、Nepxion Discovery 之 Spring Cloud 负载均衡处理七、Nepxion Discovery 之配置中心支持灰度配置...

2020-12-10 17:01:50 342

原创 Java虚拟机

一、java类加载器1.1 类加载器ClassLoader负责加载class文件,class文件在文件开头有特定的文件标示,将class文件字节码内容加载到内存中,并将这些内容转换成方法区中的运行时数据结构,并且ClassLoader只负责class文件的加载,至于它是否可以运行,则由Execution Engine决定1.2 类加载器类型1.2.1 虚拟机自带的加载器启动类加载器(Bootstrap) C++扩展类加载器(Extension) Java应用程序类加载器(

2020-12-08 23:46:09 422

原创 Java死锁及排查分析

一、是什么1.1 死锁死锁是指两个或两个以上的进程,在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力干涉,那它们都将无法推进。如果系统资源充足,进程的资源请求都能够得到满足,死锁出现的可能性就很低,否则就会因争夺有限的资源而陷入死锁。线程A持有锁A,试图获取锁B,线程B持有锁B又想获取锁A,结果,陷入了一种互相等待的局面。1.2 死锁产生的原因系统资源不足进程运行推进的顺序不合适资源分配不当二、代码示例class HoldLockThread imple

2020-12-08 18:06:28 233

原创 Synchronized和Lock的区别

一、原始构成synchronized是关键字属于JVM层面monitorenter(底层是通过monitor对象来完成,其实wait/notify等方法也依赖于monitor对象,只有在同步块或方法中才能调wait/notify等方法)monitorexitlock是具体类(java.util.concurrent.locks.Lock)是api层面的锁二、使用方法synchronized不需要用户去手动释放锁,当synchronized代码执行完后,系统会自动让线程释放对锁的占

2020-12-08 14:26:08 228

原创 Semaphore解析

一、Semaphore解析1.1 解析Semaphore:信号量主要用于两个目的,一个是用于多个共享资源的互斥使用,另一个用于并发线程数的控制。1.2 争车位Demopublic class SemaphoreDemo { public static void main(String[] args) { //模拟3个停车位 Semaphore semaphore = new Semaphore(3); //模拟6部汽车

2020-12-08 10:40:58 249

原创 CyclicBarrier解析

一、CyclicBarrier解析1.1 解析CyclicBarrier的字面意思是可循环(Cyclic)使用的屏障(Barrier)。它要做的事情是,让一组线程到达一个屏障(也可以叫同步点)时被阻塞,直到最后一个线程到达屏障时,屏障才会开门,所有被屏障拦截的线程才会继续干活,线程进入屏障通过CyclicBarrier的await()方法。与CountDownLatch相反,CountDownLatch是从某一个值减到0,而CyclicBarrier是从0加到某一个值1.2 集齐7颗龙珠召唤

2020-12-08 10:10:14 203

原创 Java锁机制

一、公平锁和非公平锁1.1 是什么1.1.1 公平锁是指多个线程按照申请锁的顺序来获取锁,类似排队打饭先来后到1.1.2 非公平锁是指多个线程获取锁的顺序并不是按照申请锁的顺序,有可能后申请的线程比先申请的线程优先获取到锁,在高并发情况下,有可能造成优先级反转或者饥饿现象(一直被别人加塞,后面的一直等待)通俗理解:排队打饭,正常情况下,先到先打,突然来了一个人,加塞到第一个人前面先打饭,这就不公平了吧1.2 区别公平锁Threads acuire a fair lock

2020-12-07 15:36:21 213

原创 Java值传递问题

一、值传递问题1.1 代码示例@Getter@Setter@AllArgsConstructor@NoArgsConstructorclass Person { private String personName;}public class TransferValue { public void changeValue1(int age) { age = 30; } public void changeValue2(Person pers

2020-12-07 12:10:01 217

原创 集合类不安全问题解析

一、并发修改异常1.1 ArrayList代码示例public class ContainerNotSafeDemo { public static void main(String[] args) { List<String> list = new ArrayList<>(); for (int i=1; i <=300; i++) { new Thread(() -> {

2020-12-07 11:37:44 223

原创 CAS详解

一、CAS概念1.1 CASCompare And Swap比较并交换1. 如果线程的期望值跟物理内存的真实值一样,就更新值到物理内存当中,并返回true2. 如果线程的期望值跟物理内存的真实值不一样,返回false,那么本次修改失败,那么此时需要重新获得主物理内存的新值1.2图解主物理内存有一个共享变量值为5,有两个线程T1,T2,他们都有自己的工作内存,并且有变量的拷贝(快照5),T1线程现在把值改为2019,然后,写回主物理内存并通知其它线程可见(加volatile..

2020-12-05 18:15:34 4287

原创 Spring MVC 数据处理与乱码问题

一、数据处理1.1 处理提交数据1.1.1 提交的域名称和处理方法的参数名一致提交数据:http://localhost:8080/hello?name=test处理方法:@RequestMapping("/hello")public String hello(String name){ System.out.println(name); return "hello";}后台输出test1.1.2 提交的域名称和处理方法的参数名不一致提交数据:http.

2020-12-05 15:13:56 792 2

原创 Spring MVC 转发和重定向

一、结果跳转方式1.1 ModelAndView设置ModelAndView对象,根据view的名称,和视图解析器跳到指定的页面。页面:{视图解析器前缀} + viewName + {视图解析器后缀}<!-- 视图解析器 --><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" id="internalResourceViewResolver">

2020-12-05 02:58:01 464

原创 Spring MVC Controller和Restful

一、控制器Controller 控制器复杂提供访问应用程序的行为,通常通过接口定义或注解定义两种方法实现。 控制器负责解析用户的请求并将其转换为一个模型。 在Spring MVC中一个控制器类可以包含多个方法 在Spring MVC中,对于Controller的配置方式有很多种 1.1 实现Controller接口Controller是一个接口,在org.springframework.web.servlet.mvc包下,接口中只有一个方法;//实现该接口的

2020-12-04 20:09:30 419

原创 Idea搭建Spring MVC工程

一、什么是MVC1.1 MVC MVC是模型(Model)、视图(View)、控制器(Controller)的简写,是一种软件设计规范。 是将业务逻辑、数据、显示分离的方法来组织代码。 MVC主要作用是降低了视图与业务逻辑间的双向偶合。 MVC不是一种设计模式,MVC是一种架构模式。当然不同的MVC存在差异。 Model(模型):数据模型,提供要展示的数据,因此包含数据和行为,可以认为是领域模型或JavaBean组件(包含数据和行为),不过现在一般都分离开来:Va

2020-12-04 15:52:12 529 1

原创 IDEA搭建Servlet工程

一、搭建项目工程二、整合tomcat2.1 下载tomcat百度云下载:http://pan.baidu.com/s/1c18VOwo下载完之后解压,如下2.2 配置tomcatidea启动如果出现乱码,在这里可以配置为相应编码2.3启动tomcat在bin目录下启动和停止tomcat启动之后,访问http://localhost:8080/如果加载出Apache Tomcat的页面,即说明启动成功。三、Idea整合tomc..

2020-12-03 19:43:00 347

原创 CountDownLatch解析

一、场景班里有七名同学,放学后,七名同学走完,班长关门走人。二、普通方法public class CountDownLatchDemo { public static void main(String[] args) { for (int i=0; i < 6; i++) { new Thread(() -> { System.out.println(Thread.currentThread().get

2020-12-01 14:38:41 296

jak_rabbit.zip

rabbitmq,延迟队列,死信队列,保证消息可靠性,不丢失

2021-06-28

Redis学习笔记-包括周阳和狂神说

Redis学习笔记-包括周阳和狂神说

2021-03-05

spring5学习笔记

spring5学习笔记.

2020-11-23

SpringCloud 第二季.mmap

springCloud学习脑图,各个组件配置,讲解步骤,https://blog.csdn.net/qq_38826019/article/details/107135798

2020-07-05

WGAN-GPppt详解

生成式对抗网络,搜集整理了网上关于GAN ,WGAN,汇总详解了WGAN-GP

2018-07-10

空空如也

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

TA关注的人

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