自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(94)
  • 资源 (1)
  • 收藏
  • 关注

原创 深入理解 java 对象头的 Mark Word--------源码分析

深入理解 java 对象头的 Mark Word--------源码分析面试题:一个空对象的创建占几个字节

2020-07-07 14:40:37 1394 1

原创 vue+springboot前端请求访问后端数据时,后端解决跨域问题

package com.wjj.config;import org.springframework.context.annotation.Configuration;import org.springframework.web.servlet.config.annotation.CorsRegistry;import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;@Configurationpublic .

2020-06-19 22:07:01 399 1

原创 Redis缓存穿透、缓存雪崩和缓存击穿简单介绍

缓存穿透(Redis中查不到)缓存穿透的概念很简单,用户想要查询一个数据,发现redis内存数据库没有,也就是缓存没有命中,于是向持久层数据库查询。发现也没有,于是本次查询失败。当用户很多的时候,缓存都没有命中,于是都去请求了持久层数据库。这会给持久层数据库造成很大的压力,这时候就相当于出现了缓存穿透。解决方案:布隆过滤器:布隆过滤器是一种数据结构,对所有可能查询的参数以hash形式存储,在控制层先进行校验,不符合则 丢弃,从而避免了对底层存储系统的查询压力;当mysql存储...

2020-06-10 11:53:20 90

原创 离线部署KubeVela,最新版本及遇到的坑

离线部署KubeVela,最新版本及遇到的坑

2022-06-10 22:56:44 1050 2

原创 go 多维度 Map 的数据存取,1个key存放多个value

m:=make(map[string]map[string]int)c:=make(map[string]int)c["b"]=1m["a"]=cd:=make(map[string]int)d["c"]=2m["a"]=d这是因为 b 和 c 都是map[string]int类型的数据,Golang 直接把["a"]里的数据从 b 替换成了 c,而不会递归地添加 map 中缺失的数据。要在 m 中保留["a"]["b"]和["a"]["c"],需要一些额外的判断才行...

2022-03-11 17:30:17 840

原创 Spring Cloud 微服务及五大组件介绍

目录什么是微服务?一.服务注册与发现——EurekaEureKa自我保护机制:好死不如赖活着Eureka和Zookeeper都可以提供服务注册与发现的功能,请说说两者的区别二.负载均衡:三.断路器——Hystrix什么是服务降级?什么是服务熔断?服务熔断和降级的区别四.服务网关——Zuul五.分布式配置——Spring Cloud Config什么是微服务?微服务介绍原文:Microservices微服务汉化:微服务(Microservice.

2021-09-12 19:40:14 5924

原创 Zookeeper的作用

Zookeeper从设计模式角度来理解:是一个基 于观察者模式设计的分布式服务管理框架,它负 责 存储和管理大家都关心的数据,然 后接受观察者的 注 册,一旦这些数据的状态发生变化,Zookeeper 就 将负责通知已经在Zookeeper上注册的那些观察者做出相应的反应。1.1 Zookeeper特点1)Zookeeper:一个领导者(Leader),多个跟随者(Follower)组成的集群。2)集群中只要有半数以上节点存活,Zookeeper集群就能正常服务。所 以Zookeeper适合

2021-09-02 22:04:59 2894 1

原创 zk中的xsync的sh脚本与免密登录配置

1.在/home/wjj/bin 目录下创建 xsync 文件[wjj@hadoop102 opt]$ cd /home/wjj[wjj@hadoop102 ~]$ mkdir bin[wjj@hadoop102 ~]$ cd bin[wjj@hadoop102 bin]$ vim xsync在该文件中编写如下代码#!/bin/bash#1. 判断参数个数if [ $# -lt 1 ]then echo Not Enough Arguement! exit;fi

2021-09-01 21:18:19 190

原创 zk集群的jps脚本,jpsall

1) 在 hadoop102 的/home/wjj/bin 目录下创建脚本[wjj@hadoop102 ~]$ cd /home/wjj/bin[wjj@hadoop102 bin]$ vim jpsall脚本中 编写如下内容#!/bin/bash#hadoop102 hadoop103 hadoop104为主机名,修改为自己的for host in hadoop102 hadoop103 hadoop104do echo =============== $hos..

