![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
常见面试题
记录常见的面试题,结构化答题思路
滴水藏海NQZ
这个作者很懒,什么都没留下…
展开
-
https加密通信的过程
HTTPS加密过程建议可以在电脑上安装一下Woreshark,这个软件方便直观的观察加密流程。https:在http(超文本传输协议)基础上提出的一种安全的http协议,因此可以称为安全的超文本传输协议。http协议直接放置在TCP协议之上,而https提出在http和TCP中间加上一层加密层。从发送端看,这一层负责把http的内容加密后送到下层的TCP,从接收方看,这一层负责将TCP送来的数据解密还原成http的内容。SSL(Secure Socket Layer):是Netscape公.原创 2020-08-23 11:52:44 · 487 阅读 · 0 评论 -
websocket
https://blog.csdn.net/SL_ideas/article/details/73648378?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~all~first_rank_v2~rank_v25-1-73648378.nonecase&utm_term=websocket%E5%B1%9E%E4%BA%8E%E5%93%AA%E4%B8%80%E5%B1%82一、WebSocket 是什么?使用原创 2020-08-23 11:17:21 · 104 阅读 · 0 评论 -
各种排序的时间复杂度,空间复杂度,稳定性
排序算法 平均时间复杂度 最坏时间复杂度 最好时间复杂度 空间复杂度 稳定性 冒泡排序 O(n²) O(n²) O(n) O(1) 稳定 直接选择排序 O(n²) O(n²) O...原创 2020-08-21 14:32:34 · 119 阅读 · 0 评论 -
秒杀项目
1、秒杀流程1、首先前端商品界面显示秒杀倒计时,秒杀开始,显示秒杀按钮。输入验证码。2、用户在商品详情面点击按钮后验证码和用户id校验。 验证商品id和秒杀唯一标志是否合法(避免暴露秒杀地址) 判断秒杀时间(判断秒杀开始和结束时间) 判断商品是否抢光。redis中的库存>0 ? 判断用户是否已经秒杀过该商品 (判断redis中的key是否存在,用户秒杀后会在redis中设置一个展位的key来标志用户已经秒杀过) 3、判断当前系统流量是否超过阈值。通过redis的lis..原创 2020-10-14 21:04:07 · 376 阅读 · 0 评论 -
ConcurrentHashMap 1.7 和 1.8 的区别
1、锁结构:1.7采用的是segment + HashEntry数组实现的。Segment是Reentrant的子类,其内部维护了一个Entry数组,其结构和HashMap中的Entry数组是一样的,所以说Segment其实是一个锁,可以锁住一段哈希表结构。而ConcurrentHashMap中维护了一个Segment数组,所以是基于分段锁实现的。 而JDK1.8中,ConcurrentHashMap摒弃了Segment,采用synchronized+CAS+红黑树来实现的。锁的力度也从段锁缩小为结点锁。.原创 2020-10-14 21:04:49 · 1359 阅读 · 0 评论 -
HashMap的实现原理
HashMap的主干是Entry数组。Entry是HashMap的一个静态内部类,包含一个键值对,和一个指向下一个Entry的引用。总结:HashMap是数组+链表的结构。数组是HashMap的主体,链表解决Hash冲突。如果当前数组的位置不含链表,那么查找和添加等操作很快,仅需要一次寻址。若定位的位置包含链表,对于添加操作,遍历链表,存在即覆盖,否则新增;对于查找,仍需要遍历链表,然后通过key对象的equals方法逐一比较。所以HashMap中链表出现越少,性能越好。它有几个重要的字..原创 2020-10-14 21:05:10 · 139 阅读 · 0 评论 -
redis的使用场景
String 比如封锁某个IPHash 存取用户信息。不用String原因是,string反序列化代价大。List 实现最新消息的排行,还可以利用list的push命令,将任务存在list集合,利用pop取出任务。模拟消息队列。Set 可以自动排重,微博中每个人的好友。求共同好友,求交集即可。Zset 商品详情的综合排名。...原创 2020-10-14 21:06:02 · 74 阅读 · 0 评论 -
SpringMVC的工作流程
https://blog.csdn.net/floating_dreaming/article/details/890892141、用户发送请求到DispatcherServlet(前端控制器)该控制器会过滤出哪些请求可以访问Servlet、哪些不能访问。2、DispatcherServlet收到请求后调用HandlerMapper处理器映射器。通过HandlerMapping完成url到controller映射的组件,简单来说,就是将在springmvc.xml中配置的或者注解的url与对应...原创 2020-10-14 21:06:11 · 59 阅读 · 0 评论 -
SpringMVC 如何解决Post请求乱码问题,get请求乱码问题
使用springmvc的过滤器 在项目的web.xml文件上面添加一个过滤器<filter> <filter-name>CharacterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <原创 2020-10-14 21:06:28 · 67 阅读 · 0 评论 -
Spring支持的事务传播属性
spring在TransactionDefinition接口中定义了七个事务传播行为: propagation_requierd:如果当前没有事务,就新建一个事务,如果已存在一个事务中,加入到这个事务中,这是最常见的选择。 propagation_required_new:新建事务,如果当前存在事务,把当前事务挂起。 propagation_supports:支持当前事务,如果没有当前事务,就以非事务方法执行。 propagation_mandatory:使用当前事务,如果没有当前事原创 2020-10-14 21:07:23 · 115 阅读 · 1 评论 -
Spring总结
什么是Spring,你是怎么理解Spring的?1、java中一切都是对象,Spring能够很好的帮助我们管理对象,简化了应用开发。2、对象的属性是由对象自己创建的,就是正向流程;如果属性不是对象创建,而是由spring来自动进行装配,就是控制反转。这里的DI也就是依赖注入,就是实现控制反转的方式。正向流程导致了对象于对象之间的高耦合,IOC可以解决对象耦合的问题,有利于功能的复用,能够使程序的结构变得非常灵活。3、另外spring提供的AOP。一般用于日志和事务。我的理解是在纵向处理流程进行横原创 2020-10-14 21:07:37 · 70 阅读 · 0 评论 -
aof 和 rdb 都有哪些优点?两者有何区别
aof 的 优点 : 秒级持久化,可追加写,可读性强rdb 的 优点 :文件尺寸小,恢复速度快区别:同样数据下 aof 文件体积要比rdb大,文件内容恢复相对较慢也更加完整;aof更安全,可将数据及时同步到文件中,但需要较多的磁盘IO,rdb安全性较差,是正常时期数据备份即主从数据同步的最佳手段,文件尺寸较小并且恢复速度较快。...原创 2020-07-05 15:10:19 · 671 阅读 · 0 评论