摘要:
#一、Redis到底是单线程还是多线程 Redis 6.0版本之前的单线程指的是其网络I/O和键值对读写是由一个线程完成。 也就是只有网络请求模块和数据操作模块是单线程的,而其他的持久化、集群数据同步等,其实是由额外的线程执行的。 Redis6.0引入的多线程指的是网络请求过程采用了多线程,但键值对 阅读全文
摘要:
#Linux常用命令 ##1、pwd命令 pwd命令,查看当前目录的路径 linux下所有的绝对路径都是从根目录"/"开始 root:是linux下root用户的根目录 home:是linux下其他用户的默认根目录 (例如:在linux上创建了一个bow用户,那么就会在/home 下面生成一个bow 阅读全文
摘要:
#悲观锁 总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁(共享资源每次只给一个线程使用,其它线程阻塞,用完后再把资源转让给其它线程)。 传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是 阅读全文
摘要:
今天给大家分享一下如何从idea提交代码到gitee上面。 1.先在gitee上创建仓库 2.填写相应的信息 3.下载git 直接next一站式安装 4.鼠标右键点击 Git Bash Here, 通过执行以下命令设置提交代码时的用户信息 5.打开idea -> File -> Settings - 阅读全文
摘要:
#一、简介 ##1.1、是什么 Docker是·基于GO语言实现的云开源项目 Docker的主要目标是“Bulid,Ship and Run Any APP, Anywhere”,也就是通过对应用组件的封装、分发、部署、运行生命周期的管理。使用户的APP(可以是一个WEB应用或者数据库应用等)机器运 阅读全文
摘要:
#一、概述 ##1.1、Ribbon Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡的工具。简单的说,Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法和服务调用。Spring Cloud Ribbon虽然只是一个工具 阅读全文
摘要:
#一、前言 ##1.1、分布式面临的问题 微服务意味着要将单体应用中的业务拆分成一个个子服务,每个服务的粒度相对较小,因此系统中会出现大量的服务。由于每个服务都需要必要的配置信息才能运行,所以一套集中式的、动态的配置管理设施是必不可少的。 SpringCloud提供了ConfigServer来解决这 阅读全文
摘要:
#一、简介 ##1、zuul 和 gateway的缘起 zuul是Netflix出品的一个基于JVM路由和服务端的负载均衡器,提供动态路由、监视、弹性、安全性等功能的边缘服务。在gateway出来之前,zuul1.x用来做服务网关的,Netflix觉得需要更新,决定将zuul更新到zuul2.x,但 阅读全文
摘要:
#一、分布式系统面临的问题 复杂分布式体系结构中的应用程序有数十个依赖关系,每个依赖关系在某些时候将不可避免地失败。 服务雪崩 多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其它的微服务,这就是所谓的“扇出”。如果扇出的链路上某个微服务的调用响应时间过长或者不 阅读全文
摘要:
#第一阶段 ##1、重载(overload)和重写(overwrite)区别 重写:子类继承父类,子类重写父类的方法。 重载: ##2、StringBuffer、StringBuilder、String 区别 String:字符串常量,不可变,使用字符串拼接会开辟新空间。 StringBuffer: 阅读全文