小红书JAVA后端一面汇总总结

小红书 2 年社招 Java 后端一面的面经,面试的风格是从一个知识一层一层深入问到底层。

从 Java IO,问到 socket 底层。从 Java 内存,问到操作系统内存。所以学习知识的时候,不要只

看八股文,还是需要从点到面一层层去掌握, 才能比较好应对这类的面试场景。

问题记录

  1. 自我介绍

  2. 讲一下BIO,NIO,AIO的区别

    1. 回答:IO分为两个阶段:数据准备阶段和数据拷贝阶段;BIO需要等待数据准备和数据拷贝;NIO会轮询数据是否准备完成,需要等待数据拷贝;AIO会在数据准备完成和数据拷贝完成后收到通知,然后执行异步处理逻辑

  3. 了解Ngnix原理吗,Ngnix IO模型是什么

    1. Review:Reactor模型包含单Reactor单进程/线程,单Reactor多进程/多线程,多Reactor多进程/多线程

    2. 回答:这块讲得比较乱,讲了一下Reactor模型,把多Reactor和多进程搞混了

    3. 追问:Reactor和NIO的关系

    4. 回答:。。。

    5. 追问:为什么netty要拆成boss和worker,把accept和read/write分开的好处是什么

    6. 回答:对于单线程模型,read事件需要等待IO,会阻塞后续连接的建立;

    7. 追问:A进程建立连接后怎么交给B进程去读

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/17099.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux近两年高危漏洞修复过程记录

一、背景 2023年8月份,面对即将到来的“大运会”、“亚运会”,今年的例行安全护网阶段也将迎来新的挑战和时刻,为此相关部门发布了国家级实战攻防演练已进入紧急「备战」时刻!这里我们主要说一下Linux OS层面的漏洞处理&#xff0…

SpringBoot之logging基于application多环境配置文件配置日志输出到文件(非spring-logback.xml)

一般情况:日志文件按yyyy-MM-dd分文件夹,%i按单个日志文件大小切割文件并用索引命名。 开发环境(dev):只输出到控制台,不输出到文件,日志级别为INFO。测试环境(test)&am…

spring5源码篇(12)——spring-mvc请求流程

spring-framework 版本:v5.3.19 文章目录 一、请求流程1、处理器映射器1.1、 RequestMappingHandlerMapping1.2、获取对应的映射方法1.3、添加拦截器 2、获取合适的处理器适配器3、通过处理器适配器执行处理器方法3.1、拦截器的前置后置3.2、处理器的执行3.2.1 参数…

React哲学——官方示例

在本篇技术博客中,我们将介绍React官方示例:React哲学。我们将深入探讨这个示例中使用的组件化、状态管理和数据流等核心概念。让我们一起开始吧! 项目概览 React是一个流行的JavaScript库,用于构建用户界面。React的设计理念是…

QuantMania!《快乐机器学习》和《Python 从入门到入迷》作者,FRM,CAIA

王的机器主理人 王圣元 (FRM, CAIA) 某加密货币公司 Head of Quant 冬海集团 SeaMoney 建模负责人 八方咨询 量化总监 新加坡国立大学金融数学硕士 新加坡国立大学量化金融学士 《快乐机器学习》的作者 《Python 从入门到入迷》的作者 第一本书 《快乐机器学习》 第二本书《Pyt…

【图论】BFS中的最短路模型

算法提高课笔记 目录 单源最短路迷宫问题题意思路代码 武士风度的牛题意思路代码 抓住那头牛题意思路代码 多源最短路矩阵距离题意思路代码 双端队列BFS电路维修题意思路代码(加了注释) BFS可以解决边权为1的最短路问题,下面是相关例题 单源…

css如何创建视频背景

要在网页中创建一个视频背景,你可以使用CSS和HTML来实现。以下是一种简单的方法: 1.首先,准备你的视频文件:将你的视频文件(通常是.mp4格式)准备好,并确保它已经上传到你的网站或服务器上。 2…

解决ComposerStaticInit类重复加载问题

Tp5中composer安装phpoffice后报错 Cannot declare class Composer\Autoload\ComposerStaticInit6c9266e89aa536667bf36f59ad8e6e6b, because the name is already in use 错误原因: 使用ThinkPHP5框架的项目,在引用某些包的时候,可能会通过其它包&…

