KMP一次搞懂 求next数组 /** * 获取一个字符串 pattern 的部分匹配表 * * @param patternStr 用于模式匹配字符串 * @return 存储部分匹配表的每个子串的最长公共前后缀的 next数组 */ public static int[] kmpNext(String patternStr) { //将 pat…
理解原理,建立链接 关于optional类 optional提供了一些方法去处理空值,来帮助我们简化业务代码中空值的判断 java自动内存管理机制 由于jvm的存在,使得java的内存分配,相比c++要容易得多, java的自动内存管理机制,内存管理,个人理解即对象的创建与回收, 在程序运行过程中,我们调用方法区的方法,将对象创建在java堆中, …
分布式系统学习 分布式事务(Seata) 分布式事务概述 CAP理论 CAP理论由计算机科学家Eric Brewer提出,指出在分布式系统中,不可能同时满足以下三个特性: 一致性(Consistency) 所有节点在同一时间看到的数据完全相同(强一致性)。 可用性(Availability) 每个请求都能在合理时间内获得响应(非错误或超时)。 分区…
亚信偷鸡 Redis实现分布式锁(通过Jedis) 保证四个条件 互斥性 任意时刻,只有一个客户端能持有锁 容错性 大部分Redis节点正常运行时,客户端就可以加锁和解锁 不会发生死锁 即使有一个客户端在持有锁期间没有主动解锁,也能保证后续其他客户端能加锁 解铃还须系铃人 谁加的谁释放 代码实现 组件依赖 引入jedis依赖 `<depend…
AI相关学习 AI基础知识学习 AI核心概念 温度 描述大模型输出的随机性,温度越高,输出越随机,温度越低,输出越固定保守。 Prompt提示词 输入给ai的内容称为提示词,分为系统提示词和用户提示词,系统提示词整体约束ai的输出,用户提示词会随用随输。 Token token是大语言模型处理文本的基本单位,可能是单词或标点符号。 模型蒸馏 将复杂…
OSS业务学习 移动网 2G网络各部件(GSM网络拓扑) BTC 基站 无线收发,完成BSC与无线信道之间的转换 BSC 基站控制器 无线基站监控管理 MSC移动交换中心 话音接续,位置更新,跨BSC切换 一个基站的覆盖范围有限,移动情况下打电话需要切换基站 TMSC (汇接局)各地市网络连接 GMSC (关口局)跨运营商连接 HLR归属位置寄存器…
Linux 文件权限 setuid -- 为文件授予特殊权限,当用户运行该文件时可以使用所有者权限 chown --授予文件或目录权限 4 读 2写 1执行 chgrp 更改目录组 umask 预先设置屏蔽位,设置权限时会减去umask的值 sgid 将权限提升至目录所属组,新文件会强制继承组 chown filename 2775 2为sgid的…
腾讯暑期一面凉经 tcp慢启动阈值确定 默认情况应该由接收方确定,或者根据RFC建议设置为无限大,直到首次丢包在实际应用中,比如linux,是设置了10xMss。 页中断策略和虚拟内存技术联系 当内存中没有我们需要的数据页,会触发缺页中断,将我们需要的数据页拉入内存,其中会涉及一些页面置换算法,LRU,LFU,Clock。 关于如何确定JVM的一些…
推拉模式 特性推模式(Push)拉模式(Pull)消息传递方式生产者主动推送消息给消费者消费者主动从消息队列拉取消息实时性高较低消费者负载控制消费者被动接收,可能导致过载消费者主动控制拉取速度,负载更均衡适用场景实时通知、事件驱动批量处理、消费者处理能力有限的场景典型消息队列RabbitMQ、ActiveMQKafka、RocketMQ 各种优先队…
Preview 流表入门 Event 事件记录某件事发生的事实,结构如下 key:Alice value:has arrived in room timestamp:Dec.3, 2019 at 9:06 a.m. Stream 流记录event的历史,是一个有序的event序列,流表示过去和现在,新事件会不断追加到历史中Table表表表示某一时刻…
Docker与虚拟机的区别 1.拥有更少的抽象层2.不需要使用Hypervisor实现硬件资源虚拟化,直接使用实际物理机的硬件资源,因此有着比虚拟机更高的效率docker的优点:1.快,启动快,开销小2.不用关注具体的linux操作系统3.庞大的市场支持,微软,谷歌,亚马逊4.不仅支持linux,windos和mac也支持docker局限:dock…