- 博客(13)
- 收藏
- 关注
原创 Redis之缓存穿透、击穿和雪崩
Redis之缓存穿透、击穿和雪崩一、缓存穿透 当用户的请求结果在redis上没有缓存时,就会直接请求到db上,当在高并发或者是有人攻击的时候就会产生问题。 解决方案: 1. 使用布隆过滤器判断缓存中是否存在 2. 为请求设置一个值为null的缓存,设置较短的过期时间二、缓存击穿 当访问的数据在redis缓存冲过期失效时,会去访问db,然后将数据写入redis缓存,但是此时出现高并发时,会导致瞬间db压力过大。 解决方案: 1. 热点数据否缓存永不过期 2. 采用分布式锁,
2021-05-05 11:05:22 134 1
原创 Eureka和Zookeeper的区别
Eureka和Zookeeper的区别作为服务注册中心,Eureka比Zookeeper好在哪? CAP理论指出,一个分布式系统不可能同时满足C(一致性)、A(可用性)、P(容错性)。 犹豫分区容错性P在分布式系统中石必须要保证的,因此我们只能在A和C之间进行权衡。Zookeeper保证的是CPEureka保证的是AP 当注册中心查询服务列表时,我们可以容忍注册中心返回的是几分钟之前的注册信息,但是不能接受服务直接down掉不可以。也就是说,服务注册功能对可用性的要求高于一致性。Zo
2021-04-28 11:04:51 248
原创 SpringCloud和SprinBoot之间的关系
SpringCloud和SprinBoot之间的关系 SpringCloud是分布式微服务架构下的一站式解决方案,是各个微服务架构落地技术的集合体,俗称微服务全家桶 SpringBoot专注于快速方便的开发单个个体微服务 SpringCloud是关注全局的微服务协调治理框架,它将SpringBoot开发的一个个单体微服务整合并管理起来,卫各个微服务模块之间提供配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、决策竞选、分布式会话等等集成服务 SpringBoot可以离开Spring
2021-04-22 10:27:26 168 1
原创 微服务概述
微服务概述1.什么是微服务 微服务化的核心就是将传统的一站式应用,根据业务拆分成一个一个的服务,彻底地去耦合,每一个微服务提供单个业务功能的服务,一个服务做一件事,从技术角度看,就是一种小而独立的处理过程,类似进程概念,能够自行单独启动或销毁,拥有自己独立的数据库。2.微服务的优缺点优点:每个服务足够内聚,足够小,代码容易理解这样能聚焦一个指定的业务功能或业务需求开发简单、开发效率高,一个服务可能就是专一的只干一件事微服务能够被小团队独立开发,这个小团队是2到5人的开发人员组成微服务市松
2021-04-20 19:06:43 194
原创 面向对象的三大特征
面向对象的三大特征一、封装 封装就是隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读和修改的访问级别,将抽象得到的数据和行为相结合,形成一个有机的整体。 封装的目的是增强安全性和简化编程,使用者不必了解具体的实现细节,而只是要通过外部接口,以特定的访问权限来使用类的成员。二、继承 继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。 通过使用继承我们能够非常方便地复用以前的代码,能够大大的提高开发的效率三
2021-04-08 09:30:19 68
原创 java集合框架
java集合框架一.集合框架的概述1.集合、数组都是对多个数据进行存储操作的结构,简称Java容器说明:此时的存储,主要是指内存层面的存储,不涉及到持久化的存储2.1数组在存储多个数据方面的特点:1)一旦初始化之后,其长度就确定了2)数组一旦定义好以后,其元素的类型也就确定了2.2数组在存储多个数据方面的缺点:1)一旦初始化以后,其长度不可改变2)数组提供的方法有限。对于添加、删除、插入数据等操作,非常不便,同时效率不高3)获取数组中实际元素的个数的需求,数组没有现成的属性或方法可用4
2021-04-07 18:50:06 100
原创 设计模式之单例设计模式
单例设计模式定义:采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类中只提供一个取得其对象的实例方法。实现方法:想要类在一个虚拟机中只能生成一个对象,首先必须将类的构造器的访问权限设置为private,这样就不能用new操作符在类的外部产生类的对象了。但是在类的内部仍然可以产生该类的对象。因为在类的外部无法得到对象,就只能调用类的某个静态方法来返回类内部创建的对象,静态方法只能访问类中的静态成员变量,所以,指向类内部产生的该类对象的变量也必须定义为静态的。单例设计模式之饿汉式
2021-04-07 01:52:03 87 1
原创 es安装ik分词器
安装ik分词器的步骤1.在gethub上找到es对应版本的ik分词器的下载地址https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.5.4/elasticsearch-analysis-ik-6.5.4.zip2.进入es的容器中docker exec -it bash 容器id3.使用es容器内自带的插件下载ik分词器进入bin目录下,找到elasticsearch-plugincd bin在当
2021-02-19 16:26:20 160
原创 使用dockercompose安装elasticsearch和kibana
使用dockercompose安装elasticsearch和kibana1.编写dockercompose文件version: "3.1"services: elasticsearch: image: daocloud.io/library/elasticsearch:6.5.4 restart: always container_name: elasticsearch ports: - 9200:920
2021-02-19 00:03:31 254 1
原创 nginx的简单配置
nginx的简单配置一、nginx配置文件1.nginx配置文件位置/usr/local/nginx/conf/nginx.conf2.nginx配置文件组成 nginx配置文件由三部分组成 第一部分:全局块 从配置文件开始到events块之间的内容,主要会设置一些影响nginx服务器整体运行的配置指令。例如worker_processes,它的值越大,可以支持的并发处理量也越多 第二部分:events块 events块涉及的指令主要影响nginx服务器与用户
2021-02-16 16:33:53 635
原创 Docker安装配置nginx
Docker安装配置nginx一、安装nginx1.使用docker下载nginx镜像#docker pull nginx2.简单启动nginx#docker run --name nginx -p 80:80 -d nginx参数解释:–name 启动容器的名字(自己定义)-p 映射端口-d 后台运行容器,并返回容器ID二、配置nginx1.挂载配置文件启动nginx#docker run --name nginx -p 80:80 -v /mydata/do
2021-02-16 16:15:52 210
原创 Docker安装
Docker安装1.安装需要的包yum install -y yum-utils device-mapper-persistent-data lvm22.使用以下命令设置稳定存储库(使用清华镜像)yum-config-manager --add-repo https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo常见问题:yum install的时候提示:Loaded pluings:fastestmi
2021-02-16 16:14:13 66
原创 Linux的基础指令
一、Linux的基础指令1.ls指令 用法1:#ls 作用:列出当前工作目录下的所有文件/文件夹的名称 用法2:#ls 路径 作用:列出路径下的所有文件/文件夹的名称 用法3:#ls 选项 路径 作用: 在列出指定路径下的文件/文件夹的名称,并以指定的格式进行显示。 常见语法: ls -l 路径 ls -la 路径 选项解释: -l:表示l
2021-02-16 16:10:44 104
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人