自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 npm run dev报错解决方案

npm run dev报错解决方案个人问题仅供参考:使用npm run dev 运行,出现如下错误 :Failed to compile../src/styles/index.scss(./node_modules/css-loader??ref–11-1!./node_modules/postcss-loader/lib??ref–11-2!./node_modules/sass-loader/lib/loader.js??ref–11-3!./src/styles/index.scss)M

2021-07-09 10:51:35 3605

原创 java.lang.OutOfMemoryError: GC overhead limit exceeded一个配置解决

<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration>

2021-06-01 11:50:00 142

原创 JVM——内存模型

内存模型1.java内存模型1.1 原子性1.2实例2.可见性2.1退不出的循环2.2解决方法2.3 可见性3.有序性3.11.java内存模型java内存模型是Java Memory Model的意思。简单的说,JMM定义了一套在多线程读写共享数据(成员变量、数组)时,对数据的可见性、有序性和原子性的规则和保障。1.1 原子性Java 内存模型保证了 read、load、use、assign、store、write、lock 和 unlock 操作具有原子性,例如对一个 int 类型的变量执行 a

2021-05-31 15:35:47 159

原创 JVM垃圾回收

垃圾回收1.如何判断对象可以回收1.1引用计数法1.2可达性分析算法1.3四种引用2.垃圾回收算法2.1标记清除2.2标记整理2.3复制3.分代垃圾回收3.1相关VM参数4.垃圾回收器4.1串行4.2吞吐量优先4.3响应时间优先4.4G11.如何判断对象可以回收1.1引用计数法A对象引用B对象,B对象现在的引用计数是1;B对象引用A对象,A对象的应用计数也是1;A、B对象的应用技术不能归零,导致这两个对象不能作为垃圾进行回收,因此造成内存上的泄露。1.2可达性分析算法Java虚拟机中的垃圾回收

2021-05-27 18:12:20 86

原创 JVM内存结构

内存结构1.程序寄数器1.1定义1.2作用1.3特点2.虚拟机栈2.1定义2.2栈内存溢出2.3线程运行诊断3.本地方法栈4.本地方法栈4.1定义4.2堆内存溢出4.3堆内存诊断5.方法区5.1定义5.2组成5.3方法区内存溢出5.4运行时常量池5.5StringTable特性5.6StringTable位置1.程序寄数器1.1定义Program Counter Register程序计数器(寄存器)1.2作用作用,是记住吓一跳jvm指令的执行地址。1.3特点是线程私有的不会存在内存溢出

2021-05-26 11:20:06 127

原创 JVM的生命周期

JVM的生命周期Java虚拟机的启动是通过引导类加载器(bootstrap class loader)创建一个初始类(inittial class)来完成的,这个类是有虚拟机的的具体实现指定的。虚拟机的执行(1)一个运行中的Java虚拟机有着一个清晰的任务:执行Java程序。(2)程序开始执行时他才运行,程序结束时他就停止。(3)执行一个所谓的Java程序的时候,真真正正在执行 的是一个叫做Java虚拟机的进程。虚拟机的退出有如下的集中情况:(1)程序正常执行结束(2)程序在执行过

2021-05-25 12:01:59 85

原创 Zuul路由网关

概述什么是Zuul?Zuul包含了对请求的路由和过滤两个主要的功能:其中路由功能负责将外部请求转发到具体的微服务实例上,是实现外部访问同一入口的基础,而过滤器功能则负责对请求的处理过程进行干预,是实现请求校验,服务聚合等功能的基础。Zuul和Eureka进行整合,将Zuul自身注册为Eureka服务治理下的应用,同时从Eureka中获得其他微服务的消息,也即以后的访问微服务都是通过Zuul跳转后获得。注意:Zuul服务最终还是会注册进Eureka提供:代理+路由+过滤三大功能Zuul能干嘛?

2021-05-18 10:51:13 58

原创 Hystrix服务熔断

