某科技有限公司

1. 笔试

1.1 == 和 equals 的区别
1.2. get 和 post 的区别
1.3. SpringMVC中@ReponseBody在什么情况下使用,@PathVariable怎么使用
1.4. JVM堆的结构

  • 堆=新生代+老年代+永久代或者元空间

1.5. 什么GC,GC的作用是什么

  • GC是一种自动内存管理机制。其主要作用是自动识别和清理不再使用的对象,以便释放内存空间,从而避免内存泄漏和程序崩溃。
  • GC的作用:自动内存管理,释放不再使用的内存,提高程序的稳定性,减少内存泄漏。

1.6. Innodb和MYISAM的特点

  • Innodb特点:支持事务,行级锁,外键支持,崩溃恢复,数据存储,锁机制,支持多版本并发控制(MVCC),表空间
  • MYISAM特点:不支持事务,表级锁,不支持外键约束,高查询性能,存储方式,压缩支持,表不支持事务日志

1.7. 谈谈你对MySQL事物的理解

1.8. 统计出会员id=100,日期是2023年6月内的积分数据,如图

id 会员id 会员名称 会员积分 日期
100 100 小王 10 2023-06-01 11:30:57
101 102 小明 10 2023-06-04 11:30:57
102 100 小王 -10 2023-06-04 11:30:57
103 106 小张 10 2023-06-03 11:30:57

1.9. 谈谈如何优化数据库

  • 从库方面: 选择合适的存储引擎;数据库分区与分表;数据库冗余与主从复制
  • 从表方面: 查询优化;表设计优化;存储与硬件优化;监控

1.10. 实现OAuth2.0或单点登录其中一种方式
1.11. 你在编程时有哪些防注入攻击
1.12. 有一个订单表,一个产品表,一个产品订单表。你会如何设计表的映射关系

提问

  1. 自我介绍
  2. 你这些项目接触到的单表数据量最多是多少?那个表加过索引吗?对哪些字段加了索引?
  3. 那你数据量最多的是个什么表?除了主键还有加其他索引吗?
  4. 你们公司有多少部门?你们产品经理主要负责什么?
  5. 那你看过那个表哪些字段加了索引?
  6. 你平时写代码的时候,你怎么知道哪些字段需要加索引
  7. 像组合索引和复合索引你知道吗?比如说我建了一个a,b,c联合索引。我写代码的时候先写的c,b,a可以吗?
  8. 我们平时跟数据库打交道都需要开启事物,在controller、Service、dao层我们会把事物放到哪一层。
  9. 那我们查询list会加事物吗?
  10. 使用delete删除时会加事物吗?
  11. 看你这个项目是分布式项目,你们分布式这个分布式事物是怎么处理的
  12. 你知道为什么要使用分布式事物,分布式事物用来解决什么问题?
  13. 假设我的银行卡里面只有10块钱,现在过来10个请求都要扣10块钱,是你的话你会怎么控制?
  14. 你进行加锁的话,会加什么锁?如果是分布式的呢?
  15. 开发代码都是放在哪里是git还是svn?
  16. 开发的时候来了一个新需求,你们的分支是怎么管理的?
  17. 你们增加新需求,分支是从哪里新增的?
  18. 你们新建完一个分支之后就开始改代码吗?
  19. 开发完之后测试的话,这个代码放到哪里去?
  20. 假如现在又来了两个新需求,一个需求先上线,一个需求过几天上线。你们的分支是怎么管理的?
  21. 你们那个测试拉代码是运维拉代码还是测试拉代码
  22. 反问

还有几个笔试题忘记了,分布式事物这一块忘记了。seata说成了sentinel

posted @   ゐ叶う枫ゆ  阅读(6)  评论(0编辑  收藏  举报
努力加载评论中...
点击右上角即可分享
微信分享提示