数字马力校招补录一二面[凉经]

时间线

  • 不记得是什么时候投的,在哪里投的,在官网没查到投递信息
  • 6.7提示更新简历信息
  • 6.20一面
  • 6.21一面通过通知
  • 6.28二面
  • 6.29挂(挂了,没通知,自己联系hr询问的)

一面

面试形式:钉钉视频面试

面试官:阿里巴巴(我也不知道怎么回事,面试官在自我介绍时,说是阿里巴巴的)

算法题:力扣岛屿数量(30Min),算法写完后,让我说一下思路

在我写算法的30分钟过程中,面试官去看了我简历,因为我简历上有些Github信息,他就去我Github看,我在准备面试过程中,有记录xmind文档,放在了Github仓库,面试官全下载下来看了,在写完算法后,他说他要问的问题,我那上面都有,再背出来就没意思了,所以就问了其他的问题

  1. 你在Github有开源项目,git cherry-pick这个命令会使用么
  2. 开源项目星少,没人参与,这个命令只了解过,当时还忘记了是什么
  3. 知道jvm中的jvm safepoint么(说了知道UnSafe类,不知道这个)
  4. 过了10天了,其他的记不起来了,还有好几个问题
  5. 聊我那个项目(博客系统)
  6. 这个系统和其他系统有什么亮点
  7. 平时从哪些地方学习新技术
  8. 还学过其他语言么
  9. 面试官后面去我博客系统注册登录了,因为是微服务系统,服务器才2C4G,服务器上部署的服务有点多,登录和注册花的时间比较长,我之前测试是15s左右,但是面试官注册的时候,花费了50s,关键还没注册成功,他就问我是什么原因造成响应高的,我说在这个操作里面服务间调用比较多,他说这个不会花费多长时间,让我去服务器排查
  10. 我登录服务器之后,因为日志记录这一块,service处理时间没记录,我临时改了代码,重新部署,部署之前,把之前运行的日志做了一个备份,md,我备份的时候,提示系统存储使用100%,我查了一下是nacos和sentinel的日志占了10多G,我清除这些日志,重新部署,测试好几次,登录注册时间降到了500ms左右,好尴尬

