- 博客(18)
- 收藏
- 关注
原创 IDEA代码快速补全小技巧,摸鱼大法好
for循环fori,遍历,for (int i =0; i < list.size(); i++) { }forr,反向遍历,for (int i list.size() - 1; i >= 0; i--) { }判空.null,对象判空,if (o == null) { }.nn,对象判非空,if (o != null) { }boolean判断flag.if,判断布尔值,if (flag) { }flag.not.if,布尔值取反,if (!flag) { }定
2021-09-10 11:57:14
364
原创 Vue笔记
生命周期生命周期是什么Vue从开始创建,初始化数据,编译模板,挂载DOM,渲染更新,渲染卸载的过程,称为Vue的生命周期各个生命周期的作用beforeCreate:组件创建开始,组件属性生效前。【data和methods的数据没有初始化】created:组件实例已创建,【data和methods已经初始化成功】,$element不可用。最早调用methods和data需要在created里操作beforeMount:模板已经编译完成,但是还没渲染到页面,【页面元素还没被替换】mounted
2021-09-09 17:54:51
87
原创 Spring Cloud一二三
Spring Cloud构建在Spring Boot基础上,用于快速构建分布式系统的工具集Spring Cloud核心功能分布式配置管理服务注册与发现路由端到端的调用负载均衡断路器全局锁选举和集群管理分布式消息Spring Cloud组件注册器:Eureka,Nacos、Zookeeper熔断器:Hystrix、Sentinel网关:Zuul、Spring Cloud Gateway负载均衡:Ribbon、Dubbo、Spring Cloud Load Balancer
2021-08-24 21:11:24
99
原创 NIO、BIO、AIO
同步与异步,阻塞与非阻塞同步:一个任务完成前不能做其他操作异步:一个任务完成前,可以进行其他操作阻塞:挂起当前线程,只等待,不能执行其他操作非阻塞:执行其他操作BIO同步阻塞,一个连接一个线程,没处理完成之前不能做其他操作。模式简单,通信耗时NIO同步非阻塞,一个连接一个线程,客户端和服务器通过Channel通信,NIO在Channel进行读写操作,注册在Selector多路复用器上,通过一个线程不停轮询Channel执行IO操作NIO和BIO缓冲区BIO直接写入StreamN
2021-08-24 17:16:21
79
原创 并发和线程
线程进程和程序程序,指令和数据的文件,静态代码进程,程序的一次执行过程,系统运行程序的基本单位线程,操作系统能够进行运算调度的最小单位,一个进程里可以有很多线程线程优缺点发挥多核CPU的性能,系统运行更快,AMD,YES!要内存,有线程安全问题守护线程程序完毕,JVM会等待非守护线程完成后关闭,不等待守护线程线程的生命周期新建 new一个线程就绪 等待被线程调度选中运行 执行任务死亡 执行完毕,或者被kill阻塞 暂停运行,让出CPU睡眠 指定时间过去即可进入就绪状态等待
2021-08-24 15:31:18
65
原创 Java的集合
Java集合框架Collection和Map是Java集合框架的根接口,包含了一些子接口和实现类- Set继承Collection,元素不重复- HashSet和TreeSet实现里Set接口- List接口继承Collection,允许重复,类似数组,长度可变,有序集合- LinkedList、ArrayList、Vector实现了List接口- Map接口是一个键值(KV)映射的接口,和Collection接口无关,元素可以重复,但是键唯一- HashMap、LinkedHashMap、T
2021-08-23 20:56:23
74
原创 JAVA基础一二三
面向对象模块化开发复用性强可靠性,灵活性可读性面向对象的特征封装:隐藏内部属性,提高可维护性继承:提高代码重用性,不修改类的情况下给类添加新特性多态:接口的多种不同的实现方式就是多态。允许子类类型的指针赋值给父类类型,把不同子类对象都当作父类来看抽象:把类的行为和实现分开面向对象和面向过程面向过程:性能高,不用实例化类。Linux,嵌入式一般用面向过程面向对象:方便维护,复用性高,容易扩展。有封装继承多态的特性,可以设计出耦合度低的系统,更灵活重写和重载重载 体现编
2021-08-23 17:20:47
125
原创 Srping一二三
Spring是什么Spring是一种简化应用程序开发的轻量级开源框架,主要由几部分组成Spring CoreSpring Bean 提供Spring框架基本功能,核心组件是BeanFactorySpring Context 提供其一个全局的上下文环境JDBC JDBC封装模块Spring ORM 提供了Hibernate和JPA的集成Spring Transaction 事务管理模块Spring Web MVCSpring AOP 集成面向切面功能,提供事务管理服务简化开发:对常
2021-08-23 10:58:18
76
原创 消息队列MQ
解耦利器:MQA系统发送数据到BCD系统,明明需要数据的是BCD,更改代码却需要在A系统实现,架构中出现了反向依赖使用MQ,A系统产生数据发送到MQ里,哪个系统需要数据则去MQ消费,如果不需要就取消订阅。A不需要考虑给谁发消息通过MQ,A 系统就跟其它系统解耦了异步通信上游不关心下游执行结果,用户请求发送消息到MQ直接返回。削峰高峰期不论发送多少请求系统只处理MQ放行请求,减轻底层DB压力MQ的高可用RabbitMQ的镜像集群模式元数据和队列(queque)都在多个实例上,每个R
2021-08-20 12:51:16
170
原创 IO,BIO,NIO,AIO
IO基础流:数据传输的通道流分为输入流和输出流,输入流只能读,输出流只能写IO模型:阻塞IO非阻塞IO信号驱动IOIO多路复用异步IOIO分为两步:等待数据,迁移数据IO线程大部分被阻塞在等待数据的过程中,降低等待时间才能提高效率...
2021-08-10 12:56:12
67
原创 ElasticSearch提高查询效率
filesystem cacheES数据写入磁盘,查询时通过缓存(filesystem cache)调用filesystem cache存储索引文件,分配内存越大ES的性能越高从磁盘读速度是秒级别,从内存读性能是毫秒级别想保证性能,机器内存至少是总数据量的一半如果只有100G内存留给filesystem cache,索引数据最好控制在100G内,只走内存搜索为了避免索引数据过大,写入ES的字段越少越好不参与搜索的字段尽量保存在HBase中(HBase:支持海量数据在线储存)数据预热对于经
2021-08-08 14:30:44
604
原创 ElasticSearch基本原理
node集群中的每个node都可以处理http和transport请求(接收客户端请求,转发请求)master-eligible node:候选节点data node:储存操作数据ingest node:预处理document每个node都是一个coordinating node。如果一个node将node.master,node.data,node.ingest全部设为false,它就是一个纯粹的coordinating node注意:默认情况每个node的node.master,node
2021-08-08 11:42:57
91
原创 sync、fsync和fdatasync
为了提高实际文件和缓存内容的一致性,UNIX提供了三个函数sync:写入队列即返回,不等待写入磁盘操作fsync:等待写磁盘操作结束再返回。常用于数据库等需要确保将修改内容立即写入磁盘的程序fdatasync:同fsync,但只影响数据部分,不更新文件属性,性能有所提升...
2021-08-07 21:26:45
271
3
原创 ElasticSearch分布式架构原理
ElasticSearch 分布式搜索引擎,在多台机器上启动多个ElasticSearch进程实例,组成一个 ElasticSearch集群。ES的基本单位:索引(index),相当于MySQL的一张表一个索引拆分成多个分片(shard)分片优点横向扩展:方便数据扩容,1T变2T提高性能:多个分片在不同服务器分布式执行,提高吞吐量和性能分片拥有多个备份,避免机器宕机,实现高可用ES集群拥有多个节点,负责切换主分片和副本分片的身份,主节点宕机自动选举一个新的主节点非主节点宕机时,此节点主分
2021-08-07 12:55:45
162
原创 SpringSecurity统一认证系统实现
Spring Security统一认证系统实现Spring Security统一认证系统实现1 SpringSecurity 应用1.1 简介Spring Security是一个提供安全访问控制解决方案的安全框架1.2 认证授权分析1.3 项目实践1.3.1 系统初始配置pom文件<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <
2021-08-06 18:10:38
817
原创 剁手网权限管理系统
1 系统简介:1.1 概述剁手网权限子系统微服务版ds-cloud,基于Spring Boot、Spring Cloud & Alibaba等技术的前后端分离的后台管理系统。内置模块如公告管理,日志管理,菜单管理,角色管理、部门管理、用户管理。支持代码生成等在线定时任务配置。1.2 技术环境MyBatis、Spring、Spring Boot、Spring Cloud & Alibaba、Nacos、Sentinel1.3 系统骨架ds-cloud-admin├
2021-07-29 20:47:28
111
原创 RabbitMQ
消息队列是一个使用队列来通信的组件RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件RabbitMQ特点可靠性: RabbitMQ使用一些机制来保证可靠性, 如持久化、传输确认及发布确认等。灵活的路由: 在消息进入队列之前,通过交换器来路由消息。对于典型的路由功能, RabbitMQ 己经提供了一些内置的交换器来实现。针对更复杂的路由功能,可以将多个 交换器绑定在一起, 也可以通过插件机制来实现自己的交换器。扩展性: 多个RabbitMQ节点可以组成一个集群,也可以.
2021-07-26 20:24:13
122
1
原创 单点登陆系统SSO的简单设计和实现
1 系统简介1.1 HTTP协议web采用无状态HTTP协议, 每次请求独立处理 浏览器->服务器 | 浏览器->服务器浏览器<-服务器 | 浏览器<-服务器任何用户都能访问, 资源需要保护 鉴别浏览器请求, 需要会话机制1.2 会话机制浏览器第一次请求, 服务器创建会话(), 响应+会话ID 浏览器储存ID, 后续请求+ID 浏览器通过Cookie维护ID1.3 登录状态浏览器第一次发送请求, 验证账户密码成功...
2021-07-24 20:43:09
454
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人