2021-09-01 21:04:43 256

原创 zk启动关闭sh脚本

1) 在 hadoop102 的/home/wjj/bin 目录下创建脚本[wjj@hadoop102 bin]$ vim zk.sh在脚本中编写如下内容:#!/bin/bashcase $1 in"start"){ for i in hadoop102 hadoop103 hadoop104 do echo ---------- zookeeper $i 启动 ------------ ssh $i "/opt/module/zookeepe...

2021-09-01 20:54:16 385 1

原创 k8s各组件介绍

目录一个kubernetes集群主要是由控制节点(master)、工作节点(node)构成,每个节点上都会安装不同的组件。master:集群的控制平面,负责集群的决策 ( 管理 )node:集群的数据平面,负责为容器提供运行环境 ( 干活 )1.1kubernetes概念 1.2 Pod1.2.1 pod的生命周期1.3 Pod控制器1.3.1 ReplicaSet(RS)1.3.2 Deployment1.3.3Horizontal Pod ...

2021-08-29 23:16:07 1852

转载 K8s实战入门

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档本章节将介绍如何在kubernetes集群中部署一个nginx服务,并且能够对其进行访问。目录4.1 Namespace4.2 Pod4.3 Label4.4 Deployment4.5 Service4.1 NamespaceNamespace是kubernetes系统中的一种非常重要资源,它的主要作用是用来实现多套环境的资源隔离或者多租户的资源隔离。默认情况下,kubernetes集群中的所有的Po

2021-08-21 21:09:03 129

原创 k8s-----资源管理

3.1 资源管理介绍在kubernetes中,所有的内容都抽象为资源,用户需要通过操作资源来管理kubernetes。kubernetes的本质上就是一个集群系统,用户可以在集群中部署各种服务,所谓的部署服务,其实就是在kubernetes集群中运行一个个的容器,并将指定的程序跑在容器中。kubernetes的最小管理单元是pod而不是容器,所以只能将容器放在Pod中,而kubernetes一般也不会直接管理Pod,而是通过Pod控制器来管理Pod的。Pod可以提供服务之后,就要考虑.

2021-08-21 11:15:17 424

转载 K8S--集群安装

具体可参考https://blog.csdn.net/qq_43539962/article/details/118001579,写的可以

2021-08-20 21:58:36 188

原创 vmware安装centos7,连接xshell

打开vmware,新建虚拟机之后一直下一步,这里我们先选择安装空白盘选择 linux------centos 7 64位这里虚拟机的安装位置可以自定义安装,嫌麻烦的直接下一步之后一直下一步即可,这里网络选 NAT 模式其他一直下一步直至创建虚拟机即可。创建完成之后点击编辑虚拟机设置,导入centos 7的镜像文件...

2021-08-20 21:56:07 224

转载 xshell 连接vmware 16虚拟机centos7操作系统教程

https://blog.csdn.net/longhongkai/article/details/88544625?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCom

2021-08-02 20:46:08 310

原创 maven 使用命令-DarchetypeRepository 指定了archetype所在maven库地址,但还是报错 The desired archetype does not exist找不到

使用maven命令如下,指定了archetype所在maven库地址但还是报错,如下命令在执行时,默认是去maven中央库中去找指定的archetype,命令行参数中的-DarchetypeRepository可以指定archetype所在maven库的地址,但是这个参数只在2.X中有效,3.X中是无效的.而现在大多数人下载得maven仓库都是3.X版本,导致即时使用命令-DarchetypeRepository 指定了archetype所在maven库地址也无法拉取项目代码。.

2021-07-30 16:04:00 4557

转载 将 vue 3.0 项目 整合 springboot 项目部署到服务器并通过外网访问的两种方式

转载:https://blog.csdn.net/qq_28670711/article/details/103138495?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-

2021-07-30 15:32:30 374

原创 链表中对指定节点的增删改操作

