Redian新闻
>
调查称iphone屏幕越大越好卖
avatar
调查称iphone屏幕越大越好卖# PDA - 掌中宝
a*u
1
首先感谢本版mitbbsfanfan的热情内推才能得到这个机会。
之前已经面过2轮拿到了on site,但最初面的那个组招满了。HR说换个组,要加一轮电
面。面试官是国人manager。
电面题目是system design, 设计Imessage. 具体点就是说 如果A 给 B 发一个
message, B如果分别在iphone和mac或其他apple设备上登录,这些设备都可以收到
message。message的数量可以很大,单个message本身也可以很大。
我system design问题准备不足,之前也没想到电面会考这个,说得磕磕巴巴。当时的
想法是先构造3个类,user(client),server,message。user之间通过server传递
message。user(client)有一个client用来接收收到的信息。如果同一个uer有多个设
备登录,这些设备可以在server端的user帐户里注册,然后server把信息分别发给每个
设备。
user类里面东西也没想太多,一个记录contacts的hashmap 一个message queue, send
,receive function。
message类里面就是sender and receiver的user id,还有一个Sting 表示text
面试官提问如果server 挂了怎么办? 言外之意是不用server这个类,如何实现通信。
这个问题问得我有点蒙,因为我觉得如果server挂了,A怎么才能知道B在几个设备上登
录?犹豫了一会儿,想到以前看过一个设计facebook news feed的题,应该是一个user
登录设备后,通知所有他的contacts,我登录了这个设备。
之前我想的事contacts的hashmap key是string代表名字,value是个int表示id就行了
,按现在的情况要单独设计一个联系人类,里面至少要存放哪些设备登录了。因为
contact也需要有user name, id这些东西,于是我傻B呵呵的把hashmap的 value改成
了user类。然后一想,不对啊,user累里面还有message queue呢,contacts不用这个
。电话那边应该是听不下去了,让我别在电脑上敲了,直接说就思路就行了。
然后又问,如果message很多超出你的memory怎么办。我说那就给每个message queue设
定一个size,超出就接受不了,同时提醒user清空收件箱。如果可以有server的话,
server给每个user在云端分配大一点的空间。还可以在mesage里面加date参数,收件箱
满了,删最早的。
接下来让我问问题,然后挂了。
希望板上各位大牛能否讨论一下这题。虽然这次挂了,但我还挺想把这个搞明白的。
avatar
s*7
2
Does it contain female hormones ?
I am not sure if I am prenant with a baby boy or girl, will female hormone
do harm to baby if there is?
Anyone here have 燕窝 during prenancy?
Pleaes advise, many thanks!!!
Happy Easter!!
avatar
x*e
3
现在的选秀节目越来越夸张了,一群青春的女生就这样被电视节目的噱头整成这样··
·这还是个唱歌的节目嘛··
avatar
p*b
4
这数据还真不是我算出来的,我也知道自己根本就没有那么大的本事能够统计出来那么
庞大的一个数据,是一个叫“市场研究机构消费者情报研究伙伴公司”在调查后得出来
的一个结果,说“iphone的屏幕越大,销量就越高”。
在我接触的第一代苹果手机就是当年的iphone3gs,那时候见了别人用苹果我都羡慕的
不得了,那么贵,一般人还真用不起,有次在坐地铁的时候看到有人用苹果手机我心里
还特别诧异,还心想那么有钱能够买得起苹果手机的人竟然还去坐地铁,现在想想也是
幼稚,地铁多好,省钱还不堵车。
后来苹果出了第四代手机,那时候的屏幕大小有三点几英寸,再往后就是苹果五,屏幕
在四英寸,再往后就是苹果六,四点七英寸,然后就是现在的苹果七。据这家机构报道
的消息说苹果手机在五点七寸的用户量有五千三百万个,四点七屏幕的用户量在三千九
百万个,可以说是越大屏幕的手机那销量就越高。当年乔布斯还说什么没有人愿意购买
大屏手机,如果当年乔布斯就直接把苹果四和苹果五改成大屏幕的那估计早就没有三星
的事儿了。
avatar
l*a
5
报一下组名吧

【在 a***u 的大作中提到】
: 首先感谢本版mitbbsfanfan的热情内推才能得到这个机会。
: 之前已经面过2轮拿到了on site,但最初面的那个组招满了。HR说换个组,要加一轮电
: 面。面试官是国人manager。
: 电面题目是system design, 设计Imessage. 具体点就是说 如果A 给 B 发一个
: message, B如果分别在iphone和mac或其他apple设备上登录,这些设备都可以收到
: message。message的数量可以很大,单个message本身也可以很大。
: 我system design问题准备不足,之前也没想到电面会考这个,说得磕磕巴巴。当时的
: 想法是先构造3个类,user(client),server,message。user之间通过server传递
: message。user(client)有一个client用来接收收到的信息。如果同一个uer有多个设
: 备登录,这些设备可以在server端的user帐户里注册,然后server把信息分别发给每个

