几个常见面试题,就完整答案~~~

kingmax54212008 2016-06-30 11:40:32
加精
1. MYSQL存贮引擎, 索引 都有哪些?各自优缺点,以及使用场景?
2. 一个网页打开很慢,页面很慢怎么调优?从哪些方面,具体怎么调优?
3. SpringMVC请求是多个Serlet还是过个线程?
4. SpringMVC的请求过程,请描述?
5. JDK5以后的cocurrent Hashmap为什么效率更高些?
6. 系统发生了死锁,怎么排查?
7. MYSQL一个语句很慢,怎么调优法?
8. 线程池的机制是怎么样的? 比如 线程池大小为10, 现在有100个线程等待运行。

面试的时候,更多的看实践经验的回答。
...全文
9995 126 打赏 收藏 转发到动态 举报
写回复
用AI写文章
126 条回复
切换为时间正序
请发表友善的回复…
发表回复
110成成 2017-04-15
  • 打赏
  • 举报
回复
引用 83 楼 anxpp 的回复:
MYSQL一个语句很慢,怎么调优法? 因为问题是调优,也就是基本不能改变整体的现有实现。下面分析慢的原因并给出对应可能正确的解决方案 1、SQL语句本身的优化,比如去掉不必要的排序等。 2、如果是查询过于复杂,也即包含了逻辑(体现在还需要在Java等代码中组织数据),这时可以尝试编写存储过程将这一过程原子化,可以减少访问数据库的次数。 3、如果SQL已经无法继续改进,业务也已固定,那么从SQL本身是没法优化了,可以试着使用缓存,前提是数据主要用于读,而不是频繁的修改。
可以考虑索引,也可以考虑视图,如果是数据量过大,可以考虑分表,缓存只是减少数据库查询次数。
110成成 2017-04-15
  • 打赏
  • 举报
回复
引用 77 楼 anxpp 的回复:
一个网页打开很慢,页面很慢怎么调优?从哪些方面,具体怎么调优? 首先 确定慢的原因在哪里:浏览器渲染还是从服务器获取数据很慢。 一般是从服务器获取数据慢: 域名解析慢,这个一般不会出现问题,不过不排除 服务器原因: 网络带宽太小 应用服务器性能问题: 1、是不是数据库查询太慢,看下数据库的慢日志,若有相关记录,优化数据库查询 2、获取数据后经过了一个漫长的处理过程:可能对数据进行了耗时的处理 3、服务器本身没什么问题:高并发导致服务器响应不过来:集群,使用Nginx负载均衡,使用Redis统一管理Session。依然不行?拆分业务,分布式处理。
分析的有点道理。
110成成 2017-04-15
  • 打赏
  • 举报
回复
引用 12 楼 ArayChou 的回复:
[quote=引用 楼主 kingmax54212008 的回复:] 6. 系统发生了死锁,怎么排查?
我来回答这个问题, 使用jstack命令, 可以打印出所有线程的调用stack, 重点关注线程状态为block的线程. 如果一个线程拥有锁,又在等待进入其它锁,重点重点关注.[/quote] 你这个是一般用来排查cpu和内存占用率高的问题,但是最好先用process查下占用最高的几个线程,然后去jstack根据线程id去查下最终的原因
qq_36043016 2017-02-14
  • 打赏
  • 举报
回复
学习~~路过
星语丶 2017-02-09
  • 打赏
  • 举报
回复
学习了。大神们真的棒
sunnysuu 2017-02-07
  • 打赏
  • 举报
回复
66666666666666666666
GetSet_LvXaio 2017-01-26
  • 打赏
  • 举报
回复
1. MYSQL存贮引擎, 索引 都有哪些?各自优缺点,以及使用场景? 2. 一个网页打开很慢,页面很慢怎么调优?从哪些方面,具体怎么调优? 页面慢90%是加载资源引起的,无非就是压缩打包、调整资源加载顺序,CDN,增加服务器宽带,异域加载(详情:浏览器允许的并发请求数量) 其次就是DOM操作引起,DOM操作消耗性能也非常大,解决方法也很多,几个常见的解决方法:深度组件化,事件委托,虚拟DOM,单页面 最后就是代码问题,以谷歌浏览器为例,可以用开发者工具Timeline看方法耗时 3. SpringMVC请求是多个Serlet还是过个线程? 4. SpringMVC的请求过程,请描述? 5. JDK5以后的cocurrent Hashmap为什么效率更高些? 这个问题是拿hashtable 与 cocurrent Hashmap作比较吧 操作hashtable时,会被锁住,其它线程只能等操作完才能进行下去 cocurrent Hashmap引入了分区的概念,数据存贮到不同分区,通过算法可控制一部分区上锁,一部分区不上锁。效率提升N倍 6. 系统发生了死锁,怎么排查? 死锁一段时间后就内存溢出,溢出就会挂掉,挂掉就会爆出两个文件,然后用jhat去分析吧 7. MYSQL一个语句很慢,怎么调优法? 8. 线程池的机制是怎么样的? 比如 线程池大小为10, 现在有100个线程等待运行。
赶路的旅人 2016-12-14
  • 打赏
  • 举报
回复
崩溃,感觉好多都不太懂,说不桑来。
qq_32217411 2016-10-09
  • 打赏
  • 举报
回复
这页面调优我能说一天http://www.cnblogs.com/li0803/archive/2009/09/20/1570581.html
qq_16121197 2016-07-14
  • 打赏
  • 举报
回复
围观大神的回答,学习
qq_16121197 2016-07-14
  • 打赏
  • 举报
回复
围观大神的回答,学习
wingsguo 2016-07-14
  • 打赏
  • 举报
回复
太神了,我也要学习!
qq_35176404 2016-07-14
  • 打赏
  • 举报
回复
关注着,大神给解答
一语觉梦 2016-07-14
  • 打赏
  • 举报
回复
关注着,大神给解答
qq_35592036 2016-07-13
  • 打赏
  • 举报
回复
66666666
qq10888314 2016-07-13
  • 打赏
  • 举报
回复
666666666666666666666666666666666
ysj19701207 2016-07-13
  • 打赏
  • 举报
回复
感觉自己好low
ztxcsl 2016-07-13
  • 打赏
  • 举报
回复
小学生不用看
qq_35199430 2016-07-13
  • 打赏
  • 举报
回复
6666666666666
流云SS 2016-07-12
  • 打赏
  • 举报
回复
不得不佩服,,感觉自己还差好多~
加载更多回复(103)

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