服务雪崩多个微服务之间调用的时候,假设微服务A调用微服务B和微服务B和微服务C,微服务B和微服务C调用其他的微服务,这就是所谓的“扇出”的链路上某个微服务的调用相应时间过长或者不可用,对微服务A的调用就会占用越来越多的系统资源,进而引起引起系统崩溃,所谓的“雪崩效应”。什么是HystrixHystrix是一个用于处理分布式系统的延迟和容错的开源库,在分布式系统里,许多依赖不可避免的会调用失败,比如超时,异常等,Hystrix能够保证在一个依赖出问题情况下,不会导致整体服务失败,避免级联故障,以提高分布

2021-05-17 17:30:43 82

原创 Feign负载均衡

1、简介freign是声明式的web service客户端,它让微服务之间的调用变得更加简单了,类似controller调用service。Spring Cloud集成了Ribbon和Eureka,可再使用Freign时提供负载均衡的http客户

2021-05-17 11:36:37 562

原创 Eureka比Zookeeper的区别及基于Netfix Ribbon实现的一套客户端负载均衡的工具

作为服务中心,Eureka比Zookeeper好在哪里?著名的CAP理论指出,一个分布式系统不可能同时满足C (一致性)、A(可用性)、P(容错性)。由于分区容错性P在分布式系统中事必须要保证的,因我们只能在A和C之间进行权衡。(1)Zookeeper保证的是CP;(2)Eureka保证的是AP;Zookeeper保证的是CP当想注册中心查询服务列表时,我们可以容忍注册中心返回的是几分钟以前的注册信息,但不能接受服务直接down掉不可用。也就是说,服务注册功能对可用性的要求要高于一致性。但是zk

2021-05-13 15:07:08 150 1

原创 SpringCloud踩过的坑,关于Eureka客户端(服务的提供者)无法注册上服务中心

Eureka客户端(服务的提供者)无法注册上服务中心原因:导错包spring-cloud-netflix-eureka-client换成spring-cloud-starter-netflix-eureka-client

2021-05-13 11:28:28 486

原创 Eureka服务注册与发现

1、什么是Eureka(1)、Netflix在设计Euraka时,遵循的就是AP原则(2)、Eureka是Netflix的一个子模块,也是核心的模块之一,Eureka是一个基于RST的服务,用于定位服务,以实现云端中间层服务发现和故障转移,服务注册与发现对于微服务来说是非常重要的,有了服务发现与注册,只需要使用服务的标识符,就可以访问到服务,而不需要修改服务调用的配置文件了,功能类似于Dubbo的注册中心,比如Zookeeper;2、原理讲解Eureka的基本架构(1)、SpringCloud封装

2021-05-13 10:42:04 80 1

原创 微服务常用的技术栈与Dubbo和SpringCloud的对比

微服务技术栈有哪些?(springcloud随手笔记)微服务条目落地技术服务开发SpringBoot,Spring,SpringMVC服务配置与管理Netflix公司的Archafus,阿里的Diamond等服务注册于发现Eureka、Consul、Zookeeper等服务熔断器Hystrix,Envoy等服务调用Rest、RPC、gRPC负载均衡Ribbon、Nginx等服务接口调用Feign消息队列Kafka、RabbitM

2021-05-11 16:57:10 107

原创 Spring Cloud随笔

微服务架构4个核心问题?1、服务很多,客户端该怎么访问?2、这么多服务?服务之间如何通信?3、这么多服务?如何治理?4、服务挂了怎么办?Spring Cloud1、Spring Cloud NetFlix 一站式解决方案!api网关,zuul组件Feign --HttpClient --Http通信方式,同步,阻塞服务组测发现:Eureka熔断机制:Hystrix…2、Apache Dubbo Zookeeper 半自动,需要整合别人的!API:没有,找到第三方组件,或者自己实现

2021-05-09 22:41:18 101 2

原创 哨兵模式详解

