1 HashMap在put的时候,插入的元素超过了容量(由负载因子决定)的范围就会触发扩容操做,就是rehash,这个会从新将原数组的内容从新hash到新的扩容数组中,在多线程的环境下,存在同时其余的元素也在进行put操做,若是hash值相同,可能出现同时在同一数组下用链表表示,形成闭环,致使在get时出现死循环,因此hashMap是线程不安全的。 2 经过Collections.synchronizedMap()来封装HashMap的方法
队列适用于哪些开发场景,何时你会考虑使用队列?常见的队列,你会如何选择前端
Spring里用到了哪些常见的设计模式?请详述使用场景。java
线程为何不是以run方法运行,而是start方法?mysql
1 1.主从模式:可进行读写分离,可分担同步的压力,可用性不过高,master宕机须要手动配置从节点转为master 2 2.cluter模式: 引入了主从模式,每一个节点存储不一样的内容 3 3.哨兵模式:主从模式升级版,主节点挂掉会自动将从节点转为主节点,可用性更高
1 1:申请SSL证书 2 2:让本身的服务器支持SSL,nginx须要配置SSL模块和https的跳转 3 3:开放443端口