导航菜单
路很长,又很短
博主信息
昵   称:Cocodroid ->关于我
Q     Q:2531075716
博文数:337
阅读量:1472621
访问量:166454
至今:
×
云标签 标签球>>
云标签 - Su的技术博客
博文->>首页 博主的更多博文>>
某电商Java面试题
Tags : 电商,Java,面试题发表时间: 2017-05-25 15:56:02
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。
比如: 转自:Su的技术博客  原文地址:

    这份题目是某个群友分享他面某电商的Java面试题,特此我也分享给广大Javaer们,祝你们尽量找到满意的工作。下面有些面试题已经找了一些答案(只供参考,只是个人找的,难免有误,请指正!),一些还没找到没整理,如果你知道答案,麻烦评论回复下,让我更新,希望这样能够帮助更多的人。

 

 1、什么情况下会产生死锁问题
产生死锁的原因:一是系统提供的资源数量有限,不能满足每个进程的使用;二是多道程序运行时,进程推进顺序不合理。  
产生死锁的必要条件是:1、互斥条件;2、不可剥夺条件(不可抢占);3、部分分配;4、循环等待。  

2、多集群下事务并发,也没法模拟

3、并发包的锁跟syncronized的区别

4、获取锁有哪些方式

5、Rpc跟消息队列有什么区别(http://oldratlee.com/post/2013-02-01/synchronous-rpc-vs-asynchronous-message)
系统结构
RPC系统结构:
+----------+     +----------+
| Consumer | <=> | Provider |
+----------+     +----------+
Consumer调用的Provider提供的服务。

Message Queue系统结构:
+--------+     +-------+     +----------+
| Sender | <=> | Queue | <=> | Receiver |
+--------+     +-------+     +----------+
Sender发送消息给Queue;Receiver从Queue拿到消息来处理。

功能特点
在架构上,RPC和Message的差异点是,Message有一个中间结点Message Queue,可以把消息存储。

消息的特点
Message Queue把请求的压力保存一下,逐渐释放出来,让处理者按照自己的节奏来处理。
Message Queue引入一下新的结点,让系统的可靠性会受Message Queue结点的影响。
Message Queue是异步单向的消息。发送消息设计成是不需要等待消息处理的完成。
所以对于有同步返回需求,用Message Queue则变得麻烦了。

RPC的特点
同步调用,对于要等待返回结果/处理结果的场景,RPC是可以非常自然直觉的使用方式。
# RPC也可以是异步调用。
由于等待结果,Consumer(Client)会有线程消耗。
如果以异步RPC的方式使用,Consumer(Client)线程消耗可以去掉。但不能做到像消息一样暂存消息/请求,压力会直接传导到服务Provider。

6、什么时候应该用rpc什么时候应该用消息队列
RPC:同步得到结果的场景;使用简单,模拟本地调用;异步复杂;发送端受限于处理端。
消息队列:同步复杂;发送端不受限于处理端;异步调用,吞吐量大。

7、Memcache的key最大多大Value最大多大
key:最长250字符
value:不大于1M

8、Memcache和redis除了数据结构不同,还有什么区别
①内存管理:memcached使用SLAB存储机制
②数据安全,灾难恢复:memcached挂掉之后,数据没了,redis可以定时备份到磁盘,并且可以用aof恢复数据
③虚拟内存:redis使用完物理内存时,可以将久未使用的数据交换到磁盘


PS:如果知道上面有错或者答案,麻烦评论告知,谢谢哈!觉得好的话,麻烦点赞,O(∩_∩)O哈哈哈~

打赏
打赏
关注公众号
公众号
类别:面试| 阅读(2426)| 赞 (2)
评论
暂无评论!
发表评论
昵  称:

验证码:

内  容:

    同时赞一个 赞