1、配置哨兵模式文件rentinel.conf#sentinel monitor 被监控的名称 host port 1sentinel monitor myredis 127.0.0.1 6379 1后面的这个数字1,代表主机挂了,slave投票看让水接替成为主机,票数最多的,就会成为主机!2.启动哨兵[root@root bin]# redis-sentinel kconfig/sentinel.conf 9024:X 06 Feb 2021 19:54:31.348 # oO0OoO0Oo

2021-02-06 22:07:36 4973

原创 Redis集群环境搭建

环境配置只配置从库,不用配置主库!127.0.0.1:6379> info replication #查看当前库的信息# Replicationrole:master #角色 masterconnected_slaves:0 #没有从机master_replid:3eb9dce4127a81ab2991e3c26df4f5bd4efec166master_replid2:0000000000000000000000000000000000000000master_repl_off

2021-02-06 19:41:01 133 1

原创 Redis发布订阅

Redis发布订阅Redis发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)发送消息。微信、微博、关注系统!Redis客户可以订阅任意数量的频道。订阅/发布消息图:第一个:消息发布者,第二个:频道 第三个:消息订阅者!Redis 发布订阅命令下表列出了 redis 发布订阅常用命令:序号 命令及描述1 PSUBSCRIBE pattern [pattern ...] 订阅一个或多个符合给定模式的频道。2 PUBSUB subcommand [argu

2021-02-06 18:04:53 63

原创 Redis配置文件详情

Redis.conf详解单位:1、配置文件unit单位对大小写补敏感!包含:就是好比Spring、Import、include网络:bind 127.0.0.1 #绑定得ipprotected-mode yes #保护模式port 6379 #端口通用GENERAL:daemonize yes #守护进程得方式运行,默认是no,我们需要自己开启为yes!pidfile /var/run/redis_6379.pid #如果以后台得方式运行,我们就需要指定一个pid文

2021-02-05 23:30:51 62

原创 Jedis

JedisJedis是Redis官方推荐的java连接开发工具!使用java操作Redis中间件!如果你要使用java操作redis,那么一定要对Jedis十分的熟悉!1、导入对应的依赖 <!--导入jedis的包--> <dependencies> <dependency> <groupId>redis.clients</groupId> <artifac

2021-02-04 22:08:34 46

原创 redis基本的事务操作

事务Redis事务本质:一组命令的集合!一个事务中的所有都会被序列化,在事务执行过程中,会按照顺序执行!一次性、顺序性、排他性!执行一些列的命令!注意:Redis事务没有隔离级别的概率!Redis单条命令式保存原子性的,但是事务不保证原子性!Redis的事务:开启事务()命令入队()执行事务()开启事务127.0.0.1:6379> MULTI #开启事务OK#命令入队127.0.0.1:6379> set k1 v1QUEUED127.0.0.1:6379&gt

2021-02-04 18:06:29 62

原创 redis三种特殊数据类型之Bitmaps

Bitmaps查看某一天是否有打卡!127.0.0.1:6379> setbit sign 0 1(integer) 0127.0.0.1:6379> setbit sign 1 0(integer) 0127.0.0.1:6379> setbit sign 2 0(integer) 0127.0.0.1:6379> setbit sign 3 1(integer) 0127.0.0.1:6379> setbit sign 4 1(integer) 01

2021-02-04 16:23:43 89

原创 redis三种特殊数据类型之Hyperloglog

Hyperloglog127.0.0.1:6379> pfadd mykey a b c d e f g h i j #创建第一组元素mykey(integer) 1127.0.0.1:6379> PFCOUNT mykey #统计mykey元素的技术数量(integer) 10127.0.0.1:6379> PFADD mykey2 i j z x c v b b n m(integer) 1127.0.0.1:6379> PFCOUNT mykey2(inte

2021-02-04 15:53:04 87

原创 redis三种特殊数据类型之Geospatial地理位置

Geospatial地理位置#getadd添加地理位置#规则:两级无法直接添加,我们一般会下载城市数据,直接通过java程序一次性导入#有效的经度从-180度到180度#有效的维度从-85.05112878度到85.05112878度#参数 key 值(纬度、经度、名称)127.0.0.1:6379> geoadd china:city 116.40 39.90 beijing(integer) 1127.0.0.1:6379> geoadd china:city 121.47

2021-02-04 15:25:51 84

原创 redis五大数据类型之Zset常用命令

Zset(有序集合)在set的基础上,增加了一个值,set k1 v1 zset k1 score1 v1127.0.0.1:6379> zadd myset 1 one #添加一个值(integer) 1127.0.0.1:6379> zadd myset 2 two 3 three #添加多个值(integer) 2127.0.0.1:6379> zrange myset 0 -11) "one"2) "two"3) "three"-----------

2021-02-04 10:22:18 113

原创 redis五大数据类型之Hash常用命令

Hash(哈希)Map集合,key-Map!时候这个值是一个map集合!本质和String类型没有太大区别,还是一个简单的key-value!127.0.0.1:6379> hset myhash field1 shidongcheng(integer) 1127.0.0.1:6379> hget myhash field1 "shidongcheng"127.0.0.1:6379> hmset myhash field1 hello field2 worldOK127.0

2021-02-03 22:42:37 79

原创 redis五大数据类型之Set常用命令

Set(集合)set中的值是不能重读的!127.0.0.1:6379> sadd myset "shidongcheng" #set集合中添加元素(integer) 1127.0.0.1:6379> sadd myset "loveshidongcheng"(integer) 1127.0.0.1:6379> smembers myset #查看指定set的所有值1) "shidongcheng"2) "loveshidongcheng"127.0.0.1:637

2021-02-03 22:00:02 85

原创 redis五大数据类型之List常用命令

List在redis里面,我们可以把list完成,栈,队列,阻塞队列!所有的list命令都是用L开头的,resids不区分大小写命令127.0.0.1:6379> lpush list one #将一个值或者多个值,插入到列表头部(左)(integer) 1127.0.0.1:6379> lpush list two(integer) 2127.0.0.1:6379> lpush list three(integer) 3127.0.0.1:6379> lrang

2021-02-03 19:31:20 162

原创 redis五大数据类型之String常用命令

String(字符串)127.0.0.1:6379> set key1 v1 #设置值OK127.0.0.1:6379> get key1 #获得值"v1"127.0.0.1:6379> keys *1) "myset:__rand_int__"2) "mylist"3) "key:__rand_int__"4) "name"5) "counter:__rand_int__"6) "key1"127.0.0.1:6379> exists key1

2021-02-03 18:13:17 93

原创 Redis单线程为什么还这么快

1、误区1:高性能的服务器一定是多线程的?2、误区2:多线程(CPU上下文回切换!)一定比单线程效率高!先去CPU>内存>硬盘的速度核心:redis是将所有的数据全部放在内存中的,所以说使用单线程去操作效率就是最高的,多线程(CPU上下文回切换:耗时的操作!);对于内存系统来说,如果没有上下文切换效率就是最高的!多次读写都是在一个CPU上的,在内存情况下,这个就是最佳方案!...

2021-02-02 22:10:28 70

原创 Mysql显示表的结构

显示表departments的结构DESC departments;

2021-01-27 18:09:45 716

原创 Mysql使用concat实现连接

Mysql使用concat实现连接案例:查询员工名和姓连接成一个字段,并显示为姓名SELECT * FROM employees;SELECT CONCAT(last_name,first_name) AS 姓名 FROM employees;

2021-01-27 18:00:21 88

原创 Mysql数据库

Mysql基础去重案例:查询员工表中涉及到的所有的部门编号SELECT department_id FROM employees;SELECT DISTINCT department_id FROM employees;

2021-01-27 17:48:07 46

空空如也

空空如也

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

TA关注的人

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