二零一八阿里p7笔试116题
1. junit用法,before,beforeClass,after, afterClass的执行顺序
2. 分布式锁
3. nginx的请求转发算法,如何配置根据权重转发
4. 用hashmap实现redis有什么问题(死锁,死循环,可用ConcurrentHashmap)
5. 线程的状态
5. 线程的阻塞的方式
6. sleep和wait的区别
7. hashmap的底层实现
8. 一万个人抢100个红包,如何实现(不用队列),如何保证2个人不能抢到同一个红包,可用分布式锁
9. java内存模型,垃圾回收机制,不可达算法
10. 两个Integer的引用对象传给一个swap方法在方法内部交换引用,返回后,两个引用的值是否会发现变化
11. aop的底层实现,动态代理是如何动态,假如有100个对象,如何动态的为这100个对象代理
12. 是否用过maven install。 maven test。git(make install是安装本地jar包)
13. tomcat的各种配置,如何配置docBase
14. spring的bean配置的几种方式
15. web.xml的配置
16. spring的监听器。
17. zookeeper的实现机制,有缓存,如何存储注册服务的
18. IO会阻塞吗?readLine是不是阻塞的
19. 用过spring的线程池还是java的线程池?
20. 字符串的格式化方法 (20,21这两个问题问的太低级了)
21. 时间的格式化方法
22. 定时器用什么做的
23. 线程如何退出结束
24. java有哪些锁?乐观锁 悲观锁 synchronized 可重入锁 读写锁,用过reentrantlock吗?reentrantlock与synmchronized的区别
25. ThreadLocal的使用场景
26. java的内存模型,垃圾回收机制
27. 为什么线程执行要调用start而不是直接run(直接run,跟普通方法没什么区别,先调start,run才会作为一个线程方法运行)
28. qmq消息的实现机制(qmq是去哪儿网自己封装的消息队列)
29. 遍历hashmap的三种方式
30. jvm的一些命令
31. memcache和redis的区别
32. mysql的行级锁加在哪个位置
33. ConcurrentHashmap的锁是如何加的?是不是分段越多越好
34. myisam和innodb的区别(innodb是行级锁,myisam是表级锁)
35. mysql其他的性能优化方式
36. linux系统日志在哪里看
37. 如何查看网络进程
38. 统计一个整数的二进制表示中bit为1的个数
39. jvm内存模型,java内存模型
40. 如何把java内存的数据全部dump出来
41. 如何手动触发全量回收垃圾,如何立即触发垃圾回收
42. hashmap如果只有一个写其他全读会出什么问题
43. git rebase
44. mongodb和hbase的区别
45. 如何解决并发问题
46. volatile的用途
47. java线程池(好像之前我的理解有问题)
48. mysql的binlog
49. 代理模式
50. mysql是如何实现事务的
51. 读写分离何时强制要读主库,读哪个从库是通过什么方式决定的,从库的同步mysql用的什么方式
52. mysql的存储引擎
53. mysql的默认隔离级别,其他隔离级别
54. 将一个链表反转(用三个指针,但是每次只发转一个)
55. spring Aop的实现原理,具体说说
56. 何时会内存泄漏,内存泄漏会抛哪些异常
57. 是否用过Autowire注解
58. spring的注入bean的方式
59. sql语句各种条件的执行顺序,如select, where, order by, group by
60. select xx from xx where xx and xx order by xx limit xx; 如何优化这个(看explain)
61. 四则元算写代码
62. 统计100G的ip文件中出现ip次数最多的100个ip
63. zookeeper的事物,结点,服务提供方挂了如何告知消费方
64. 5台服务器如何选出leader(选举算法)
65. 适配器和代理模式的区别
66. 读写锁
67. static加锁
68. 事务隔离级别
69. 门面模式,类图(外观模式)
70. mybatis如何映射表结构
71. 二叉树遍历
72. 主从复制
73. mysql引擎区别
74. 静态内部类加载到了哪个区?方法区
75. class文件编译后加载到了哪
76. web的http请求如何整体响应时间变长导致处理的请求数变少,该如何处理?用队列,当处理不了那么多http请求时将请求放到队列
中慢慢处理,web如何实现队列
77. 线程安全的单例模式
78. 快速排序性能考虑
79. volatile关键字用法
80. 求表的size,或做数据统计可用什么存储引擎
81. 读多写少可用什么引擎
82. 假如要统计多个表应该用什么引擎
83. concurrenhashmap求size是如何加锁的,如果刚求完一段后这段发生了变化该如何处理
84. 1000个苹果放10个篮子,怎么放,能让我拿到所有可能的个数
85. 可重入的读写锁,可重入是如何实现的?
86. 是否用过NIO
87. java的concurrent包用过没
88. sting s=new string("abc")分别在堆栈上新建了哪些对象
89. java虚拟机的区域分配,各区分别存什么
90. 分布式事务(JTA)
91. threadlocal使用时注意的问题(ThreadLocal和Synchonized都用于解决多线程并发访问。但是ThreadLocal与synchronized有本质的区别。synchronized是利用锁的机制,使变量或代码块在某一时该只能被一个线程访问。而ThreadLocal为每一个线程都提供了变量的副本,使得每个线程在某一时间访问到的并不是同一个对象,这样就隔离了多个线程对数据的数据共享。而Synchronized却正好相反,它用于在多个线程间通信时能够获得数据共享)
92. java有哪些容器(集合,tomcat也是一种容器)
93. 二分查找算法
94. myisam的优点,和innodb的区别
95. redis能存哪些类型
96. http协议格式,get和post的区别
97. 可重入锁中对应的wait和notify
98. redis能把内存空间交换进磁盘中吗(这个应该是可以的,但是那个面试官非跟我说不可以)
99. java线程池中基于缓存和基于定长的两种线程池,当请求太多时分别是如何处理的?定长的事用的队列,如果队列也满了呢?交换进磁盘?基于缓存的线程池解决方法呢?
100. synchronized加在方法上用的什么锁
101. 可重入锁中的lock和trylock的区别
102. innodb对一行数据的读会枷锁吗?不枷锁,读实际读的是副本
103. redis做缓存是分布式存的?不同的服务器上存的数据是否重复?guava cache呢?是否重复?不同的机器存的数据不同
104. 用awk统计一个ip文件中top10
105. 对表做统计时可直接看schema info信息,即查看表的系统信息
106. mysql目前用的版本
107. 公司经验丰富的人给了什么帮助?(一般boss面会问这些)
108. 自己相对于一样的应届生有什么优势
109. 自己的好的总结习惯给自己今后的工作带了什么帮助,举例为证
110. 原子类,线程安全的对象,异常的处理方式
111. 4亿个int数,如何找出重复的数(用hash方法,建一个2的32次方个bit的hash数组,每取一个int数,可hash下2的32次方找到它在hash数组中的位置,然后将bit置1表示已存在)
112. 4亿个url,找出其中重复的(考虑内存不够,通过hash算法,将url分配到1000个文件中,不同的文件间肯定就不会重复了,再分别找出重复的)
有1万个数组,每个数组有1000个整数,每个数组都是降序的,从中找出最大的N个数,N<1000
113. LinkedHashmap的底层实现
114. 类序列化时类的版本号的用途,如果没有指定一个版本号,系统是怎么处理的?如果加了字段会怎么样?
115. Override和Overload的区别,分别用在什么场景
116. java的反射是如何实现的
写在最后:欢迎留言讨论,加关注,持续更新!
二零一八阿里p7笔试116题的更多相关文章
- 面阿里P7,竟问这么简单的题目?
关于作者:程序猿石头(ID: tangleithu),来自十八县贫困农村(查看我的逆袭之路),BAT某厂P7,是前大疆(无人机)技术主管,曾经也在创业公司待过,有着丰富的经验. 本文首发于微信公众号, ...
- 身边好几个技术一般的程序员都面上了,阿里P7门槛降低?
经常在网上的论坛里看到讨论程序员的级别,尤其在跳槽类的信息里可以看到对标阿里P7,百度T6,腾讯3.1等字眼,似乎大厂的级别俨然可以成为业内的通用货币,类似于高考分数一样,哪一档就对应着什么样的待遇. ...
- 转头条:阿里p7架构师:三年经验应该具备什么样的技能?
问:工作中,有时候实现一个功能,会去看有没有现成的轮子可用.对于重复造轮子与改造轮子有什么看法? 答:一定会的,其实这也是一个提高技术能力的方法,比如今天想做个日期转换的功能,JDK8有日期的新特性就 ...
- 阿里P7终于讲完了JDK+Spring+mybatis+Dubbo+SpringMvc+Netty源码
前言 这里普及一下,每个公司都有职别定级系统,阿里也是,技术岗以 P 定级,一般校招 P5, 社招 P6 起.其实阅读源码也是有很多诀窍的,这里分享几点心得: 首先要会用.你要知道这个库是干什么的,掌 ...
- 阿里P7岗位面试,面试官问我:为什么HashMap底层树化标准的元素个数是8
前言 先声明一下,本文有点标题党了,像我这样的菜鸡何德何能去面试阿里的P7岗啊,不过,这确实是阿里p7级岗位的面试题,当然,参加面试的人不是我,而是我部门的一个大佬.他把自己的面试经验分享给了我,也让 ...
- (二)Redis for 阿里云公网连接
目录 (一)Redis for Windows正确打开方式 (二)Redis for 阿里云公网连接 (三)Redis for StackExchange.Redis 阿里云目前仅支持内网连接Redi ...
- 跟着阿里p7一起学java高并发 - 第18天:玩转java线程池,这一篇就够了
java中的线程池,这一篇就够了 java高并发系列第18篇文章. 本文主要内容 什么是线程池 线程池实现原理 线程池中常见的各种队列 自定义线程创建的工厂 常见的饱和策略 自定义饱和策略 线程池中两 ...
- 跟着阿里p7一起学java高并发 - 第19天:JUC中的Executor框架详解1,全面掌握java并发核心技术
这是java高并发系列第19篇文章. 本文主要内容 介绍Executor框架相关内容 介绍Executor 介绍ExecutorService 介绍线程池ThreadPoolExecutor及案例 介 ...
- 分享一套主流框架源码资料,征服阿里 P7 面试必备!
2019年已经过完一半了, 我在这里为大家准备了一份资料,征服阿里 P7 面试必备! 希望这些资料可以帮助到大家,从一个码农进阶为一个优秀的程序员,也可以帮大家提升系统实战能力. 这些资料包括: 讲解 ...
随机推荐
- 设置滑动TabBar的显示和隐藏
代码如下: //设置滑动的判定范围 - (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint ...
- Mysql开启审计功能
第一种经验证,有效. 第一种用macfee的mysql审计插件. 下载地址:https://bintray.com/mcafee/mysql-audit-plugin/release/1.1.4-72 ...
- iOS开发设计模式
ios开发学习中,经常弄不清楚ios的开发模式,今天我们就来进行简单的总结和探讨~ (一)代理模式 应用场景:当一个类的某些功能需要由别的类来实现,但是又不确定具体会是哪个类实现. 优势:解耦合 敏捷 ...
- iOS-app清除缓存
一直寻寻觅觅找app的清除缓存的方法,发现:并没有什么固定的方法,你既然有做对应的缓存机制,这个机制就应该有清除缓存的方法.例如如果你使用某个第三方的图片库,这个库有缓存机制,那么它就应该提供对应的清 ...
- 当你登录Github要求你邮箱验证身份,但是你的邮箱登录不了?
事情发送在两天前,我如标题所示......,它给出的tyningling@163我真的不知道什么时候注册的了,尝试了N个密码登录不上,验证密保吧,看到手机号突然想起来,这是拿以前同学的手机号注册的.. ...
- 【miscellaneous】gstreamer构建的简单方法
在博文"Gstreamer在Ubuntu上的安装和MP3的播放"中,写了在ubuntu上从头到尾构建gstreamer的详细过程,那是我在一次小项目培训中和队友一起努力了将近一周的 ...
- 高级UI-Snackbar
在与用户的交互中,最为常用的Toast和Dialog,但二者都存在其局限,Toast无法与用户进行交互,Dialog虽然可以与用户交互,但却会阻断用户操作的连贯性,介于二者之间的平衡,Snackbar ...
- python __name__ == ‘__main__’详细解释(27)
学习过C语言或者Java语言的盆友应该都知道程序运行必然有主程序入口main函数,而python却不同,即便没有主程序入口,程序一样可以自上而下对代码块依次运行,然后python不少开源项目或者模块中 ...
- Redis 常用命令学四:有序集合类型命令
1.增加元素,修改存在元素的分数 127.0.0.1:6379> zadd score 99 a 88 b 66 c (integer) 3 127.0.0.1:6379> ZADD sc ...
- JVM -- 虚拟机中的对象
一.HotSpot虚拟机 它是Sun JDK和OpenJDK中所带的虚拟机,也是目前使用范围最广的Java虚拟机.我们大致知道虚拟机内存的概况,也许更想了解这些虚拟机内存的数据的其他细节,誓如它们是如 ...