美团面试总结

写在前面的话

夫妻俩带娃面试,也是够拼的。难为了老公,一点把握都没有,竟然还通过了一面,老天啊,止于二面,不后悔了,做以下总结,希望对自己以后的面试有帮助,

按映像深刻顺序

1.如何设计一个秒杀系统(开放题)

参考博客:http://blog.csdn.net/suifeng3051/article/details/52607544

看完博客后,归纳成自己的语言

可以从前端+服务器端+数据库端来回答

数据库比较脆弱,扛不住高并发请求,这些最好在服务器端都处理掉

前端:静态页面,避免重复提交,绑定请求IP

服务器端:网关层,避免恶意攻击,对于同一个userId限制请求

服务层:1.可以利用消息中间件来实现,缓存请求到队列中,数据库层订阅一定数量的请求

2.也可以利用缓存来实现写的操作(更多的是用来实现读操作)

 

2.原子操作类(Atomic)--原子类型的变量

参考博客:http://blog.csdn.net/u011116672/article/details/51068828

在java.util.concurrent.atomic包下,共有13个类,主要分为四种类型

原子更新基本数据类型:AtomicInteger,AtomicBoolean,AtomicLong

原子更新数组

原子更新引用类型

原子更新属性

解决问题:用来解决高并发,多线程的情况下变量值的改变(如自增)

之前如何解决:使用syncronized实现,修饰方法或者代码块

 

-----未完结------

posted @ 2018-03-16 03:20  带刺的小花277  Views(331)  Comments(0Edit  收藏  举报