前面的IEG秒挂后2天被这个部门捞了,这几天准备了下算法,但是项目有点懈怠了
时间:3月11日 14:40 ,时长45分钟
全程拷打Java项目,掺了一些业务相关的八股
因为项目亮点手贱,写了用Redis缓存优化前时间、优化后时间。结果疯狂拷打怎么得出的优化时间 其实是编的数据,引以为鉴!!
肉眼对比效果 + 查询前时间 对比 查询后时间
数据量多大? sql查询出多少条记录? 是什么查询场景?查询条件是什么?小程序端提供哪些查询条件?有哪些类别?一条记录大小是多大呢?
凭记忆硬答,远古项目以前没想到会问,早知道不写了,还是太天真
寄了,道歉,说不记得了
客户端应用层构建查询语句->网络传输中发送查询请求到服务器->Mysql解析并接受请求 -> 数据库中执行语句
答了计网,tcp连接后->http发起请求->TCP打包->IP寻路和转发->服务器协议栈解包->MySql获取到请求包并得到语句->执行
硬件和物理:网卡、网络传输路径
答的网络中TCP的连接和传输可能占用时间更长,还是不太理解
`发送时有发送时延=数据包大小/网络传输速度,传播时延利用网络工具可大概知道延时``
再次重申真的只是应用层写了两行代码
没做这方面的考虑,全部都是默认配置
本地测完,云端只是用docker把后端jar包、mysql、Redis都部署在服务器上了,没再测过
答了放入redis,只是用到了,对原理还在学习
超时删除 + 更新后主动清除缓存并重新写入
获取当前记录的缓存,清空本次修改的数据缓存
道歉并答了Redis还不太懂
只答了因为是内存存储的键值对数据库
否,和后端环境在同一个服务器机器上
没懂考察啥知识点,大概是数据库和后端服务分离,怎么保证响应速度吧
承接上一次的JWT
参考:
JSON Web Token 目前最流行、最常见的跨域认证解决方案
JWT 跨域认证详解及应用场景
寄,没听过
直接签名认证是什么?
只包含了签名部分登录后生成token并用共享密钥对其签名,然后发回给客户端,其每次请求时在请求头中放入URL或者字段中,服务器收到请求后利用共享密钥验证
JWT是直接签名认证的升级
其除了签名外,规定了 头部.载荷.签名 的标准化格式和内容,使得认证更加通用和安全
总结:
JWT是升级版,在格式和内容方面进行了拓展
,除了用加密算法签名外规定了数据的格式:头部、载荷、签名
,以及内容:使用JSON格式
JSON的优势:
易读性
:结构简单易读,因此代替了XML数据结构灵活、易扩展
:可以表达多种类型的数据跨平台和通用性
:多平台有JSON解析和生成的工具答了跨域,回复:这只是功能之一,又答了比较通用和泛化,回复:对
首先是无状态性:
其次是解决跨域问题:
跨域问题:也就是不同源(协议、域名、端口)的cookie限制交互
相同的签名和加密
,并且没有过期且密钥安全地保存,那么A网站就可以和B网站发起连接和通讯,解决了跨域问题安全性:
讲了自己的想法,回复:应该多注意下Java上的业务技术点要更深入进去
时间不够了,你10分钟内做完这道题合并两个有序数组
经典双指针,幸好没忘,秒了基本逻辑,第一次用ACM模式折腾了了一小会儿
有没有可能优化成一次循环?
太菜了没看过优化,之后看了题解发现倒序双指针可以
时间复杂度是多少
O(m+n)
答:简历是同事推给我的,看到做了一些基础性的东西,但是看起来对Java这方面做的不深(别骂了)
从项目开始引入知识点,看细节有没有深入的思考,一直问看你能回答出的深度和广度
有点大意了,没想到这个烂项目还有人问,直接没复习,全在凭借残存的记忆硬答,简历上的东西真的不能大意
面试官人超好,说话超温柔(比上一次那位好多了),还闲聊了一下感觉很亲切,不会的地方会换个方式来引导你
对我的建议帮助很大,之前侧重底层的基架方面和算法基础,以为这样可以差异化竞争,Java八股都是死背的,业务开发这方面确实很久没复习了,以前觉得这些CRUD简单,面试不会很考察,面业务岗还不注重业务项目是真的天真
要好好搞一下业务项目了,引以为鉴,不可大意
结果还没出,没秒挂已经进步了
#腾讯PCG##面经##腾讯面经##腾讯实习基地#