
java进阶
文章平均质量分 54
认真学java的秃头小白
这个作者很懒,什么都没留下…
展开
-
关于elasticsearch与kibana、IK分词器
搜索引擎原创 2023-09-08 01:10:49 · 610 阅读 · 0 评论 -
nginx概述
nginx概述原创 2023-08-28 22:45:50 · 367 阅读 · 0 评论 -
关于分布式
CAP理论对于一个分布式系统来说,设计读写操作时,需要考虑同时满足三点中的两个。Consistency一致性:所有节点访问同一份最新的数据副本Availability可用性:非故障的节点在合理时间内返回正确的响应。Partition tolerance分区容错性:分布式系统出现网络分区(多个节点本来网络是联通的,因为某些故障,不联通了,整个网络就分成了几块区域),仍然能够对外提供服务。分布式系统理论上不可能选择CA架构,只能选择CP或者AP架构,如ZooKeeper是CP,Eureka就是AP架构原创 2022-05-13 11:32:46 · 163 阅读 · 0 评论 -
java中的消息队列
消息队列:可以看做是一个存储消息的容器,它是分布式系统中的重要组件之一。目的是:1、为了通过异步处理来提高系统的性能来减少系统响应的时间一般的步骤是客户端发起请求给服务端,服务端在请求给数据库,数据库在返回结果给服务端,最后客户端在接收服务端的响应。此时运用消息队列先是客户端发送请求给服务端,服务端发送消息给消息队列,客户端接收服务端的响应,在消息队列请求数据库。因此在使用消息队列时需要考虑业务的流程进行异步处理。2、削峰/限流将短时间高并发产生的事务消息存储在消息队列中,然后后端服务再根据原创 2022-05-07 17:04:33 · 5640 阅读 · 0 评论 -
关于mysql
1、外键:外键约束不能跨引擎使用,它是为了保证数据的参照完整性创建外键:CONSTRAINT 外键名称[xxx] FOREIGN KEY(本表中字段名xx) REFERENCES 主表名[被子表外键所依赖表的名称xx](id主键列)例如:crate table tb_emp1( id int(11) primary key auto_increment,//自增 name varchar(25) not null,//非空约束 empId int(11) default 111,//默认约束原创 2022-05-06 15:04:27 · 726 阅读 · 0 评论 -
java中的高性能
读写分离:将数据库的读写操作分配到不同的数据库节点上,一般情况下,我那么都会选择一主多从,一台主数据库负责写,其他从数据库负责读。读写分离对提升数据库的并发非常有效,但是同时会发生问题,当主数据库写入数据时,主库和从库同步数据存在一定延迟,这就可能导致数据不一致的情况,这就是主从同步延迟。主从同步延迟解决方案:1、强制将读操作请求由主库处理 2、延迟读取如何实现读写分离:1、部署多台数据库,选择一台作为主数据库,其他作为从数据库2、保证主数据库和从数据库之间数据实时同步,这个过程就是主从复制原创 2022-04-22 18:06:21 · 1547 阅读 · 0 评论 -
java中高可用
高可用:表示一个系统在大部分时间里都是可用的,即使发生什么故障时,服务任然是可用的。限流:对请求的速率进行限制,避免瞬时的大量请求击垮系统。常见限流算法:固定窗口计算器算法:固定窗口就是就是时间窗口,规定我们单位时间请求数量。采用计数器count初始化为0,在一分钟内请求次数超过设定的某个值,后续请求会被拒绝。缺点是无法保证限流速率,因此无法保证激增的流量,如前0.9s没有请求访问,最后0.1s大量请求访问就会处理不完,系统会被击垮。滑动窗口计算器算法:将时间按比例分片,如接口限流一分钟只能处原创 2022-04-22 16:03:16 · 1720 阅读 · 0 评论 -
常见的注解
@ConfigurationPropertites(prefix=""):配置文件属性注解;@Configuration:定义此类为配置文件,作用相当于xml文件;@Bean:是一个方法级别上的注解,主要用在配置类里相当于<beans><bean></bean></beans>;@MapperScan():在SpringBoot启动入口类中添加,开启扫描Mapper接口的包以及子目录,也可以在pom.xml里用<resources><r原创 2021-08-26 23:14:52 · 168 阅读 · 0 评论