java高级工程师开放面试题集<二>
临近年关,不少人蠢蠢欲动,有童鞋问我java后端面试会面试什么?
作为一个java后端老鸟,跌打滚爬多次被面试和面试别人,总结了一些经验,希望对大家有所帮助。
特别说明,仅仅针对工作两年以上的java后端开发。以开放性题目为主,没有标准答案。
本次是第二篇:
6.缓存相关
如何设计实现LRU缓存?
Least Recently Used,最近最少使用缓存。
思路:
6.1.每个key 需要有value,最近的使用时间戳
6.2.面向对象思想,Node{key,value,timestamp}组成线程安全的链表ConcurrentLinkedQueue
7.设计相关
如何设计一个停车场系统?
思路:
7.1 user-case图 涉及的人:用户(普通用户/特权用户),车(小汽车/货车等),停车场普通管理员,停车场系统管理员,车位信息
7.2 功能: 用户停车导航,缴费,历史记录;车包含车牌,类型和用户关联;停车场普通管理员提供停车车位,导航和收费,车位的维护;停车场系统管理员停车场利用率,收费情况,维护费用,盈利报表等
7.3 关键点:评估系统的费用,硬件的费用。
8.安全相关
如何设计一个安全的api接口给第三方使用?
8.1 http和https 证书
8.2 防篡改 md5,sha1,sha256 签名
8.3 加密,对称加密des和非对称加密rsa
8.4 可以参考http://open.taobao.com/doc.htm?docId=73&docType=1 淘宝开发平台
9.linux相关
一个日志文件约为10亿行记录,如何错误日志?
grep 命令,sed命令
10.如何设计一个秒杀系统?
秒杀场景一般会在电商网站举行一些活动或者节假日在12306网站上抢票时遇到。对于电商网站中一些稀缺或者特价商品,电商网站一般会在约定时间点对其进行限量销售,因为这些商品的特殊性,会吸引大量用户前来抢购,并且会在约定的时间点同时在秒杀页面进行抢购。
并发量分别在0~100,100~1000,1000~10000,10000~100000的设计方案,这些设计方案的不同点是什么?相同点是什么?
设计思路:
1.防火墙如何限流,黑板名单 ,可以参考:阿里云DDoS高防IP:https://www.aliyun.com/product/ddos?spm=5176.224200.selected.8.c83b6ed62UXXwQ
2.CND 可以参考阿里云CDN:https://www.aliyun.com/product/cdn?spm=5176.7946143.selected.6.4fe26d63MEHgHU
3. LB负载层 可以参考阿里云:https://www.aliyun.com/product/slb?spm=5176.7933777.selected.10.475d56f5Xu5uLk
4. 前端:页面静态化 禁止重复提交
5.后端:限流 削峰 异步处理 预处理
参考架构方案:
今天先写道这里。
java高级工程师开放面试题集<二>的更多相关文章
- java高级工程师开放面试题集<一>
临近年关,不少人蠢蠢欲动,有童鞋问我java后端面试会面试什么? 作为一个java后端老鸟,跌打滚爬多次被面试和面试别人,总结了一些经验,希望对大家有所帮助. 特别说明,仅仅针对工作两年以上的java ...
- Java程序员面试题集(71-85)(转)
转:http://blog.csdn.net/jackfrued/article/details/17566627 Java程序员面试题集(71-85) 摘要:这一部分主要包括了UML(统一建模语言) ...
- Java程序员面试题集(136-150)(转)
转:http://blog.csdn.net/jackfrued/article/details/17740651 Java程序员面试题集(136-150) 摘要:这一部分主要是数据结构和算法相关的面 ...
- Java程序员面试题集(51-70)(转)
转:http://blog.csdn.net/jackfrued/article/details/17403101 Java程序员面试题集(51-70) 摘要:这一部分主要讲解了异常.多线程.容器和I ...
- Java程序员面试题集(1-50)(转)
转:http://blog.csdn.net/jackfrued/article/details/17339393 下面的内容是对网上原有的Java面试题集及答案进行了全面修订之后给出的负责任的题目和 ...
- Java程序员面试题集(1-50
下面的内容是对网上原有的Java面试题集及答案进行了全面修订之后给出的负责任的题目和答案,原来的题目中有很多重复题目和无价值的题目,还有不少的参考答案也是错误的,修改后的Java面试题集参照了JDK最 ...
- Java程序猿面试题集(181- 199)
Java面试题集(181-199) 摘要:这部分是包括了Java高级玩法的一些专题,对面试者和新入职的Java程序猿相信都会有帮助的. 181. 182. 183. 184. 185. 186. 1 ...
- Java程序员面试题集2
51.类ExampleA 继承Exception,类ExampleB 继承ExampleA. 有如下代码片断: try{ throw new ExampleB("b") }catc ...
- Java程序员面试题集(151-180)
Java面试题集(151-180) 摘要:这部分包含了Spring.Spring MVC以及Spring和其他框架整合以及测试相关的内容,除此之外还包含了大型网站技术架构相关面试内容. 151. Sp ...
随机推荐
- windows下Anaconda的安装与配置正解
一.下载anaconda 第一步当然是下载anaconda了,官方网站的下载需要用迅雷才能快点,或者直接到清华大学镜像站下载. 清华大学提供了镜像,从这个镜像下载速度很快,地址: https://mi ...
- 对hadoop namenode -format执行过程的探究
引言 本文出于一个疑问:hadoop namenode -format到底在我的linux系统里面做了些什么? 步骤 第1个文件bin/hadoop Hadoop脚本位于hadoop根目录下的bi ...
- php5.6 phpmystudy 版本出问题
No input file specified的解决方法 https://jingyan.baidu.com/article/f7ff0bfccce11c2e26bb1381.html
- Java-static关键字解析
static关键字是很多朋友在编写代码和阅读代码时碰到的比较难以理解的一个关键字,也是各大公司的面试官喜欢在面试时问到的知识点之一.下面就先讲述一下static关键字的用法和平常容易误解的地方,最后列 ...
- 1-JRE与JDK等知识
- PHP-预定义函数访问数据库
(1)复习:自定义函数 (2)调用PHP预定义的函数——访问MySQL数据库 1.函数的基础概念 定义一个简单的函数: function 函数名( ){ #函数主体 } 调用/运行一次函数: ...
- fcitx4.2.0自定义中文标点符号
+fcitx 定制标点 http://forum.ubuntu.com.cn/viewtopic.PHP?t=376701&p=2755636 下载punc.mb.gz放到~/.config/ ...
- Build.gradle的详细配置说明
转自:http://blog.csdn.net/u012246458/article/details/51722624 apply plugin: 'com.android.application'/ ...
- Asp.Net Core 禁用预编译
在.NET Core 2 Web API应用程序中,MS VS 2017中的发布到文件夹功能产生: <ProjectAssembly>.PrecompiledViews.dll <P ...
- 读入挂(IO)
快如闪电,清华杜瑜皓的读入挂,一模一样代码,加了这个之后... 细思极恐,and 整整行!!! namespace IO{ #define BUF_SIZE 100000 #define OUT_SI ...