- 博客(84)
- 收藏
- 关注
原创 私服访问maven文件时报Since Maven 3.8.1 http repositories are blocked
上面博客说明了解决方案,其实是因为maven3.8.1+的版本会自动拦截http的请求,导致访问私服的请求发送不出去,所以我们要手动的去把这个安全校验给关了,(修改settings.
2024-05-30 21:34:05 519
原创 联邦学习中毒攻击
联邦学习中的攻击与防御综述 - 知乎 (zhihu.com)联邦学习后门攻击总结(2019-2022) - 知乎 (zhihu.com)
2024-05-19 17:58:36 123
原创 区块链在物流中的应用
区块链如何在物流行业中应用? - 知乎 (zhihu.com)区块链+物流:打造智能物流可信生态网络 - 知乎 (zhihu.com)
2024-04-21 21:38:42 164
原创 星弟专享面试题汇总(星弟亲自总结)
synchronized与ReentrantLock的区别。三个线程如何交替打印1, 2, 3。xml中手写一个分页。
2024-04-06 12:05:35 312
原创 千万级数据用什么数据结构判断某个数据是否存在?
首先要计算出两个原始hash,然后通过这两个原始hash不断推出其他hash。数组大小和hash函数数量如何确定?通过公式可以得出(与log2有关)使用什么hash函数?
2024-04-03 21:03:58 409
原创 TomCat如何防止多个服务jar包冲突?
注意:TomCat的类加载机制破坏了双亲委派,它是先加载web-app应用类加载器,再加载common加载器,从common往上还是符合双亲委派机制。好处是增加了灵活性,在某些场景下,我们确实需要这种特性。每个服务用不同的应用类加载器加载,就能防止冲突。
2024-04-03 20:58:17 309
原创 长连接详解
一分钟了解长连接 、短连接、心跳机制与断线重连 - 知乎 (zhihu.com)websocket 实现长连接原理_websocket 是长连接吗-CSDN博客
2024-04-03 15:07:03 254
原创 es与mysql同步问题
4 种 MySQL 同步 ES 方案,yyds! - 知乎 (zhihu.com)logstash全量同步 - 搜索 (bing.com)logstash全量和增量同步数据到mysql_logstash全量同步-CSDN博客
2024-03-30 17:20:45 305
原创 java注解详解
注解的本质就是一个继承了 Annotation 接口的接口。我们可以在这个接口里写一些抽象的方法,然后再去写一个匹配这个标签的增强方法,用aop+反射的方式,当匹配到切点表达式的时候就调用增强方法,然后用反射的方式进行对原有对象进行增强。
2024-03-29 12:16:02 184
原创 如何解决redis里的大key问题
Redis中什么是Big Key(大key)问题?如何解决Big Key问题?_redis bigkey-CSDN博客
2024-03-27 12:16:02 294
原创 分布式事务
另一种是base理论实现柔性事务,思想是把管理事务XA的操作,从数据库提到了业务层自己实现,然后通过某种补偿方法来应对回滚的情况,比如seata的AT模式,就是通过每个分支事务的库都维护一个undolog表,当回滚的时候就去读取unodolog表的操作,进行反向操作实现的。缺点是可能会出现短期数据不一致的问题。一种是保证强一致性,在数据库层实现XA两阶段提交,这种方案缺点是占有锁的时间太长,影响并发,好处是数据强一致性,不会出现一段时间数据不一致的问题,生产中用的比较少。
2024-03-26 22:50:34 334
原创 redis集群数据一致性如何保证?
节点A与节点B之间的key-2,就存在节点B里面,(两个节点之间的数据,交给顺时针的后一个节点存储),这样的好处是即使有节点(机器)变化,最多也会影响一个节点数据的迁移,不会影响其他节点的数据,(具体实现,可以维护一个节点数据(有序的),拿到一个key的hash我们可以通过二分查找来知道具体存在哪个节点上)。业界做法是用一致性哈希算法,将机器节点的ip值,对一个很大的数取模比如2^32,一般的做法是对key进行hash,比如有4台机器,就对4取模。这样的坏处是增加或者减少机器的时候,会有大量数据进行迁移。
2024-03-22 17:32:33 332
原创 线程池中的一个线程异常了,会怎么处理?
1.会将异常打印在控制台,如果是excute方法,如果是submit方法,会在调用future.get方法时打印错误。3.线程池会将异常线程remove掉,然后创建一个新线程放入线程池。2.不会影响其他线程的运行。
2024-03-21 14:40:40 412
原创 mysql是如何查询数据的?
我们先通过b+树定位到一个数据页,然后数据页里面是如何查询的呢?他会对行数据进行分组(按主键大小用链表相连),查询时对组进行二分查找,对组内元素用遍历的方式。(不用担心一个组内的元素特别多,遍历会花很多时间,innodb规定一个组最多8条行记录),以这种方式我们把链表O(n)的时间复杂度,缩小到了近似O(logn)的时间复杂度。首先外层是一个b+树,b+树的每个节点都是一个数据页,数据页包含了文件头,页目录,行数据。本篇文章想从宏观的角度谈谈mysql究竟是如何定位到一条行记录的。
2024-03-12 18:01:17 469
原创 倒排索引原理简介
首先对每一个文档进行编号,然后对文档进行分词,对分完词的词汇进行分组,每个词汇组里存的是文档编号,这样我们在搜索一个关键字的时候,就可以找到对应的文档id了。
2024-03-12 16:34:32 368
原创 一次性插入10万条数据,该如何操作?
第二种方式:一条 SQL 插入。(在浪潮里是通过这个方式实现的,merge into加for each方式写在xml里,一条sql执行完插入,减少网络IO)第一种方式:他的优势是jdbc会帮我们进行预编译,然后把预编译结果缓存起来(我对这个预编译的理解是,一条sql到了mysql的sever层,需要进行词法分析,语法分析,构建语法树,然后检查字段是否有错,把*替换成所有列这些操作),他是用循环的形式进行插入的,缺点就是如果mysql服务器和应用服务器不是同一台的话,需要多次网络IO,这里可能会影响性能。
2024-03-12 12:43:45 578
原创 如何定位慢查询?如何解决?
3.profile指令,该指令可以看所有sql的查询时间(用于一些sql没达到我们设定的阈值,但是他的执行时间超过我们的预期)3.如果数据真的很多,我们可以把一次查询拆分成多次查询,比如查询一段数据,然后记录一个id,下次从比这个id值大的数据查。1.能用索引尽量走索引,出现慢查询一般都是因为索引失效了,走了全表扫描等情况(引出索引失效场景)1.慢查询日志(超过阈值则会记录在慢查询日志里面)2.用explain指令查看执行计划。2.考虑分库分表,读写分离。
2024-03-12 10:35:12 425
原创 tcp/ip中的协议栈是什么
像应用层的协议,http,dns都是在应用层实现的,也就是在用户态中实现的,我们可以控制,但是往下,传输层,网络层这些是在内核中定义的,是内核写好的,所以他用了一个协议栈进行管理,用于流程控制的作用,这样我们只需要在用户态通过系统调用触发协议栈,协议栈接受信息后,就会自动触发里面定义好的流程逻辑,一直往下走下去。
2024-03-10 11:55:03 361
原创 @Bean注解理解
简单来说@Bean注解是用在方法上的,将方法返回的对象放到IOC容器里面,他的作用是:如果有个第三方jar包,我们想把它里面的对象放到ioc容器里面,那么诸如@Service,@Component这些注解就用不了了,这时候我们可以定义个方法,在方法中获取第三方jar包的类,然后return,最后对这个方法加上个@bean注解即可将第三方jar包对象放到ioc里面。
2024-01-15 10:02:44 547 1
原创 为什么mysql的索引结构用B+树而不用skipList?
2.b+树是多叉树,而跳表类似于二叉树,比如跳表有一个当前层的向右指针,还有一个向下层的指针,其实旋转一下, 就是二叉树的样子,多叉树可以使得树的高度更小,提高查询效率。1.b+树的非叶子节点存的是数据页地址,而跳表存的是真实数据,所以,在相同内存大小(一个数据页范围)中,B+树可以存储更多的索引,也就是可以让树变得更矮胖。
2024-01-13 16:33:34 775
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人