avatar
a*g
6
怀孕时吃燕窝最好了,我从怀孕三个月开始吃,准备吃到坐完月子

【在 s*****7 的大作中提到】
: Does it contain female hormones ?
: I am not sure if I am prenant with a baby boy or girl, will female hormone
: do harm to baby if there is?
: Anyone here have 燕窝 during prenancy?
: Pleaes advise, many thanks!!!
: Happy Easter!!

avatar
g*n
7
大家看的是年轻姑娘,谁要听唱歌啊
avatar
d*u
8
的确最近看到se好像越来越不好卖
avatar
a*u
9
补充一下,当时自己作死。本来面试官没让我在 coderpad上编写,让我直接说就好了
,我怕说不明白,就要求用coderpad。结果发现,写一个类吧,如果不写constructor
显得太山寨,如果写constructor那要敲的字实在太多了。
因为当时在想无server条件下的设备通信花了好多时间,最后每个类写的都不完整。
avatar
g*r
10
mm们都是哪里买的燕窝呢
avatar
l*o
11
good good. I like it.
avatar
v*8
12
实际就是 6” 左右最好了,这样也不需要用 tablet.
avatar
a*u
13
growth

【在 l*****a 的大作中提到】
: 报一下组名吧
avatar
c*r
14
激素就不清楚。应该主要是燕子的哈喇子混点泥巴。可能有点
酶啥的,其实完全没有任何作用。
如果很有钱,很想烧掉点。。。

boy or girl, will female hormone

【在 s*****7 的大作中提到】
: Does it contain female hormones ?
: I am not sure if I am prenant with a baby boy or girl, will female hormone
: do harm to baby if there is?
: Anyone here have 燕窝 during prenancy?
: Pleaes advise, many thanks!!!
: Happy Easter!!

avatar
x*e
15
嗨·········没有和我共鸣的 5555555555555
avatar
x*4
16
ipad pro 12.9 加电话模块即可
avatar
d*e
17
这个你怎么可能写类。
都是用现有工具。简单的redis,或者其他kv storage存信息。不要效率数据库好了。
B上线握手后,服务端一个actor开始push信息到设备上。结束。

【在 a***u 的大作中提到】
: 首先感谢本版mitbbsfanfan的热情内推才能得到这个机会。
: 之前已经面过2轮拿到了on site,但最初面的那个组招满了。HR说换个组,要加一轮电
: 面。面试官是国人manager。
: 电面题目是system design, 设计Imessage. 具体点就是说 如果A 给 B 发一个
: message, B如果分别在iphone和mac或其他apple设备上登录,这些设备都可以收到
: message。message的数量可以很大,单个message本身也可以很大。
: 我system design问题准备不足,之前也没想到电面会考这个,说得磕磕巴巴。当时的
: 想法是先构造3个类,user(client),server,message。user之间通过server传递
: message。user(client)有一个client用来接收收到的信息。如果同一个uer有多个设
: 备登录,这些设备可以在server端的user帐户里注册,然后server把信息分别发给每个

avatar
r*s
18
我从三个月开始吃,准备吃到坐完月子。
avatar
m*o
19
更像是内衣
avatar
e*0
20
有做个messgae的解疑吗?user 和user之间通信应该首次握手之后可以不走server了吧
avatar
r*s
21
我在两个地方买过燕窝,一个是Golden Nest:
http://www.goldennest.com/Merchant2/merchant.mvc?Screen=SFNT&Store_Code=G
这个好像从加州寄过来的,免运费,但是价格稍高一点,包装也很好看。
另一个是Natural Nest: http://www.naturalnest.com/
这个是从印尼寄过来的,但是运送是从香港转的,运一次35刀,包装没那么精美,但是
价钱稍便宜一些。
我买的都是最高一级的白燕,因为自己懒得洗毛。两个牌子的发头都挺不错。感觉
Natural Nest的腥一点。

【在 g*********r 的大作中提到】
: mm们都是哪里买的燕窝呢
avatar
M*9
22
我我我。。。现在媒体导向有问题。 不知主要被哪个脑残把持着。。。

【在 x********e 的大作中提到】
: 嗨·········没有和我共鸣的 5555555555555
avatar
s*m
23
不能同意你更多,绝对是装逼作死啊!!
没事,下次吸取教训就好:没事别自己请缨写code。

constructor

