Java常见的一些经典面试题(附答案解析)( 五 )
三、Spring隔离级别
- 如果多个事务同时访问相同数据时 , 如果没有采取必要的隔离级别 , 可能会发生什么问题?(1)脏读:读取过期的数据 , 就是一个事物读到另一个事务未提交的新数据;(2)幻读:读取临时的数据 , 就是一个事物在进行修改全表的时候 , 另一个事务对数据进行了新 增 , 从而第一个事务的执行完后发现还有没有修改的数据 , 就好像发生了幻觉一样;(3)不可重复读:就是在同一个事务中先后执行两条一样的select语句 , 之间没有执行过Del 语句但先后结果不一样 , 这就是不可重复读;
- Spring事务隔离级别(1) Default:使用数据库本身的隔离级别ORACLE(读已提交)Mysql(可重复读);(2) Read_Uncomited:读未提交(脏读) , 最低隔离级别 , 一切皆有可能;(3) Read_Commited:读已提交 , 有幻读以及不可重复读的风险;(4) RepeaTable_Read:可重复读 , 但还是有幻读风险;(5) Serializable:串行化 , 最高隔离界别 , 杜绝一切隐患 , 但效率较低;
- 用@Transactional注解声明式事务的事务管理中来设置isolation属性的隔离级别
- 在配置文件中设置事务tx:method元素
Keepalived的作用是检测服务器的状态 , 如果有一台web服务器宕机 , 或工作出现故障 , Keepalived将检测到 , 并将有故障的服务器从系统中剔除 , 同时使用其他服务器代替该服务器的工作 , 当服务器工作正常后Keepalived自动将服务器加入到服务器群中 , 这些工作全部自动完成 , 不需要人工干涉 , 需要人工做的只是修复故障的服务器 。
Redis1. 设置缓存值的过期时间?(1) 常用的方式:expire key time(以秒为单位)(2) 字符串独有方式:setex(String key , int seconds , String value)如果没有设置时间 , 那缓存就是永不过期;2. Redis三种过期策略(1)定时删除:在设置key过期时间的同时 , 为该key创建一个定时器 , 让定时器在key过期的时候 , 对key进行删除;(2)惰性删除:key过期的时候不删除 , 每次从数据库获取key的时候去检查是否过期 , 若过期删除 , 返回null;(3)定期删除:每隔一段时间执行一次删除过期key的操作
总结:针对于上面的面试题我总结出了互联网公司Java程序员面试涉及到的绝大部分面试题及答案做成了文档和架构视频资料免费分享给大家(包括Dubbo、Redis、Netty、zookeeper、Spring cloud、分布式、高并发等架构技术资料) , 希望能帮助到您面试前的复习且找到一个好的工作 , 也节省大家在网上搜索资料的时间来学习 , 也可以关注我以后会有更多干货分享 。
文章插图
- 智能手机市场|华为再拿第一!27%的份额领跑全行业,苹果8%排在第四名!
- 会员|美容院使用会员管理软件给顾客更好的消费体验!
- 行业|现在行业内客服托管费用是怎么算的
- 人民币|天猫国际新增“服务大类”,知舟集团提醒入驻这些类目的要注意
- 国外|坐拥77件专利,打破国外的垄断,造出中国最先进的家电芯片
- 技术|做“视频”绿厂是专业的,这项技术获人民日报评论点赞
- 面临|“熟悉的陌生人”不该被边缘化
- 中国|浅谈5G移动通信技术的前世和今生
- 页面|如何简单、快速制作流程图?上班族的画图技巧get
- 桌面|日常使用的软件及网站分享 篇一:几个动态壁纸软件和静态壁纸网站:助你美化你的桌面