面试

B站疯传,堪称最强,一整套JVM课程,白拿不谢!

北慕城南 提交于 2020-12-04 13:54:31
挑战一下!这3 道 JVM 面试题你能快速答对几道? 1、当 Java 程序性能达不到既定目标,并对于程序优化技巧已用尽,应如何通过 JVM 知识对GC 优化? 2、对于众多参数各自优点增加了调优的难度,GC 优化过程应如何结合现有业务进行适合的参数优化呢? 3、JVM 数据运行区,哪些会造成 OOM 的情况? ...... 画外音:你看看,怎么回才是面试官想要听的? JVM 在性能调优中使用非常广泛,无论什么级别的 Java 从业者,JVM 是进阶时必须迈的坎。如果不懂 JVM 的话,薪酬会非常吃亏。除了面试,学习 JVM 有利于更深入地理解 Java 这门语言,吃透 JVM,为未来排查线上问题打下坚实的基础。 今天给大家推荐一个 【奈学教育】 免费的课程《JVM 从入门, 深入到源码解读》 ,让你轻松玩转JVM底层与调优,从容应对面试官的灵魂拷问. 扫码,添加课程小助手 免费领取JVM 课程 名额有限,先到先得 课程目录 JVM基础必备篇 1、从官网认知JDK/JRE/JVM的体系结构 2、源码到类文件,一起从官网剖析class文件的格式与定义 3、类文件到虚拟机,即类加载和初始化过程-装载/链接/初始化 4、剖析Classloader双亲委派机制 5、全局认知Runtime Data Areas,五大运行时内存区域 6、结合字节码指令理解Java虚拟机栈和栈帧 7、栈/方法区

妈妈再也不用担心我不会Redis了!

痴心易碎 提交于 2020-12-04 11:29:19
前言: Redis 是如今互联网技术架构中,使用最广泛的缓存。支持 复杂的数据结构 ,支持 持久化 ,支持 主从集群 ,支持 高可用 ,支持 较大的value存储 ... 同时, Redis 也是中高级后端工程师技术面试中,面试官最喜欢问的问题之一。特别是那些优秀的、竞争激烈的大型互联网公司(比如 Twitter、新浪微博、阿里云、腾讯云、淘宝、知乎等),通常要求面试者不仅仅掌握 Redis 基础使用,更要求深层理解 Redis 内部实现的细节原理。毫不夸张地说,能把 Redis 的知识点全部吃透,你的半只脚就已经踏进心仪大公司的技术研发部。 然而,绝大部分开发者只会拿 Redis 做数据缓存,使用最简单的 get/set 方法,除此之外几乎一片茫然,对 Redis 内部实现的细节原理知之甚少。例如: 有同学知道 Redis 的 分布式锁 ,但完全不清楚其内部实现机制 有同学知道 Redis 是 单线程结构 ,但完全不理解 Redis 缘何单线程还可以支持高并发 有同学知道 Redis 支持 主从 ,但完全不晓得内部的实现机制 于是,一位有着十年经验的互联网分布式高并发技术老兵,梳理自己多年 Redis 实践经验,写了这本书,以帮助更多工程师更快,更深入的了解 Redis 。 作者在掌阅维护着上千个 Redis 实例的集群,他在 Redis 持久化,缓存,消息队列 的各类实战经验

软件测试学习路线——Python自动化进阶【含性能测试】

