前言
今天中午收到我司安全部发了一封邮件:Jackson存在安全漏洞。查了一下,这件事并不算很新鲜了(已经过了5天的样子),本文来聊聊吧。
说起来还蛮戏剧化:阿里云向Jackson官方提交了一个Jackson序列化安全漏洞。众所周知,在国内关于JSON库使用有两大主要阵营:国际著名的Jackson库和国内阿里巴巴出品的Fastjson。
同样的功能定位,不存在竞争想想也觉得不可能嘛。所以当我看到这个漏洞竟是阿里云上报的,就觉得这关系还蛮微妙呢,默默的腹黑了3秒钟,哈哈。
附:FasterXML/jackson-databind是一个简单基于Java应用库,Jackson可以轻松的将Java对象转换成json对象和xml文档,同样也可以将json、xml转换成Java对象。Jackson是美国FasterXML公司的一款适用于Java的数据处理工具。jackson-databind是其中的一个具有数据绑定功能的组件。
一、秒杀系统架构设计都有哪些关键点?
二、设计秒杀系统时应该注意的5个架构原则
- 架构原则:“4要1不要”
1.1.数据要尽里少
1.2. 请求数要尽里少
1.3.路径要尽里短
1.4.依赖要尽里少
1.5. 不要有单点 - 2不同场景下的不同架构案例
三、如何才能做好动静分离?有哪些方案可选?
- 何为动静数据
- 如何做动静分离的改造
- 动静分离的几种架构方案
方案1:实体机单机部署
方案2:统一Cache 层
方案3:上CDN
四、二八原则:有针对性地处理好系统的“热点数据”
- 为什么要关注热点
- 什么是“热点”
- 发现热点数据
- 处理热点数据
五、流量削峰这事应该怎么做?
- 为什么要削峰
- 排队
- 答题
- 分层过滤
六、影响性能的因素有哪些?又该如何提高系统的性能?
- 影响性能的因素
- 如何发现瓶颈
- 如何优化系统
3.1 减少编码
3.2 减少序列化
3.3. Java 极致优化
3.4.并发读优化
七、秒杀系统“减库存”设计的核心逻辑
- 减库存有哪几种方式
- 减库存可能存在的问题
- 大型秒杀中如何减库存?
- 秒杀减库存的极致优化
八、如何设计兜底方案?
- 高可用建设应该从哪里着手
- 降级
- 限流
- 拒绝服务
总结
虽然面试套路众多,但对于技术面试来说,主要还是考察一个人的技术能力和沟通能力。不同类型的面试官根据自身的理解问的问题也不尽相同,没有规律可循。
上面提到的关于这些JAVA基础、三大框架、项目经验、并发编程、JVM及调优、网络、设计模式、spring+mybatis源码解读、Mysql调优、分布式监控、消息队列、分布式存储等等面试题笔记及资料都是免费分享的,有需要学习的小伙伴可以直接点点点点点这里免费下载
息队列、分布式存储等等面试题笔记及资料都是免费分享的,有需要学习的小伙伴可以直接点点点点点这里免费下载**
有些面试官喜欢问自己擅长的问题,比如在实际编程中遇到的或者他自己一直在琢磨的这方面的问题,还有些面试官,尤其是大厂的比如 BAT 的面试官喜欢问面试者认为自己擅长的,然后通过提问的方式深挖细节,刨根到底。