笔记
文章平均质量分 84
烟锁迷城
这个作者很懒,什么都没留下…
展开
-
Java算法 每日一题(一) 编号35:搜索插入位置
编号35:搜索插入位置原创 2022-07-23 00:01:31 · 216 阅读 · 0 评论 -
SpringCloud基础(五)Gateway:微服务网关
在微服务场景下,前端访问不同服务的时候,需要做重复的工作,如鉴权,日志等功能,为了解决统一问题,就增加微服务网关进行整合,如限流,鉴权,缓存,熔断,日志,协议转换。...原创 2021-11-24 23:39:17 · 1975 阅读 · 0 评论 -
SpringCloud基础(四)Spring Cloud Config:配置中心
1、简介Spring Cloud Config是一个分布式配置中心的解决方案,它为分布式系统提供了外部画的集中式管理功能,包含Config Server和Config Client简单来说,就是Spring Cloud Config利用git仓库进行配置维护。当有请求到达Config Server时,Config Server就会向git请求,拉取配置,让所有服务感知到配置文件。2、简单使用根据上一篇内容的项目构建,继续本次项目编写。新建项目,选择config server...原创 2021-11-19 01:46:57 · 1406 阅读 · 0 评论 -
SpringCloud基础(三)OpenFeign:远程通信
1、基本介绍RestTenplate是Spring提供的用于访问Rest服务的客户端,它提供了很多可以方便访问远程http服务的方法,这些方法可以减少开发人员在编写客户端代码的工作量。原创 2021-11-10 18:31:38 · 585 阅读 · 0 评论 -
SpringCloud基础(二)Ribbon:负载均衡
1、原创 2021-11-07 22:55:06 · 598 阅读 · 0 评论 -
Mybaits基础(三)缓存
1、一级缓存在Mybaits的jar包中,所有的缓存都需要实现一个接口org.apache.ibatis.cache.Cache原创 2021-10-16 22:52:42 · 151 阅读 · 0 评论 -
MyBaits基础(二)核心配置
1、mybaits-config.xml将Mybaits集成到Spring中,需要添加一些配置文件。它的核心配置文件,就是mybaits-config.xml。1.1、configuration标签configuration标签是所有标签的父标签,它同时对应着mybaits的配置类configuration。1.2、properties标签properties是为了引入properties文件,用来添加数据库连接配置的标签。这个标签可以没有,但是mybaits-config.xml的数据原创 2021-10-13 00:01:07 · 149 阅读 · 0 评论 -
Mybaits基础(一)ORM框架
1、JDBC连接过程注册驱动 创建statement对象 execute()方法执行SQL 把结果集转换成POJO对象 关闭资源2、原创 2021-10-12 17:24:43 · 103 阅读 · 0 评论 -
MySQL(一) 架构
1、SQL的执行1.1、查询前准备对数据库的连接方式可以分为以下几种通信类型:同步/异步连接方式:长连接/短连接协议:TCP/Unix Socket1.1.1、连接线程MySQL是一个单进程,多线程的模型,客户端每产生一个连接session,MySQL就会产生一个线程来处理这个连接,默认线程数为151个。查询数据库当前线程的使用情况:show global status like 'Thread%'属性解释Threads_cached数据库缓存线程数Th原创 2021-05-03 23:44:36 · 447 阅读 · 2 评论 -
Redis(四)实际应用
一、Redis客户端1、客户端与服务通讯Redis监听默认6379的端口号,可以通过TCP方式建立连接。服务端约定了一种特殊的消息格式,每个命令都是以\r\n(CRLF 回车 + 换行)结尾。这种编码格式我们之前在AOF文件里面见到了,叫做Redis Serialization Protocol(RESP,Redis序列化协议),发消息,收消息或者响应消息需要按照这种格式编码。这种编码容易实现,解析快,可读性强。Redis 6.0新特性里面说的RESP协议升级到了3.0版本,其实就是对于服务端和客户原创 2021-04-14 22:19:33 · 404 阅读 · 1 评论 -
Redis(三)分布式应用
一、分布式支持1、性能Redis本身的QPS已经很高了,但是如果在一些并发量非常高的情况下,性能还是会受到影响。这个时候我们希望有更多的Redis服务来分摊压力,实现负载均衡。2、高可用如果只有一个Redis服务,一旦服务宕机,那么所有的客户端都无法访问,会对业务造成很大的影响。另一个,如果硬件发生故障,而单机的数据无法恢复的话,带来的影响也是灾难性的。3、可扩展因为Redis所有的数据都放在内存中,如果数据量大,很容易受到硬件的限制。升级硬件收效和成本比太低,所以我们需要有一种横向扩展的方法。原创 2021-04-08 22:26:16 · 579 阅读 · 2 评论 -
Redis(二)原理
一、发布订阅模式1、基本命令订阅频道:可以一次订阅多个,subscribe channel-1 channel-2 channel-3向指定频道发布消息:publish channel-1 2673取消订阅:unsubscribe channel-1按规则(pattern)订阅频道:psubscribe topic*,*代表通配符,topic * 代表所有topic开头的频道。发布消息:public channel message 给channel发送消息message二、事务1、事务特原创 2021-04-03 23:18:35 · 1921 阅读 · 1 评论 -
Redis(一)基础
一、基本特性速度快支持多种数据类型支持多种编程语言持久化,内存淘汰支持事务,发布订阅,pipeline,lua集群,分布式二、基本命令增加/修改:set key value查询:get key查询全部的key:keys *查看key的数量:dbsize查询key是否存在:exists key删除:del key key……可一次删除多个更改key的名字:rename oldKey newKey查看key存储的value的数据类型:type key清空当前数据库内容:fl原创 2021-03-24 00:46:42 · 229 阅读 · 0 评论 -
关于多线程的一些知识点:线程池
线程池设计原理一、池化设计数据池的设计通常运用了工厂,单例和享元三种设计模式。二、线程池的构建无论是什么样的线程池,其构架都依托于ThreadPoolExecutor,其核心参数如下(七个):corePoolSize:核心线程数maximumPoolSize:最大线程数(临时线程数=maximumPoolSize-corePoolSize)keepAliveTime:临时线程存活时间unit:存活单位workQueue:阻塞队列threadFactory:线程工厂handler:拒绝原创 2020-09-24 00:13:26 · 203 阅读 · 0 评论 -
关于多线程的一些知识点:基础概念和关键字原理
一、java线程的六种状态java线程有六种状态,分别是new(创建),rennable(运行),time_waiting(超时等待),waiting(等待),blocked(阻塞),terminated(死亡)。一个线程先被创建,然后进入运行(分为就绪,运行两种)状态,加锁(synchronized修饰)会进入阻塞状态,sleep(0),wait,join,park会进入等待状态,sleep(time),wait(time),join(time),park(time)(即加入唤醒时间的等待函数)会进入原创 2020-09-22 13:03:23 · 152 阅读 · 0 评论 -
七种设计原则
一、开闭原则对修改关闭,对扩展开放是开闭原则的核心,开闭原则中“开”,是指对于组件功能的扩展是开放的,是允许对其进行功能扩展的;开闭原则中“闭”,是指对于原有代码的修改是封闭的,即不应该修改原有的代码。二、依赖倒置原则高层模块不应该依赖底层模块,二者都应该依赖其抽象,抽象不应该依赖细节,细节应该依赖抽象。针对接口编程,不要针对实现编程。先针对顶层接口功能进行设计,再进行底部的构建,即面对接...原创 2020-02-23 20:19:12 · 112 阅读 · 1 评论 -
装饰者模式(Decorator Pattern)
概念是指在不改变原有对象的基础上,将功能附加到对象上,提供了比继承更有弹性的替代方案(拓展原有对象功能),属于结构型设计模式使用场景1.用于拓展一个类的功能或给一个类添加附加职责2.动态的给一个对象添加功能,这些功能可以再动态撤销。实例现场建一个抽象类型,比如蛋糕public abstract class Cake { protected abstract String g...原创 2020-01-27 20:10:28 · 108 阅读 · 0 评论 -
代理模式分析
通过一个对象来访问另外一个对象,这种模式被称为代理模式,属于结构型设计模式。原创 2020-01-03 10:56:15 · 125 阅读 · 0 评论 -
单例模式分析
单例模式,顾名思义,是为了让某些类在整个程序运行过程中只实例化一次而设计出来的模式,在很多场景中都有使用,如spring的ioc。饿汉式单例饿汉式单例是为了在程序开始后立即加载这个单例类而使用的,具体写法如下public class HungrySingleton { private static final HungrySingleton hungrySingleton = ne...原创 2019-12-14 18:54:14 · 255 阅读 · 0 评论