各大互联网公司面经分享:Java 全栈知识 +1500 道大厂面试真题
这篇文章给大家分享一下我遇到的一些质量较高的面试经历,具体经过就不多说了,就把面试题打出来供各位读者老哥参考如有不全的地方,各位海涵。
猿辅导
-
八皇后问题
-
求二叉树的最长距离(任意两个节点的路径 中最长的)
-
lru 算法的实现
-
设计一个数据结构 满足 put 和 getMedium(中位数)两个方法. (时间复杂度分析, getMedium 在常数,n,log n 时间复杂度返回如何实现)
-
rabbitmq 脑裂问题,rabbitmq 延迟队列实现, rabbitmq 高可用策略(因为项目中用到了 rabbitmq 他们技术选型出现了重叠,问了这个问题)
-
死磕项目细节:其中包括: 设计方案时有没有比较多种方案,为什么选这个方案?你个人最有成就感,最有挑战性的 工作是哪一个?
去哪儿
-
为什么使用 MQ, MQ 如何选型, 消息可靠性如何保证, 如何保证幂等
-
用过 dubbo 吗? 设计一个 rpc 框架
-
介绍一下 https
-
数据库线程池, http 连接池有没有深入看过源码?介绍一下.(项目里用得到了 http client)
-
给你十亿条数据,如何最快的添加到数据库中
-
分布式锁的技术选型, 实现原理, 优劣势比较, zookeeper 的一致性协议原理
-
java 线程同步的几种方式, countdownlatch 和 栅栏的区别
-
synchronized 和 aqs 如何实现可重入锁陌陌
-
分布式锁的实现方案比较,为什么选择 zookeeper, zookeeper 一致性协议原理
-
一致性 Hash 原理,实现,项目中是如何使用一致性 Hash 的,引入了多少虚拟节点?
-
java synchronized 和 AQS 的原理,区别
-
redis 有序列表
-
redis 高可用架构是什么? codis 和 redis cluster 分片的区别
-
两个线程如何交替打印 0 到 99
头条(Go)
-
top-k
-
实现前缀树
-
实现 python 装饰器.方法实现,和类实现, 带参数和不带参数.以及对装饰器的思考
-
如何实现对 多机房,多机架 之前的网络健康情况监控
-
如何理解进程上下文切换, 进程地址空间,为什么需要进程地址空间, 系统调用实现原理, top 命令介绍.
阿里
-
mq 消息可靠性,幂等如何保证
-
分布式锁的实现方案比较,为什么选择 zookeeper, zookeeper 一致性协议原理
-
线程池参数,阻塞队列实现.
-
一致性 Hash 解决什么问题, 如何实现? 虚拟节点的作用?
-
Java 锁的实现方式, 比较? AQS 实现原理?公平非公平实现原理?
-
CAS 实现原理
-
volatile 实现原理, 单例模式
-
java 内存模型, gc 调优的经历. cms gc 的几个阶段, 为什么会出现 stop the world. 常见可优化参数有哪些.
-
为什么需要优化 gc, gc 会导致什么问题
-
mysql 事务隔离级别. mvcc 实现原理
-
mysql 索引原理. 为什么使用 B+树. 及何时无法使用索引?
-
mysql 架构, 引擎层和 server 层 各自负责什么.
-
hashmap 及 concurrenthashmap 实现原理
-
Spring aop 原理,如何定义新的 spring xml 标签
-
合并两个有序链表
-
如何设计一个 大型活动的安保系统(开放题)
-
你平常都在哪些论坛上学习?
-
如何学习一门未知的技术?思考:阿里面试官 虽然不面算法,但是面试考察点全方位打击,从浅入深,揪住不放,直到你不会为止.是收获最多的面试,也是感受到自己差距的面试.
快手
-
线程池实现原理,如何调优
-
如何实现一个延迟队列
-
mysql 索引
-
mysql 事务隔离级别
-
java 锁和常见线程同步方式
-
zookeeper 分布式实现方式及优劣,如何避免 多个客户端同时获取到锁?
-
求二叉树两个节点的共同节点
-
求二叉树的深度(非递归)
-
java 集合常见类及原理
-
tcc 原理
-
netty 的请求处理流程.线程模型
美团
1. HashMap 的实现原理?扩容原理? 为什么 jdk 8 修改了冲突链表的插入位置
2. mysql 的高可用架构.主从同步过程.
3. http 和 rpc 调用的区别
4. redis 如何用单线程支撑高并发, redis 的常见使用场景
5. mq 如何选型为什么用 mq
6. 一致性 Hash 原理
7. 美团外卖的支付 ,要求在 15 分钟内取消未支付的订单. 如何实现
8. 打印 * 星号的等腰三角形
9. 项目的全链路架构, 有没有单点问题,解决单点问题有哪些常见的方案
10. 项目中有哪些可以衡量工作产出的指标.
11. 说一下你负责的 最复杂,参与人数最多,周期最长的项目是如何推进的
12. 你认为自己的优势,劣势在哪里
13. 你对未来的职业规划,你期望的工作内容,方向是什么?
腾讯(Java)1.如何在物理机和容器中获取 cpu 核数,如何设置线程数, 如何主动触发 GC
2.一致性 Hash, Hash 的作用, 为什么叫一致性 Hash,一致性体现在哪里. HashMap 中还可以使用什么方式处理 Hash 冲突
3.线程池参数,优化,原理
4.实现一个功能:cat /usr/local/*.log|grep tencent
5. 如何理解 Future 模式?java 的实现原理
6. Java 阻塞队列实现原理
7. java 锁 volatile 实现原理
8. mysql 索引原理,事务隔离级别, mysql 死锁的场景会有哪些, 内部如何检测死锁的?
9. java 线程同步共有哪几种工具?
10. 你认为 java 设计得比较优秀的地方有哪些?
11. 如何理解面向对象设计,能用你看过的开源代码或者实际项目介绍一下吗?
12. java 类加载器的原理及实际使用场景
13. java 内存模型, 虚拟机栈默认大小
14. 说一下高可用架构的常见解决思路
思考
1. 手撕算法需要准备,面试之前保证刷够 100 题,及部分设计题.
2. 无论会不会,一定不能慌.无论会不会,一定要和面试官确认自己的理解是不是正确,这道题应该如何思考? 避免跑偏
3. 面试重点在于沟通.
3.1 强行总结结论
一定要有条理性的和面试官沟通. 避免东一扫帚,西一扫帚.最好提前想好一些结论,重复几遍.这样面试官可能直接用你的"结论"来 写面试经过,结论,评价等. 说完一件事,最好有条理性的结论,让面试官印象深刻. 即使强行 1,2,3 的划重点结论也比戛然而止强.
3.2 优雅的中断当前问题,只在检查点退出讨论,响应面试官的中断
当面试官出现了疑问,抛出了问题,中断你的回答,一定不要一味的回答,立即响应,把握自己的节奏,向面试官征求意见,能否把剩下的说完.继续快速的说完,记得总结结论求同存异,避免争论。
面试三千问
简历重要吗? 随便写行不行
简历一定要认真写.面试官抛出的问题中,除了常见的高频面试题,就是简历中你写的东西.要保证简历中写的东西,透彻理解! 无论写的是了解,还是精通都要精通. 否则别写我认为不用写的 1.不熟悉的,仅仅是知晓的.2.在学校整的东西,没啥知名度就不要写了 3.github 要有,但是我没有被问过 github 中的项目
项目经历问吗?
项目经历一般是 面试必问的,重点问的. 所以第一步要优先发掘自己项目中的亮点, 把自己做的工作清晰的写出来.自我介绍阶段重点介绍应该也是自己的项目经历,这时最好自己提前准备一份演讲稿把自己的项目亮点说出来.多练几遍.避免不过脑子,黄河决堤式回答,想到哪里说哪里.
常见高频问题呢?
java 锁,线程同步,Juc 包.线程池内存模型,gc 调优 mysql 索引,锁,事务隔离级别.常见分布式高可用架构 redis, mysql, zk, mq 等. 数据同步,数据分片,数据备份等
需要刷题吗?
阿里一般不会问太多算法题.但是至少一半以上公司都会手撕算法. 把 leetcode 各个类型的题都刷十道以上基本没太大问题. hard 题一般不会问.如果自己面试表现非常好,但是因为算法题被刷掉是不是会很遗憾呢?算法题能扩展一个人的思路,还是有用的.也锻炼一个人编码能力. 个人建议白板算法用 python 非常简洁.更聚焦解题思路
如果自己面试表现特别好,职位匹配度非常高. 算法题是可以防水的,会挑简单题问. 目的就是 留下你,怕你答不上来,避免尴尬
但是自己面试比较差, 算法题答得特别好,会不会扭转面试结果呢? 基本不会, 手撕算法只是辅助.项目经历和基础面试题是核心.
面试结果可以问吗?
如果没有面试到 hr,或者 终面面试官没有明确 hr 会联系,我基本都会问. 或者问一下自己的不足. 一般都会告诉自己.另外, 手撕算法 OK,也会被刷掉. 我在陌陌就是 手撕算法非常完美,结果还是挂了.
一般几轮面试?
不算 hr ,基本都是三轮及以上. 但如果二轮面试官开始扯虚的,和你介绍项目,问你职业规划 也许二面就是终面. 不清楚就问一下面试官.
平时工作划水, 面试临时抱佛脚行不行?
不幸当面试官逼问项目细节时, 如果平时没有对细节特别熟悉,做事马马虎虎,技术深度不够,例如技术选型为什么这么做,其他方案?优劣势是什么?如果没有调研,面试时,很快会露出马脚.如果对项目的整体架构不熟悉,只熟悉自己的模块,也会可能被面试官问到关联的模块,项目如果自己不熟悉,马上就会支支吾吾.如果你回答,这块不是我负责的,我不太熟悉,就会让面试官对你产生 没有大局观,主动意识不够的狐疑.评价时会被评"只能完成自己模块内的工作,对系统的全局没有了解,主动意识不强.自我驱动意识差"工作时,可能仅仅聚焦业务,对于项目中应用的技术关注不足. 面试时候就会被面试官揪住.如果当时不思考清晰,并且面试前没有意识到这块技术风险, 就会给面试带来很大风险.美团面试官曾问我,介绍一个你主要负责的 参与方最多,周期最长,最复杂的一个项目如何推进的? 如果平时工作不积极,不主动思考,面试被摊上这么一个问题.基本上哑口无言. (我就目瞪口呆了)
仅仅看博客,把高频面试题搞懂行不行? (问题驱动式准备面试)
这是必须要做的事情.但是仅仅做到这些还远远不够例如:阿里面试官问:gc 为什么一定要 stop the world? 一般博客没有给出明确清晰直观的原因
一致性 Hash 如何实现? 手撕一下.为什么叫一致性 hash,一致性体现在哪里? 一般博客没有 lru 算法手撕一下. 博客有,看一遍就能手撕了?
redis 和 zk 分布式锁实现如何选型? 各自缺点,优势?项目使用时如何避免缺点带来的负面影响?
如何基于 AQS 实现获取锁的公平性非公平性?
面试官甚至给你埋坑,故意说一个错误的,看你能否反驳
我之前被带坑过, 线程池问题 面试官问:是先到 max size 还是先添加到阻塞队列?我说 阻塞队列满了才会继续创建线程到 max size 面试官: 是这样吗? 那么如果是无界队列岂不是永远无法到达 max size 我心想: 是啊,有道理,我可能记错了.然后被面试官带偏了
所以结论是,光看懂记下来,不够,要深刻理解.时刻带着问题去学习.问题驱动式学习
最后你会发现,过了许久,你印象最深刻的还是自己当初提出来的疑问及其解决思路和答案
最后更新一下面试结果吧:
腾讯: 加班太多,部门一般, 再加上时间不充裕 放弃后续面试
去哪儿:23K
快手:一面挂了
陌陌: 二面挂
头条: 25k (据说 15 薪)
美团: 25k 给不起(说面试过了, 要了期望薪资,没了下文. 现在美团离职人超多, 招人薪资压得很低)
蚂蚁金服:hc 收缩 发不出 offer, 据面试官承诺可以给到 28k+.(蚂蚁 p6 是基本没有议价权,所以直接告诉大概薪资. 但是没有纸质 offer 可信度也不是特别高)
猿辅导: 25-30k 之间 (据说 14 薪, 入职了这家, 具体不透露了, 反正毕业两年的人绝大部分在这个区间里)
最后权衡了一下 , 不太想玩命加班. 去了猿辅导. 这些薪资基本上也算是市场平均价吧
猿辅导的福利基本上和宣传的出入不大.但是项目紧急还是需要加班,不过这点强度算是一个上升期互联网公司的最后底线吧
对于面试,刷面试题固然重要,但是我觉得理解核心的知识点更重要,下面这份大牛整理出来的 Java 全栈知识点可以说囊括了当前最热门的一些技术,可供大家参考
JVM
-
线程
-
JVM 内存区域
-
JVM 运行时内存
-
垃圾回收与算法
-
JAVA 四中引|用类型
-
GC 分代收集算法 VS 分区收集算法
-
GC 垃圾收集器
-
JAVA IO/NIO
-
JVM 类加载机制
Java 集合
-
接口继承关系和实现
-
List
-
Set
-
Map
-
JAVA 多线程并发
-
JAVA 并发知识库
-
JAVA 线程实现/创建方式
-
4 种线程池
-
线程生命周期(状态)
-
终止线程 4 种方式
-
sleep 与 wait 区别
-
start 与 run 区别
-
JAVA 后台线程
-
JAVA 锁
-
线程基本方法
-
线程上下文切换
-
同步锁与死锁
-
线程池原理
-
JAVA 阻塞队列原理
-
Clicarrier. CountDownLatch. Semaphore 的用法
-
volatile 关键字的作用(变量可见性、禁止重排序)
-
如何在两个线程之间共享数据
-
ThreadLocal 作用(线程本地存储)
-
synchronized 和 ReentrantL ock 的区别
-
ConcurrentHashMap 并发
-
Java 中用到的线程调度
-
进程调度算法
-
什么是 CAS (比较并交换乐观锁机制锁自旋)
-
什么是 AQS (抽象的队列同步器)
Spring 原理
-
Spring 特点
-
Spring 核心组件
-
Spring 常用模块
-
Spring 主要包
-
Spring 常用注解
-
Spring 第三方结合
-
Spring 10C 原理
-
Spring APO 原理
-
Spring MVC 原理
-
Spring Boot 原理
-
JPA 原理
-
Mybatis 缓存
-
Tomcat 架构
微服务
-
服务注册发现
-
API 网关
-
配置中心
-
事件调度(kafka)
-
服务跟踪(starter-sleuth)
-
服务熔断(Hystrix)
-
API 管理
Netty 与 RPC
-
Netty 原理
-
Netty 高性能
-
Netty RPC 实现
-
RMI 实现方式
-
Protoclol Buffer
-
Thrift
网络
-
网络 7 层架构
-
TCP/IP 原理
-
TCP 三次握手/四次挥手
-
HTTP 原理
-
CDN 原理
RabbitMQ
-
概念
-
RabbitMQ 架构
-
Exchange 类型
设计模式
-
设计原则
-
工厂方法模式
-
抽象工厂模式
-
单例模式
-
建造者模式
-
原型模式
-
适配器模式
-
装饰器模式
-
代理模式
-
外观模式
-
桥接模式
-
组合模式
-
享元模式
-
策略模式
-
模板方法模式
-
观察者模式
-
迭代子模式
-
责任链模式
-
命令模式
-
备忘录模式
-
状态模式
-
访问者模式
-
中介者模式
-
解释器模式
负载均衡
-
四层负载均衡 vs 七层负载均衡
-
负载均衡算法/策略
-
LVS
-
Keepalive
-
Nginx 反向代理负载均衡
-
HAProxy
数据库
-
存储引擎
-
索引
-
数据库三范式
-
数据库是事务
-
存储过程(特定功能的 SQL 语句集)
-
触发器(一段能自动执行的程序)
-
数据库并发策略
-
数据库锁
-
基于 Redis 分布式锁
-
分区分表
-
两阶段提交协议
-
三阶段提交协议
-
柔性事务
-
CAP
分布式缓存
-
缓存雪崩
-
缓存穿透
-
缓存预热
-
缓存更新
-
缓存降级
一致性算法
-
Paxos
-
Zab
-
Raft
-
NWR
-
Gossip
-
一致性 Hash
JAVA 算法
-
二分查找
-
冒泡排序算法
-
插入排序算法
-
快速排序算法
-
希尔排序算法
-
归并排序算法
-
桶排序算法
-
基数排序算法
-
剪枝算法
-
回溯算法
-
最短路径算法
-
最大子数组算法
-
最长公共子序算法
-
最小生成树算法
相关文章:

各大互联网公司面经分享:Java 全栈知识 +1500 道大厂面试真题
这篇文章给大家分享一下我遇到的一些质量较高的面试经历,具体经过就不多说了,就把面试题打出来供各位读者老哥参考如有不全的地方,各位海涵。 猿辅导 八皇后问题 求二叉树的最长距离(任意两个节点的路径 中最长的) lru 算法的实现 设计一…...

【LeetCode】剑指offer礼物的最大价值
礼物的最大价值 题目描述算法分析编程代码 链接: 礼物的最大价值 题目描述 算法分析 编程代码 class Solution { public:int maxValue(vector<vector<int>>& grid) {int m grid.size();int n grid[0].size();vector<vector<int>> dp(m1,vector…...

应用层协议——https
文章目录 1. HTTPS 是什么2. 什么是"加密"3. 常见的加密方式4. 数据摘要 && 数字签名5. HTTPS 的工作过程探究5.1 方案1 - 只使用对称加密5.2 方案2 - 只使用非对称加密5.3 方案3 - 双方都使用非对称加密5.4 方案4 - 非对称加密 对称加密5.5 中间人攻击5.6 …...

Emacs之实现鼠标/键盘选中即拷贝外界内容(一百二十)
简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生…...

智慧城市环境污染数据采集远程监控方案4G工业路由器应用
随着科技水平的发展和人民生活水平的提高,城市环境污染问题日渐严峻,尤其是在发展迅速的国家,环境污染问题便更为突出。许多发达国家将重污染工厂搬到发展中国家,这导致发展中国家的环境污染日益严重。严重的环境污染也带来了一系…...

大数据技术之Clickhouse---入门篇---安装
星光下的赶路人star的个人主页 努力到无能为力,拼搏到感动自己 文章目录 1、ClickHouse的安装1.1 准备工作1.1.1 确定防火墙处于关闭状态1.1.2 CentOS取消打开文件数限制1.1.3 安装依赖(所有节点都进行依赖安装)1.1.4 CentOS取消SELINUX 1.2 …...

vue3搭建Arco design UI框架
技术:Vue3.2.40 UI框架:Arco design 2.44.7 需要安装:yarn 1.22.19 和npm 8.19.4 1.第一步安装本地全局arco脚手架 管理员运行CMD npm i -g arco-cli安装成功后如下: 2.第二步在需要存放项目的文件夹拉取项目 我这里把项目存放在 D:\W…...

提升数据质量的四大有效方式
在数字时代的今天,企业对于高质量、值得信赖的数据的需求越来越高。 目前,已经有很多企业将数据质量视为技术问题而非业务问题,这也是获取高质量数据的最大限制因素。只有查找技术缺陷,例如重复数据、缺失值、乱序序列࿰…...

ALLEGRO之FlowPlan
本文主要讲述了ALLEGRO的FlowPlan菜单。 (1)Auto Bundle:暂不清楚; (2)Create Bundle:暂不清楚; (3)Delete Bundle:暂不清楚; &…...

Python - OpenCV实现摄像头人脸识别(亲测版)
要使用Python 3和OpenCV进行摄像头人脸识别,您可以按照以下步骤进行操作: 0.安装OpenCV软件 去官网直接下载安装即可,如果是C使用OpenCV,需要使用编译源码并配置环境变量。 1.安装OpenCV库 在命令行中输入以下命令: pip inst…...
date日期相关操作汇总
一、若表中date字段存储形式为:2021-05-16 在表中找到2021年8月份数据的方法 方法1. like 语法:where date like 2021-08%; 前面能匹配上的就是2021年8月份。 方法2. year,month函数(mysql中有,oracle中不确定) 语法&…...
生产者-消费者模式
文章目录 一、生产者-消费者模式的应用场景1、Excutor任务执行框架:2、消息中间件active MQ:3、任务的处理时间比较长的情况下:二、生产者-消费者模式的优点1、优点:2、缺点:二、C++实现生产者-消费者模型1、依赖2、实现细节3、问题4、核心代码生产者-消费者模式是一个十分…...

Jetson Nano之ROS入门 -- YOLO目标检测与定位
文章目录 前言一、yolo板端部署推理二、目标深度测距三、目标方位解算与导航点设定1、相机成像原理2、Python实现目标定位 总结 前言 Darknet_ros是一个基于ROS(机器人操作系统)的开源深度学习框架,它使用YOLO算法进行目标检测和识别。YOLO算…...

【移动机器人运动规划】01 —— 常见地图基础 |图搜索基础
文章目录 前言相关代码整理:相关文章: 可视化网址:常用地图基础Occupancy grid mapOcto-mapVoxel hashingPoint cloud mapTSDF mapESDF mapFree-space RoadmapVoronoi Diagram Map 图搜索基础配置空间图搜索基本概念DijkstraAStarAstar的一些变种&#x…...
mongotop跟踪Mongodb集合读取和写入数据
版本控制 从 MongoDB 4.4 开始,MongoDB 数据库工具现在与 MongoDB 服务器分开发布,并使用自己的版本控制,初始版本为100.0.0. 此前,这些工具与 MongoDB 服务器一起发布,并使用匹配的版本控制。 兼容性 mongotop 版本…...
Linux中使用du命令来查看目录的大小
在Linux中,你可以使用du命令来查看目录的大小。下面是一些常用的du命令选项: -h:以人类可读的格式显示文件大小。-s:仅显示总大小,而不显示每个子目录的大小。-c:显示总大小,并在最后一行显示总…...

【Linux】进程篇Ⅰ:进程信息、进程状态、环境变量、进程地址空间
文章目录 一、概述二、查看进程信息1. 系统文件夹 /proc2. 用户级工具 ps3. getpid() 函数:查看进程 PID4. 用 kill 杀进程5. 进程优先级 二、进程状态分析0. 1. R (running) 运行状态2. S (sleeping) 休眠状态3. D (disk sleep) 不可中断的休眠状态4. T (stopped) …...
保护 TDengine 查询性能——3.0 如何大幅降低乱序数据干扰?
在时序数据库(Time Series Database)场景下,乱序数据的定义为:“时间戳(timestamp)不按照递增顺序到达数据库的数据。”虽然它的定义很简单,但时序数据库需要有相应的处理逻辑来保证数据存储时的…...

状态机实现N位按键消抖
状态机实现N位按键消抖 1、原理 利用状态机实现按键的消抖,具体的原理可参考 (50条消息) 基于FPGA的按键消抖_fpga 按键消抖_辣子鸡味的橘子的博客-CSDN博客 状态机简介: 状态机分类可以主要分为两类:moore和mealy 根据三段式状态机最后…...

uniapp自定义消息语音
需求是后端推送的消息APP要响自定义语音,利用官方插件,总结下整体流程 uniapp后台配置 因为2.0只支持uniapp自己的后台发送消息,所以要自己的后台发送消息只能用1.0 插件地址和代码 插件地址: link let isIos (plus.os.name "iOS&qu…...

TDengine 快速体验(Docker 镜像方式)
简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能,本节首先介绍如何通过 Docker 快速体验 TDengine,然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker,请使用 安装包的方式快…...

(十)学生端搭建
本次旨在将之前的已完成的部分功能进行拼装到学生端,同时完善学生端的构建。本次工作主要包括: 1.学生端整体界面布局 2.模拟考场与部分个人画像流程的串联 3.整体学生端逻辑 一、学生端 在主界面可以选择自己的用户角色 选择学生则进入学生登录界面…...

Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件
今天呢,博主的学习进度也是步入了Java Mybatis 框架,目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学,希望能对大家有所帮助,也特别欢迎大家指点不足之处,小生很乐意接受正确的建议&…...
在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module
1、为什么要修改 CONNECT 报文? 多租户隔离:自动为接入设备追加租户前缀,后端按 ClientID 拆分队列。零代码鉴权:将入站用户名替换为 OAuth Access-Token,后端 Broker 统一校验。灰度发布:根据 IP/地理位写…...
OkHttp 中实现断点续传 demo
在 OkHttp 中实现断点续传主要通过以下步骤完成,核心是利用 HTTP 协议的 Range 请求头指定下载范围: 实现原理 Range 请求头:向服务器请求文件的特定字节范围(如 Range: bytes1024-) 本地文件记录:保存已…...

华为OD机试-食堂供餐-二分法
import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...

论文浅尝 | 基于判别指令微调生成式大语言模型的知识图谱补全方法(ISWC2024)
笔记整理:刘治强,浙江大学硕士生,研究方向为知识图谱表示学习,大语言模型 论文链接:http://arxiv.org/abs/2407.16127 发表会议:ISWC 2024 1. 动机 传统的知识图谱补全(KGC)模型通过…...
关于 WASM:1. WASM 基础原理
一、WASM 简介 1.1 WebAssembly 是什么? WebAssembly(WASM) 是一种能在现代浏览器中高效运行的二进制指令格式,它不是传统的编程语言,而是一种 低级字节码格式,可由高级语言(如 C、C、Rust&am…...
实现弹窗随键盘上移居中
实现弹窗随键盘上移的核心思路 在Android中,可以通过监听键盘的显示和隐藏事件,动态调整弹窗的位置。关键点在于获取键盘高度,并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...

分布式增量爬虫实现方案
之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面,避免重复抓取,以节省资源和时间。 在分布式环境下,增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路:将增量判…...