二面

  1. 自我介绍在说到项目的时候,介绍一下Github的star数,还有就是这个项目的技术栈,项目的难点和亮点
  2. 介绍一下自己觉得比较好的项目,没有说难点,只说了技术栈,需要详细介绍一下
  3. 介绍一下JVM的内存模型在堆,方法区的知识点有待提高,半知
  4. 让你实现一个程序,让方法区报OOM这里对于方法区的概念没有记熟,只记得方法区能存储常量,但是方法区存储的东西有类的结构信息,包括类的名称,父类的名称,访问权限修饰符,以及类和类中方法的成员变量的字段名称和类型运行时常量池,不仅仅是指字符串常量池,还包括类的全限定名称,父类的名称,访问权限修饰符,字段和方法的名称等静态变量,注意了,静态变量也是存储在方法区中的类的字节码,这里并不是将Student.class整个字节码文件加载到jvm中,而是按需进行加载,是通过类加载器进行加载的构造函数和方法的字节码这个程序没有写出来,我想到的就是通过String.intern()方法将随机的字符串放入方法区,没有想到还有类的全限定名等等
  5. 说一下知道的分布式锁,这里讲了Redis的setnx,还有Redisssion(但是不知道)
  6. 分布式锁在这个项目里面是如何来做的项目需要重新写一下,这一块属于是知识盲区
  7. 点赞功能在高并发情况下,会存在数据安全的问题,那么如果来解决这里说了两个层面,一个是通过锁来实现,synchronized和RetrantLock,还有一个是通过MySQL的for update来实现,但是for update的话,因为只能进行单一操作,被排除如果是使用锁的话,又会存在qps问题
  8. 假如现在有这么一种情况,有两个线程,线程A对点赞量+1,然后线程2也对点赞量+1,但是需要使线程2+1是在线程1操作成功的情况下去实现的,这种不加锁如何处理没有说出来,这个可以通过乐观锁来实现,cas+版本号,这个CAS操作并不是需要我们使用UnSafe这个类来做,我们可以使用AtomicXXX,因为他是原子操作,最终的步骤就是在数据表上增加一列版本号还有就是使用do{}while()也可以来做,反正就是乐观锁
  9. 什么是悲观锁,使用悲观锁会存在什么问题(每次都加锁)
  10. 什么是乐观锁,如何实现一个乐观锁这里回答错了,说了乐观锁是针对于读多写少情况,修改的时候,会判断是否有人改变了这个数据(我忘记了,回答的是,修改的时候,会加一个锁)
  11. Redis的缺点这里讲到了单线程(但面试官说不是缺点),后面我又说了不能进行复杂的查询,只回答出这个完整的优点:快速:Redis 所有数据都存储在内存中,因此可以快速访问和操作数据,读写速度非常快。多样性:Redis 支持多种数据结构类型,包括字符串、哈希表、列表、集合和有序集合等,能够满足不同的数据存储需求。高并发:Redis 支持高并发访问,可以同时处理大量请求。可扩展性:Redis 可以使用集群方式进行横向扩展,以满足更高的性能需求。持久化:Redis 提供了多种持久化选项,包括快照和日志追加,可以在服务器重启时恢复数据。丰富的功能:Redis 支持多种高级功能,例如发布/订阅模式、Lua 脚本等,可以满足复杂的应用需求。缺点:数据量限制:由于 Redis 所有数据都存储在内存中,所以其数据量受到内存容量的限制。当数据量非常大时,需要使用集群方式扩展 Redis,增加成本和复杂度。无事务支持:Redis 不支持 ACID 事务,无法保证数据的完整性和一致性。存储格式限制:Redis 不支持存储结构化数据,无法像传统关系型数据库那样支持复杂的数据查询和分析。网络传输:Redis 数据需要通过网络传输,如果网络不稳定或延迟较高,可能会影响读写性能。配置和管理:Redis 配置和管理相对较复杂,需要深入了解其配置选项和运行机制。
  12. Redis中有哪些数据类型我的回答,有8种数据类型,常见的5种说出来了,但是还有三种忘记专业名字了,正确的是有9种,redis的数据结构和底层实现还需要继续学习
  13. Redis的ZSet使用场景讲了zset是什么,通过分数进行排序,这里只说了一个排行榜,其实还有电话排序,姓名排序
  14. Redis的跳表这种数据结构了解么说了之前了解过,很长时间没看,忘记了(直接说没了解过是不是更好)
  15. Redis的持久化机制Aof+rdb
  16. 假如Redis的内存满了之后,如何解决很长时间没看,忘记了,讲的很模糊
  17. LFU是什么,如何实现一个LFU讲到了使用HashMap来实现,但是是错的
  18. MySQL中的主键索引和非主键索引的区别
  19. B+树和B树索引的区别,为何要用B+树
  20. 反问环节假如有幸加入贵公司,会做哪些业务有什么建议么
  21. 面试官又问了一个问题,你会来我们公司么我说了一个,我在昆明投了一些,但是薪资太低了,没什么发展,想去大平台(这是错误的,不能说薪资低)
#面经##数字马力##如何判断面试是否凉了##我的失利项目复盘#
全部评论
你这个挂了啥情况,项目是真实的不
1 回复 分享
发布于 2023-07-01 08:47 湖南
大佬学java学了多久了,感觉好强
点赞 回复 分享
发布于 2023-07-26 13:06 江西
老哥,能给下hr联系方式吗,我昨天面完二面后,今天又有个面试官找我约二面
点赞 回复 分享
发布于 2023-06-30 16:23 重庆
现在还能投简历嘛
点赞 回复 分享
发布于 2023-06-30 11:56 云南

相关推荐