【在 a***u 的大作中提到】
: 补充一下,当时自己作死。本来面试官没让我在 coderpad上编写,让我直接说就好了
: ,我怕说不明白,就要求用coderpad。结果发现,写一个类吧,如果不写constructor
: 显得太山寨,如果写constructor那要敲的字实在太多了。
: 因为当时在想无server条件下的设备通信花了好多时间,最后每个类写的都不完整。

avatar
s*7
24
Anymore info regarding hormone?
avatar
i*s
25
相比这个玩意儿
我更喜欢唱红歌活动
但是更多人会跳出来喊我脑残。。。

【在 M*********9 的大作中提到】
: 我我我。。。现在媒体导向有问题。 不知主要被哪个脑残把持着。。。
avatar
s*m
26
不要这么残忍吧大牛!

【在 e******0 的大作中提到】
: 有做个messgae的解疑吗?user 和user之间通信应该首次握手之后可以不走server了吧
avatar
s*7
27
If I decide to have it, I will ask friend to shop in Singapore then EMS to
me. The risk is being forfeited by US custom :(, I will ask her to claim as
Chinese Medicine though.

【在 g*********r 的大作中提到】
: mm们都是哪里买的燕窝呢
avatar
E*T
28
我站在你这边儿

【在 i*********s 的大作中提到】
: 相比这个玩意儿
: 我更喜欢唱红歌活动
: 但是更多人会跳出来喊我脑残。。。

avatar
z*o
29
电面设计太难,画一个图就搞定的事要说半天能说清楚就不错了。
觉得可以写写类名什么关键地方,确认讲清楚了。
avatar
s*7
30
On the naturalnest website, is SSS higher grade than S?
Will they meet custom problem when shipping from HK?
Thanks!

【在 r**********s 的大作中提到】
: 我在两个地方买过燕窝,一个是Golden Nest:
: http://www.goldennest.com/Merchant2/merchant.mvc?Screen=SFNT&Store_Code=G
: 这个好像从加州寄过来的,免运费,但是价格稍高一点,包装也很好看。
: 另一个是Natural Nest: http://www.naturalnest.com/
: 这个是从印尼寄过来的,但是运送是从香港转的,运一次35刀,包装没那么精美,但是
: 价钱稍便宜一些。
: 我买的都是最高一级的白燕,因为自己懒得洗毛。两个牌子的发头都挺不错。感觉
: Natural Nest的腥一点。

avatar
O*K
31

YES

【在 m********o 的大作中提到】
: 更像是内衣
avatar
a*u
32
没太懂,能不能具体说一下握手后的actor,面试官的条件是server is dead,而且b可
以多个设备登录的。

【在 d******e 的大作中提到】
: 这个你怎么可能写类。
: 都是用现有工具。简单的redis,或者其他kv storage存信息。不要效率数据库好了。
: B上线握手后,服务端一个actor开始push信息到设备上。结束。

avatar
s*e
33
国内现在的娱乐节目这么淫荡啦!Oh, GOD

【在 x********e 的大作中提到】
: 现在的选秀节目越来越夸张了,一群青春的女生就这样被电视节目的噱头整成这样··
: ·这还是个唱歌的节目嘛··

avatar
a*u
34
那如果其中一个user又登录了一个设备,怎么办?

【在 e******0 的大作中提到】
: 有做个messgae的解疑吗?user 和user之间通信应该首次握手之后可以不走server了吧
avatar
s*y
35
这是内衣秀,不是比基尼吧。。。。
怎么都这么大,气死我了!!!!
怎么丰胸啊?????太受伤了。
avatar
d*e
36
真实场景:比如twitter又数千台redis。做consistent hashing.一台坏了还有其他的。
又有很多台connection server比如说websocket活着其他tcp, udp,如果它们都跪了,
你也没办法。
而且server当了,数据还在,等重启再说呗。
设备1 of B登录后,通知server,我拿到第n条信息, server就起一个worker,可以是
一个erland actor,活着一个thread, 开始push信息到serve.活着pull也可以。
设备2 of B同理。
你可以想象一下weixin怎么做的。

【在 a***u 的大作中提到】
: 没太懂,能不能具体说一下握手后的actor,面试官的条件是server is dead,而且b可
: 以多个设备登录的。

avatar
S*i
37
I dun mind if the images presented are healthy and positive. I thought only
Arabs relate bikini to 淫荡 these days?

【在 x********e 的大作中提到】
: 现在的选秀节目越来越夸张了,一群青春的女生就这样被电视节目的噱头整成这样··
: ·这还是个唱歌的节目嘛··

avatar
z*3
38

actor是erlang, akka的东西,他说复杂了
你要是有兴趣,看看akka,vert.x这些就知道了,vert.x里面的verticle就是actor
server挂了之后,问问能不能启新的node,假设你用的是cloud
如果可以的话,新的node需要从persistence中读出之前的数据来
所以用redis就比较合理,因为redis可以做到persistence
如果是纯内存计算的server的话,就不行了
或者前面说的,多个设备之间自己做一个copy
第一次登陆了之后,server把多个设备的信息反馈给每一个client
然后每一个client本地做备份,然后就可以不用经过server了
就像qq聊天,大多数时候都是client -> client
但是你也可以选择client -> server -> client

【在 a***u 的大作中提到】
: 没太懂,能不能具体说一下握手后的actor,面试官的条件是server is dead,而且b可
: 以多个设备登录的。

avatar
o*e
39
小米儿~~~~~~~~~~~~~~~~

only

【在 S*********i 的大作中提到】
: I dun mind if the images presented are healthy and positive. I thought only
: Arabs relate bikini to 淫荡 these days?

avatar
z*3
40

的。
wechat

【在 d******e 的大作中提到】
: 真实场景:比如twitter又数千台redis。做consistent hashing.一台坏了还有其他的。
: 又有很多台connection server比如说websocket活着其他tcp, udp,如果它们都跪了,
: 你也没办法。
: 而且server当了,数据还在,等重启再说呗。
: 设备1 of B登录后,通知server,我拿到第n条信息, server就起一个worker,可以是
: 一个erland actor,活着一个thread, 开始push信息到serve.活着pull也可以。
: 设备2 of B同理。
: 你可以想象一下weixin怎么做的。

avatar
S*i
41
逮住!你来奔个比基尼!muah~~

【在 o****e 的大作中提到】
: 小米儿~~~~~~~~~~~~~~~~
:
: only

avatar
q*8
42
怎么会直接说到类设计呢,这个是system层面的东西。楼主加油,补充一些系统方面的
知识
avatar
o*e
43
我现在都穿连体的了,lol
还是你来吧

【在 S*********i 的大作中提到】
: 逮住!你来奔个比基尼!muah~~
avatar
h*0
44
我觉得system design从类开始设计就是错误得
avatar
S*i
45
。。这次原谅你
连体也成,来吧~

【在 o****e 的大作中提到】
: 我现在都穿连体的了,lol
: 还是你来吧

avatar
d*e
46
whatsup就是 erlang. 典型案例啊。akka倒是还没人用。

【在 z*******3 的大作中提到】
:
: 的。
: wechat

avatar
o*e
47
潜水服。。。。

【在 S*********i 的大作中提到】
: 。。这次原谅你
: 连体也成,来吧~

avatar
N*i
48
感觉是Aws 的SNS和SQS. 这个自己弄infrastructure太难处理了。
avatar
M*9
49
木有关系, 那个很有曲线。。。上吧。。。LOL

【在 o****e 的大作中提到】
: 潜水服。。。。
avatar
k*a
50
消息肯定要用一个队列管理,每一个消息有一个id,id按照时间排序。
各个设备维护一个本地当前消息id,每次从队列取比当前id更新的消息。
服务器端需要cluster,就是多台服务器共同处理。消息本身以id为key保存在
distribute key value map里,并利用memcached类的东西加速。如果一台服务器crash
,其他服务器继续工作。distributed key value map可以保证数据的availability。
当数据太大的时候,将一个消息分为多个部分,每个部分看做一个消息,只要消息的id
是顺序正确的就可以。
用cluster的horizontal scale解决消息数量巨大的问题,以及availability问题。具
体的技术,可以使用erlang, scala,nodejs这些支持高并发的技术。
感觉面试官可能关心的系统架构设计,而不是OO设计。
avatar
j*l
51
中间远处那个是不是男人。。。。。下面很凸起。。。
avatar
a*u
52
多谢解答,有点懂了。感觉这个题目对我这么一个new grads来说好难啊,

crash
id

【在 k******a 的大作中提到】
: 消息肯定要用一个队列管理,每一个消息有一个id,id按照时间排序。
: 各个设备维护一个本地当前消息id,每次从队列取比当前id更新的消息。
: 服务器端需要cluster,就是多台服务器共同处理。消息本身以id为key保存在
: distribute key value map里,并利用memcached类的东西加速。如果一台服务器crash
: ,其他服务器继续工作。distributed key value map可以保证数据的availability。
: 当数据太大的时候,将一个消息分为多个部分,每个部分看做一个消息,只要消息的id
: 是顺序正确的就可以。
: 用cluster的horizontal scale解决消息数量巨大的问题,以及availability问题。具
: 体的技术,可以使用erlang, scala,nodejs这些支持高并发的技术。
: 感觉面试官可能关心的系统架构设计,而不是OO设计。

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。