package com.wjj;public class listnode { static class ListNode{ ListNode next; int value; public ListNode(int val){ this.value = val; } } public static ListNode insert(ListNode head,int x,int y){ .

2020-09-22 16:24:00 166

原创 贪心算法的区间调度问题,返回可以执行的任务号

1.对 map 集合的 value 数组的第二列(任务的结束时间)做升序操作2.每次都选取结束时间最早的工作,主要是用map记录了一下可以执行的任务号import java.util.*;import java.util.stream.Collectors;public class demo05 { public static List solve(Map<Integer,int[]> map){ List<Integer> task_num

2020-09-05 20:46:05 123

原创 java中数据在内存中是如何存储的

a)基本数据类型java的基本数据类型共有8种,即int,short,long,byte,float,double,boolean,char(注意,并没有String的基本类型)。8中基本数据类型存在于栈中。另外,栈有一个很重要的特殊性,就是存在栈中的数据可以共享。比如:我们同时定义:int a=3;int b=3;编译器先处理int a = 3;首先它会在栈中创建一个变量为a的引用,然后查找有没有字面值为3的地址,没找到,就开辟一个存放3这个字面值的地址,然后将a指向3的地址。接.

2020-09-04 14:29:15 852

原创 按 value 或者 key 对 map 集合做升序或者降序操作

import java.util.*;public class demo15 { public static void main(String[] args) { HashMap<Integer, Integer> map = new HashMap<>(); map.put(4,5); map.put(7,8); map.put(3,4); map.put(2,6); .

2020-09-03 09:49:09 122

原创 springboot bean的生命周期

Spring bean 的生命周期步骤一:Bean容器先找到配置文件中Spring Bean的定义。Bean容器利用Java Reflection API创建一个Bean的实例。如果涉及到一些属性值 利用set方法设置一些属性值。步骤二:实现*Aware接口 在Bean中使用Spring框架的一些对象如果Bean实现了BeanNameAware接口,调用setBeanName()方法,传入Bean的名字。 如果Bean实现了BeanClassLoa...

2020-08-26 15:19:41 685

原创 实现字符数组之间的交换 

实现字符数组之间的交换

2020-08-05 20:28:48 1998

原创 ShardingSphere 报错----Failed to configure a DataSource: ‘url‘ attribute is not specified

ShardingSphere 报错----Failed to configure a DataSource: ‘url‘ attribute is not specified

2020-08-04 16:43:54 3353 3

原创 如何处理死锁

处理死锁的常用方法有 鸵鸟策略 死锁检测与死锁恢复 死锁预防 死锁避免 1.鸵鸟策略不采取任何措施,当发生死锁时不会对用户造成多大影响,或发生死锁的概率很低,可以采用鸵鸟策略。因为解决死锁问题的代价很高,因此鸵鸟策略这种不采取任务措施的方案会获得更高的性能。2.死锁检测与死锁恢复不试图阻止死锁,而是当检测到死锁发生时,采取措施进行恢复。死锁检测安全状态的检测与死锁的检测类似,因为安全状态必须要求不能发生死锁。下面的银行家算法与死锁检测算法非常类..

2020-07-26 19:39:01 557

原创 synchronized 锁升级过程

synchronized 锁升级过程就是其优化的核心:偏向锁->轻量级锁->重量级锁class Test{ private static final Object object = new Object(); public void test(){ synchronized(object) { // do something } } }无锁------...

2020-07-24 16:33:35 329

转载 深入理解volatile的三大特性----------简单易懂

深入理解volatile的三大特性----------简单易懂

2020-07-24 15:16:00 810

原创 类的加载过程以及常量池的简单介绍

类的加载过程类加载主要分为5个过程:加载、验证、准备、解析、初始化,其中验证、准备、解析统称为连接过程。加载分为3个阶段:1、通过类的全限定名获取此类的二进制字节流。2、将字节流所代表的静态存储结构转化为方法区的运行时数据结构。3、在内存中生成一个代表这个类的java.lang.Class对象,作为方法区这些数据的访问入口。验证阶段验证阶段分成4个验证过程:1、文件格式验证:class文件格式验证2、元数据验证:字节码语义分析,分析数据类型,内容是否正确3..

2020-07-23 16:09:45 634

原创 CentOS 系统 下安装 JDK ,tomcat,mysql 详细介绍以及可能出现的错误

可在我的网盘自取,省的我在写一遍了其中 mysql 用的是 redhat 系统下的 linux 7,其中下载的时候 要下载自己系统对应的版本到底是linux 7 还是linux 8链接:https://pan.baidu.com/s/1Q5haQ2HnQo-IdjocrDQThQ提取码:1wqg...

2020-07-19 11:13:02 53

原创 vue cli 3.0 项目 整合spring boot 将项目部署到服务器并通过外网访问------------------简单易上手

vue cli 3.0 项目 整合spring boot 将项目部署到服务器并通过外网访问的两种方式------------------简单易上手

2020-07-18 19:34:18 474

原创 springboot打包成 jar 包时报错 Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.22.2

以下是我遇到的问题:只要在pom.xml中导入以下包即可 <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.12.4</...

2020-07-18 15:18:37 500 1

原创 java数据结构中各种树的区别----------图文结合

1. 二叉树 1.1 满二叉树 1.2 完全二叉树2. 二叉查找树3. 平衡二叉树 3.1 平衡查找树之AVL树 3.2 平衡二叉树之红黑树4. B树5. B+树本文中对数据结构中常见的几种树的概念和用途进行了汇总,不求严格精准,但求简单易懂。

2020-07-16 17:14:54 1731

转载 美团的 leaf 算法分布式 id 生成介绍

感觉写的还可以:适合小白上手https://juejin.im/post/5e61b4f26fb9a07cb83e2eee

2020-07-16 10:35:32 354

原创 Twitter的雪花算法 SnowFlake 的底层源码实现与分析-----java实现

ID 自增算法 snowflake雪花算法的底层源码实现与分析

2020-07-15 21:08:21 499

原创 mysql压缩包zip安装,初始化密码以及在用户目录下直接登录mysql

mysql压缩包zip安装,初始化密码以及在用户目录下直接登录mysqlmysql压缩包官网下载地址:https://dev.mysql.com/downloads/mysql/如果下载太慢的可以去我的网盘下载:链接:https://pan.baidu.com/s/1zwCpyJ6iN707ChCgtT34kw提取码:laqr

2020-07-09 10:32:20 1097

原创 mysql数据库的一些常用优化策略

Sql及索引优化:索引并不是越多越好,要根据查询有针对性的创建,考虑在WHERE和ORDER BY命令上涉及的列建立索引,可根据EXPLAIN来查看是否用了索引还是全表扫描应尽量避免在WHERE子句中对字段进行NULL值判断,否则将导致引擎放弃使用索引而进行全表扫描值分布很稀少的字段不适合建索引,例如"性别"这种只有两三个值的字段字符字段只建前缀索引字符字段最好不要做主键不用外键,由程序保证约束尽量不用UNIQUE,由程序保证约束使用多...

2020-07-08 11:23:57 174

原创 java中常用锁的基本功能介绍---------快速区别各种锁

独享锁/共享锁公平锁/非公平锁可重入锁乐观锁/悲观锁自旋锁/自适应自旋锁

2020-07-07 20:38:30 124

原创 Synchronized 和 Lock 的区别简单明了

Synchronized 和 Lock 的区别简单明了

2020-07-06 17:13:48 188 2

原创 lambda表达式,函数式接口以及Stream流的基本介绍总结

一. lambda表达式的基本介绍Lambda表达式的语法基本语法:(parameter) -> {expression}或(parameters) ->{ statements; }或者(parameters1,parameters1, ......) ->{ statements; }当然有时()与{}都可以省去不写。下面简单介绍一下Java lambda表达式的几个例子:// 1. 不需要参数,返回值为 3() -> 3 // 2. 接收

2020-07-05 17:41:41 135

ACS杂志的latex模板

ACS杂志的latex模板,ACS杂志官方上下载的模板一直报错,can not find ghsystem_english.def文件。

2020-03-12

空空如也

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

TA关注的人

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