独自空忆成欢 提交于 2020-12-04 10:15:33
点击上方蓝色“ 程序员一凡 ”,选择“设为星标” 主页“ 领取资料 ”获取整理好的 学习资源 现在测试行业的的趋势,你去面试任何级别的测试工程师都会问你是否会自动化测试,所以自动化测试已经是必备技能,而不是加分项。 换句话说,会用开源的测试工具不足以在公司涨薪或者跳槽至一线互联网大厂。因为真正企业自动化测试落地肯定是一个团队在做。 当你要形成自己的技术体系,有自己的观点的时候,或者在企业中做自动化项目的时候,你要回到一个知识框架里面去学习要有决策性学习,系统的学习。 学习不仅是解决当下的问题,还有未来可能出现的问题。 前几天给大家分享了整理的软件测试零基础快速入门学习路线,一直在想着把进阶学习路线也整理一下,花了两天时间,终于上传更新了。如果觉得内容不错的,记得点赞支持! 如果视频上面内容看得不是很清楚,可以品后面放的配图。 凡事要趁早,特别是技术行业,一定要在头几年打下扎实的技术功底,这对将来的技术管理或技术专家路线都有极大的帮助。 相对应的知识点,大部分都已经有了视频学习教程。 公众号添加我微信,我发给你。 因为见过更高的山更厉害的人,所以知道自己要走的路还有很远! 有疏漏的地 方,欢迎指正。 也分享一下我这这几天做的一个【软件测试VS开发】的“恶搞”短视频 听说点赞的人都拿了大厂offer 絮叨 如果你想去一家不错的公司,但是目前的硬实力又不到,我觉得还是有必要去努力一下的

如何加载100M的图片却不撑爆内存,一张 100M 的大图,如何预防 OOM?

