1. 上来先谈项目,问你做的哪些模块,之前做的金融,我说到了额度这一块,用的Redis,有趣的来了。
面试官问:“你们项目怎么用redis的?”
答:“用的字符串,当天占用的额度放在redis里,lua脚本直接在redis里加减这个额度。”
面试官:“那你怎么保证数据的一致性的?比如你前面get了这个额度,后面另一个订单修改了这个额度”
答:“用的lua脚本,get,incrby作为一个原子操作。”
面试官并不知道LUA脚本,然后吵起来了。对,吵起来了。
2. 那你说下redis的其他几种数据类型吧,简单介绍下各个类型。
3. 那你有知道redis的部署方式吗?(当时没听清。。还在后悔吵架,听成了个保护方式。。一连蒙蔽,我还重复问了一遍”保护方式?“,他说嗯,那我就说不知道,现在才想起来问的是部署方式。。就单机、主从+哨兵、集群这些)
4. 说说throwable下都有哪些异常?常见的要捕获的异常有哪些?
5. 讲讲集合(讲了得10分钟,从ArrayList到LinkedList,Set,从HashMap到HashTable到ConcurrentHashMap,数据结构,线程安全问题,哈希碰撞,全讲了一遍)
6. 讲讲线程池
7. 获取一个线程的结果
8. 讲讲springMVC的流程
9. 说说spring中的事务传播方式
10. 你们在项目中怎么运用spri