位图和 DC 有什么特别之处?

相信设备上下文 (DC, Device Context) 对你来说,应该很熟悉。 基本工作方式是,你可以通过调用 SelectObject 来将画笔(Pen),画刷(Brush),字体(Font)和位图(Bitmap)等这些对象选入设备上下文中,但是,这里的位…

初学HTML:采用CSS绘制一幅夏天的图

下面代码使用了HTML和CSS来绘制一幅炎炎夏日吃西瓜的画面。其中&#xff0c;使用了伪元素和阴影等技巧来实现部分效果。 <!DOCTYPE html> <html> <head><title>炎炎夏日吃西瓜</title><style>body {background-color: #add8e6; /* 背景颜…

小程序原生实现左右锚点联动

效果 wxml <view classbox><scroll-view scroll-y scroll-with-animation style"width:25%"><view classnav><view wx:for"{{navList}}" wx:keyindex class"title {{index active ?select:}}"data-index{{index}} bin…

面试题 - 设计模式

文章目录 一、设计模式的六大原则二、 设计模式有哪些&#xff0c;简要叙述&#xff1f;三、MVC的理解四、代理委托模式五、观察者模式1. KVO原理&#xff1a;2. KVO的详细流程3. 如何手动触发KVO&#xff1a;4. swift的kvo&#xff1a; 六、工厂模式七、单例模式八. KVC实现原…

html滚动下滑分页

手机端网页滑动触发分页 window.addEventListener(scroll, handleScroll);var page 1;function handleScroll(arg) {var clientHeight document.documentElement.clientHeight;//客户区高度var scrollHeight document.documentElement.scrollHeight;//没滚动下原内容高度var…

Windows下安装Hive(包安装成功)

Windows下安装Hive Hive与Hadoop的版本选择很关键&#xff0c;千万不能选错&#xff0c;否则各种报错。一、Hive下载1.1、官网下载Hive1.2、网盘下载Hive 二、解压安装包&#xff0c;配置Hive环境变量2.1、环境变量新增&#xff1a;HIVE_HOME2.2、修改Path环境变量&#xff0c;…

js实现push重复的数组拿到最新的数据

2023.8.1今天我学习了如何使用js把重复push的数组只取最新的。 如&#xff1a;当我们使用input方法需要对数据进行叠加的时候可能会对同一条数据进行多次操作。 如&#xff1a; data:[ {id:1,name:张三},{id:2,name:李四},{id:1,name:张三三} ] 通过这个数组我们会发现id为…

JVM、Redis、反射

JVM JVM是Java virtual machine&#xff08;Java虚拟机&#xff09;的缩写&#xff0c;是一种用于计算机的规范&#xff0c;是通过在实际计算机上仿真模拟各种计算机功能来实现的。 主要组件构成&#xff1a; 1.类加载器 子系统负责从文件系统或者网络中加载Class文件&…

Git 和 Git Book 学习笔记

Git 在线学习命令&#xff1a; https://learngitbranching.js.org/ 特点 LearnGitBranching 通过可视化动画效果来帮助开发人员理解Git命令&#xff0c;并且配有游戏闯关功能来一步一步学习Git命令。 开发人员可以在LearnGitBranching提供的沙盒里面执行相关的Git命令。 安…

深度学习实战 | 开发一个围棋智能体

01、数据模型 神经网络的训练过程需要将HD5文件中的样本数据解析出来。数据集中的棋盘局面可以提取后直接输入卷积网络进行特征提取。从属性中取出样本标签用于神经网络的损失计算和反向传播。如图1所示&#xff0c;落子方信息从属性中提取后不用参与棋盘局面的特征提取&#…

Spire.Office for.NET Crack

Spire.Office for.NET Crack Spire.Office for.NET是E-iceblue提供的企业级Office.NET API的组合。它包括Spire.Doc、Spire.XLS、Spire.Seadsheet、Spire.Presentation、Spire_PDF、Spire.DataExport、SpireOfficeViewer、Spire-PDFViewer、Spire.DocViewer、Spire.Barcode和Sp…

在linux中怎样同时运行三个微服务保证退出时不会终止

前言 1.maven中打jar包 使用插件打包,必须在pom.xml中添加插件,否则不能在linux中编译运行 <build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version&g…