喜夏-厌秋 提交于 2020-12-04 10:09:39
还记得当年面试一个面试官问我怎么加载巨图才能不撑爆内存,我没回答上来,他说分片显示,我寻思特么分片能减少内存使用??现在可以打他脸了! 内容扩展 1.图片的三级缓存中,图片加载到内存中,如果内存快爆了,会发生什么?怎么处理? 2.内存中如果加载一张 500*500 的 png 高清图片.应该是占用多少的内存? 3.Bitmap 如何处理大图,如一张 30M 的大图,如何预防 OOM? Android开发中,有时候会有加载巨图的需求,如何加载一个大图而不产生OOM呢,使用系统提供的 BitmapRegionDecoder 这个类可以很轻松的完成。 效果图: BitmapRegionDecoder :区域解码器,可以用来解码一个矩形区域的图像,有了这个我们就可以自定义一块矩形的区域,然后根据手势来移动矩形区域的位置就能慢慢看到整张图片了。 OK 核心原理就是这么简单,不过做起来还是有一些细节处理,下面就一步一步的完成一个加载大图,支持拖动查看,双击放大,手势缩放的的自定义View。 第一步,初始化变量 private void init(){ mOptions = new BitmapFactory.Options(); //滑动器 mScroller = new Scroller(getContext()); //所放器 mMatrix = new Matrix(); //手势识别

Android 开发两年面试总结

痴心易碎 提交于 2020-12-04 10:09:07
面试时间:2020.11.19-2020.11.25 面试公司:6家 旺龙智能、小虎互联、尚游、小鹅通、编程猫、车保中服、旺龙智能 骑驴找马面试:2020.09.06-2020.11.13 到面:几米、来画、尚米、伊欧乐、ETEKCITY、木易炎黄、咸鱼游戏、私募排排、威富通、东风日产、创维、TCL 电面:百度、阿里、腾讯、网易 沟通软件:Boss直聘 面试方向:项目、java基础、android基础、网络 项目: 简历按时间顺序,从 最新-最久 ,写清并说清自己负责的内容,细化到如何实现的,将整个流程烂熟在脑子里。 ①:针对视频流项目的问题: 说一下一个视频的一个整体播放流程? 说一下它的编码和解码的采用的是? 播放的协议? ijkMedia 与 exoMedia 与android 原生的区别和联系? 怎么去看他的播放率?成功率? 怎么解决秒开? ② :针对手机与机顶盒局域网通信的项目的问题: TCP与UDP的区别? 为什么TCP是以流的方式传输? HTTPS的加解密方式以及三次握手、四次分手?对称加密及非对称加密 传输过程中采用的是那个密钥? 通信中采用的协议? android: 基础: Handler的讲解?Looper与Handler的关系?一个线程多个Handler是如何进行目标发送和接收的?消息是如何进行插入和删除的? View的时间分发机制?横竖冲突、横横冲突?

Python自动化测试从何学起?京东测试经理规划的学习路线,你不点进来看看?

自古美人都是妖i 提交于 2020-12-04 09:57:55
学习路线规划 前言 一、学习Python基本语法 二、掌握WebUI自动化测试 三、掌握AppUi自动化测试 四、掌握接口自动化测试 前言 作为软件测试人,从事手工测试的工作是没有太多坏处的,但是很显然如果一直点来点去那么确实自身得不到提高,那这时候选择学习自动化测试是一件很有必要的事情,一来将自己从繁重的重复工作中解放出来,从事一些更有挑战的工作,二来能积累技术知识,厚积薄发完成飞跃,那么技术新人该如何学习自动化测试呢? 一、学习Python基本语法 基本的语言知识,语法、函数、模块、输入与输出、面向对象编程 脚本编写、标准库、多线程、第三方库,外部数据处理 unittest、pytest测试框架、参数化、数据驱动 二、掌握WebUI自动化测试 selenium安装、录制、处理 web控件、JavaScript脚本、PO模式 三、掌握AppUi自动化测试 appium使用、录制、元素定位方法 APP控件定位、交互,参数化用例 appium问题定位分析、源码分析、二次封装 四、掌握接口自动化测试 接口自动化测试框架request 接口请求构造、断言 json/xml请求、响应断言 headcookie处理、认证体系 真正学会这些知识之后,出去找工作1w起步!写完这些之后,我还给各位想要学习Python自动化测试的朋友,整理了测试资料以及自动化测试的面试题放在我的内部群里

面试字节跳动,被怼的体无完肤!

試著忘記壹切 提交于 2020-12-04 08:15:45
作者:知乎三级狗 来源:http://mrw.so/56CkE0 人们都说,这个世 d2f见*( 界上有 d2f见*( 两种 d2f见*( 人注定 d2f见*( 单身,一种是 d2f见*( 太优秀的,另一种 d2f见*( 是太平 d2f见*( 凡的。 我一听呀?那我这 d2f见*( 岂不是 d2f见*( 就不 d2f见*( 优秀了吗,于是毅 d2f见*( 然决然 d2f见*( 和女 d2f见*( 朋友分 d2f见*( 了手。 人们都说,互联网 d2f见*( 寒冬来了,这个时 d2f见*( 候还在 d2f见*( 大面 d2f见*( 积招人 d2f见*( 的公司,必然是 d2f见*( 牛逼的 d2f见*( 公司。而这个 d2f见*( 时候勇 d2f见*( 敢跳 d2f见*( 槽的人,必然是 d2f见*( 牛逼的人。 于是我 d2f见*( 开始了 d2f见*( 字节 d2f见*( 跳动的 d2f见*( 社招 d2f见*( 面试。 为了这天,我前一 d2f见*( 天排老 d2f见*( 长的 d2f见*( 队理了 d2f见*( 个利 d2f见*( 落的发型,胡子刮 d2f见*( 得一干 d2f见*( 二净。穿上崭 d2f见*( 新的新 d2f见*( 百伦999,连袜子 d2f见*( 都是崭 d2f见*( 新的NB,墨绿色 d2f见*( 工装裤 d2f见*( 配酒 d2f见*( 红色卫衣

一次 MySQL 索引面试,被面试官怼的体无完肤!

家住魔仙堡 提交于 2020-12-04 08:03:20
作者:是虎子呀 https://my.oschina.net/u/4062805/blog/3216265 之前有过一次面试,关于MySQL索引的原理及使用被面试官怼的体无完肤,立志要总结一番,然后一直没有时间(其实是懒……),准备好了吗? 索引是什么? 数据库索引,是数据库管理系统(DBMS)中一个排序的数据结构,它可以对数据库表中一列或多列的值进行排序,以协助更加快速的访问数据库表中特定的数据。通俗的说,我们可以把数据库索引比做是一本书前面的目录,它能加快数据库的查询速度。 为什么需要索引? 思考:如何在一个图书馆中找到一本书?设想一下,假如在图书馆中没有其他辅助手段,只能一条道走到黑,一本书一本书的找,经过3个小时的连续查找,终于找到了你需要看的那本书,但此时天都黑了。 为了避免这样的事情,每个图书馆才都配备了一套图书馆管理系统,大家要找书籍的话,先在系统上查找到书籍所在的房屋编号、图书架编号还有书在图书架几层的那个方位,然后就可以直接大摇大摆的去取书了,就可以很快速的找到我们所需要的书籍。索引就是这个原理,它可以帮助我们快速的检索数据。 一般的应用系统对数据库的操作,遇到最多、最容易出问题是一些复杂的查询操作,当数据库中数据量很大时,查找数据就会变得很慢,这样就很影响整个应用系统的效率,我们就可以使用索引来提高数据库的查询效率。 B-Tree和B+Tree

GitHub 上四万 Star 大佬的求职回忆

荒凉一梦 提交于 2020-12-04 08:02:01
点击关注加星标,江湖要事早知道 侠影迷踪 作者:CyC2018 原文链接:https://www.nowcoder.com/discuss/137593 本文作者是牛客网知名大佬 CyC2018,在他的 GitHub 有一个高达 40K Star 的技术仓库(在所有仓库中排名前五十),可以说在开源项目方面是一骑绝尘的牛人。今天我们分享一下他的求职经历。(最终 Offer:百度、阿里、腾讯、头条、网易游戏、华为) 下面正文开始! 2018,有过迷茫,有过努力,也有很多收获。为了记录这一年以来的感受,于是有了这篇文章。 壹 offer一览 offer情况 经过了长达一年左右的复习,秋招也收到了几个比较满意的 Offer,参加面试的都通过了。 百度,企业智能平台; 阿里,高德地图,部门已联系,目前还在申报 Offer 中; 腾讯,IEG 游戏平台,后台研发,SP; 字节跳动,头条后台研发,SSP; 华为,Cloud Bu; 网易游戏,梦幻事业部; 顺丰科技 贰 前期准备 前期准备 也是在去年十一月份左右,看着身边两年制的同学经历了长时间而又艰难的秋招,我开始意识到自己应该提前准备了,否则自己的秋招会很惨。 本科的时候,虽然学过计算机网络、操作系统和数据结构等课程,而且 Leetcode 也刷了一两百题,但是离招聘要求还差的很远,学的都很浅只够应付考试,也没有实际的项目经验。

说一下Dubbo 的工作原理?注册中心挂了可以继续通信吗?

三世轮回 提交于 2020-12-04 07:44:39
面试题 说一下的 dubbo 的工作原理?注册中心挂了可以继续通信吗?说说一次 rpc 请求的流程? 面试官心理分析 MQ、ES、Redis、Dubbo,上来先问你一些思考性的问题、原理,比如 kafka 高可用架构原理、es 分布式架构原理、redis 线程模型原理、Dubbo 工作原理;之后就是生产环境里可能会碰到的一些问题,因为每种技术引入之后生产环境都可能会碰到一些问题;再来点综合的,就是系统设计,比如让你设计一个 MQ、设计一个搜索引擎、设计一个缓存、设计一个 rpc 框架等等。 那既然开始聊分布式系统了,自然重点先聊聊 dubbo 了,毕竟 dubbo 是目前事实上大部分公司的分布式系统的 rpc 框架标准,基于 dubbo 也可以构建一整套的微服务架构。但是需要自己大量开发。 当然去年开始 spring cloud 非常火,现在大量的公司开始转向 spring cloud 了,spring cloud 人家毕竟是微服务架构的全家桶式的这么一个东西。但是因为很多公司还在用 dubbo,所以 dubbo 肯定会是目前面试的重点,何况人家 dubbo 现在重启开源社区维护了,捐献给了 apache,未来应该也还是有一定市场和地位的。 既然聊 dubbo,那肯定是先从 dubbo 原理开始聊了,你先说说 dubbo 支撑 rpc 分布式调用的架构啥的,然后说说一次 rpc