11-16 14:06
大成壁挂炉售后维修服务热线号码羽技术支持大成壁挂炉售后业务中的细微变化 作为大成壁挂炉售后维修企业容器技术支持的一员,每天会面对全球各地企业级客户提出的关于容器的各种问题,通过这几年的技术支持的经历,逐步发现容器问题客户的一些惯性,哪些是重度用户,哪些是轻度客户,这些客户大概分布在什么行业等等。大成壁挂炉售后服务电话400-885-6095在渐渐地接触过程中,发现有些壁挂炉重度容器使用客户,所提出的问题场景也在逐步变化中,由于涉及法律法规,下面数据无法完整提供,只是提供相关简要说明。纵向维度 从去年底开始,关于边缘集群的工单数量逐渐开始上升,增长幅度较大。其中涉及问题的边缘集群,超过一半左右来的客户集群规模比较大,集群节点规模数量级在几百个节点,甚至几千个节点规模。横向维度 客户一:该用户是目前是国内 ToC 端个性化推荐服务提供商之一,该客户在今年才开始使用 容器服务 Edge 版 ACK Edge 产品,到目前为止边缘集群的节点数已经快速破百。客户二:该用户是目前是国内电动汽车行业先驱者,并且一直处于新能源热门话题榜中,该客户第一次使用容器服务 Edge 版 ACK Edge 产品,到目前为止,边缘集群的节点数已经破千,占该客户所有容器集群节点数的近一半。客户三:该用户是全球著名无人 IoT 设备提供商之一。于去年开始使用容器服务 Edge 版 ACK Edge 产品后,快速增加 ACK Edge 比重,目前边缘集群已经承担了该客户容器的大部分业务形态,同时该客户提问的容器工单,一大半是关于边缘集群的。客户四:该用户是私域电商领域的领头羊企业,于今年开始使用容器服务 Edge 版 ACK Edge产品,并快速的进行集群规模的扩张,到目前为止,边缘集群的节点数规模已经过千。这些客户在边缘集群上的使用,和我这几个月服务企业客户的体感是一致的,那就是边缘计算似乎越来越成为客户业务云原生化的一个方向,并且该比重会越来越高。这些短平快使用边缘集群的客户貌似并没统一的客户行业属性和画像,既有互联网电商,也有制造业,新能源骑车等交通行业线等等,并不像公有云具有强烈的行业属性,比如互联网,教培客户偏向于公有云,ToG,大交通客户偏向于专有云等等,似乎边缘计算出现就是为了终端复杂业务场景而生的。概念和业务形态 边缘云计算构筑在位于中心云与终端之间的边缘基础设施上的新型分布式计算,是云计算能力由中心向边缘的下沉,强调通过云边一体、协同管理实现中心云计算模式下所无法满足的业务需求,是一种更加靠近数据产生源的云计算。“边缘”是一个非绝对的相对概念,边缘业务对网络时延、带宽、数据量级、经济性等多方面的不同需求都会影响边缘云部署的最佳位置。自动驾驶、云游戏等共享型业务,可部署在区域级别 or 省市级别的区域边缘云上,而面向工厂、港口、园区等的专享型边缘云业务既可以部署在贴近客户现场的边缘数据中上,也可以通过边缘网关等更轻量级的设备来实现。从技术路线上看,区域边缘云和现场边缘云同是基于边缘数据中心,是通过 ICT 基础设施的下沉实现边缘云的能力,而 IoT 边缘云是对于以工业场景为代表的各类现场设备进行云化的升级改造。定位和核心价值边缘云计算出现是为了补充集中式云计算能力的不足,因此边缘云计算的出现不是为了替代集中式云计算,当我们广义上去讨论的时候,其实应放在云-边-端的整体框架之下,将边缘云视作中心云在靠近终端用户的下沉。其实边缘云计算就类比章鱼,章鱼的大脑仅有 40% 的神经元,其余的 60% 神经元分布在章鱼个各个大腿之上,形成了“1 个大脑+N 个小脑”神经计算结构。这个和中心云+边缘云+终端用户架构极为相似,各种各样的终端用户采集到海量数据后,将需要进行实时处理的小规模、局部数据就近在边缘云上完成处理和反馈;而复杂、大规模的全局性的数据处理,则交给中心云进行处理和发布,中心云与边缘云统一管控、智能调度,形成算力的合理分配和业务逻辑的实现。边缘云计算相比中心云计算更加贴近数据产生和使用的终端用户,这些终端用户对网络时延和传输成本方面具有非常大的敏感性,而边缘云计算是云计算能力向边缘的下沉,同时也契合了低延迟和低成本的诉求。但是边缘侧的物理物理设备和运行环境不像中心云有统一的标准,硬件的性能参差不齐,因此边缘云需要与中心云进行协同处理,结合中心云的大规模计算能力和边缘云的低延迟,成本低的特点,既要实现在集中式云计算模式下无法实现的超低延时的信息交互,又要实现一部分的数据自闭环处理和反馈。超低延迟现阶段应用边缘云最主要的动力即为时延,尤其是需要实时交互、实时反馈的场景,比如智能终端设备,车辆网,自动驾驶等等。传统云计算模式下,从终端用户到中心云因物理距离的强力限制,网络延迟难以进一步降低,同时智能终端设备数量级的增长,必然对海量数据处理带来了要求。传输成本中心云计算下终端用户产生的数据都需要回传到云端进行处理,远距离的数据传输消耗的成本比较高,且大多数传回云端的数据,多是无用信息,在终端量级爆发增长下,对中心云的计算能力产生了大量损耗。网络安全有些行业因国家政策、行业特性、数据隐私保护等要求,对数据安全要求极高,敏感数据无法传回云端,但是这些行业也有业务云化的需求。典型应用场景 超低时延需求、海量数据处理、边缘智能调度、数据安全规范是促使企业选择边缘云计算的几个主要因素,目前超低延迟特性和海量数据处理是边缘云计算相比中心云计算的最大优势。如右图所示,在工业互联网、 车联网、智慧交通、云游戏和 VR/AR 等场景中,数据的传输和计算能力的需求是巨大的,边缘云计算恰好能满足这些高要求。Kubernetes:从中心化走向边缘化 经过前面的铺垫,我们可以对未来云计算有大概的一个初步判断。那么作为云原生基石的 Kubernetes 在边缘计算场景下又是该如发展呢?是类似于 IOE 这种随着时代潮流逐渐淘汰,还是类似 Vmware 在自己的私域里不受影响,还是像现在 AI 大模型成为未来主流呢。这里先说下个人观点,Kubernetes 插件体系和 list-watch 机制,让它天生就适合边缘云计算。Kubernetes 是以应用为中心而设计的架构方案,以 Kubernetes 为编排工具,向下屏蔽底层基础设施和架构,实现不同底层资源架构的统一调度和管理;向上通过标准的容器镜像手段,实现承载多种业务形态和应用的自动化部署和快速恢复;横向拓展实现了突破中心云计算的边界,让底层算力的调用突破地域、云厂商和物理设备的限制,形成了云-边-端一体化的协同部署方案。Kubernetes 在边缘云计算下的挑战 Kubernetes 是一个分布式架构的云原生系统,实现了管控-业务的分离,master 节点负责管理 worker 节点,调度 Pod 以及控制集群运行状态。worker 节点,负责运行容器,架空容器状态并及时上报。在边缘云计算场景下,主要面临以下挑战:Kubernetes 是一个强一致性的中心存储架构,相关 Kubernetes 资源的状态都会记录到管控侧并对这些资源进行统一调度和管理,那么在边缘多场景下,边缘和中心之间的网络状态是不稳定的,那么这种强一致性的逻辑就会遇到挑战;Worker 节点通过 List-Watch 机制与 Matser 节点通信,实现该节点的上 Kubernetes 资源的同步,但是当出现边缘和中心的网络瓶颈时候,Worker 节点是无自治能力,无法进行自我决策。Kubelet 所需要执行的策略比较多,比如容器 CRI,CSI, CNI 等网络,存储,计算等资源,在大规模节点,有时候 kubelet 占用的资源接近 1GB,这对边缘低配置硬件版本设施是个挑战。Kubernetes 社区的主版本并没有主流开源边缘版本,而且边缘云计算涉及场景更加复杂,目前 CNCF 社区的边缘云计算开源项目主要针对就是上面三点挑战,利用 Kubernetes 多插件支持能力,将管控中心任务分布是部署,实现 Kubernetes Master 节点统一管控,智能调度;各个边缘集群节点有独立管控实现各自边缘的自治和业务同步,从而实现了云端管控、边缘自治的云-边-端一体化协同。作者:售后服务中心链接:https://www.nowcoder.com/feed/main/detail/bab248fbeeeb4067b824ed62db9815c5来源:牛客网
投递大连飞创信息技术有限公司等公司10个岗位
点赞 评论 收藏
分享
评论
5
22
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务