澎贝数科Java后端实习生一面
PS:澎贝数科也叫Palmpay,原来是叫传易支付
自我介绍+项目介绍:5分钟左右
挑一个项目来讲一讲项目的背景以及业务流程?
在这个过程中有没有遇到过什么印象深刻的技术上的问题?经典预约挂号号源超卖的多个解决方案阐述。
你在项目中承担的是怎么样的一个角色呢?经典负责人+团队协作问题。
项目中为什么要引入Redis呢?读多写少型数据的缓存。
怎么保证缓存数据和数据库数据的一致性?延迟双删。
还有什么地方用到了Redis吗在这个项目里面?JWT缓存单点登录。
看你用到了RabbitMQ,你介绍一下交换机常见的工作模式和你用到的模式还有为什么这么用?简单队列模型,工作队列模型以及发布订阅模型,我用的是发布订阅中的Direct Exchange模式,拆解号源更新和短信发送的服务调用。
你这个支付的接口用的是微信的SDK,这个是怎么实现的呢?
听你这么说支付状态是前端轮询来查看的是吧?是的,轮询后端,后端再去查对应接口。
看你用了爬虫,你这个是什么语言写的?Py。
能介绍一下一个基本的流程吗?找网站(挑选一个标签比较稳定的),解析Html获取数据,清洗数据存储到图数据库里面进行调用。
多进程爬虫是什么意思?Py提供的进程池接口。
讲一讲进程和线程的区别?结构,功能角度的不同,资源分布和任务调度等。
有了解Java中的线程池吗?有的,ThreadPool。
说一说创建线程池的时候他的核心参数?核心线程数、最大线程数、超时时间、时间单位、阻塞队列、线程工厂、拒绝策略。
线程池接收任务的时候处理的基本流程是什么?未达到核心线程数->达到核心线程数未达到阻塞队列容量->达到阻塞队列容量->未达到最大线程数->达到最大线程数。
反问:
1.公司业务和团队分工以及规模
2.每日热帖功能的访问量或者点赞量怎么从Redis里面同步到数据库,怎么实现更好呢?每日热帖凌晨定时回写,需要考虑Redis会宕机所以可以引入AOF和RDB机制
怎么考虑只回写了一部分数据的时候宕机再恢复,我们无法得知目前对哪些数据已经回写了?可以考虑看MySQL的日志,也可以新加入一个表来存储目前的一个更新进度。
#java##后端##实习#