乔峰和萧远山父子相认# Joke - 肚皮舞运动k*g2013-12-30 08:121 楼一个可以在不同设备上运行的应用,类似Google Keep那样的,怎样解决Sync的问题?比如,在手机更改了一些内容,但手机当时是离线的状态回到家里时,手机连上wifi了,正在更新数据,同时电脑上也做了一些编辑...这个题有什么可以展开的点吗?
w*h2013-12-30 08:122 楼我的PD是2013年12月EB-2,后来降级到EB-3。2018年4月下旬收到RFE,6月1号递交了补充材料(体检报告和J表),6月5号收到USCIS提示他们会重新处理我的case。我的问题是7月份EB-3倒退到13年1月份,但是我现在还没有收到485被批的消息。像我这样的情况会因为排期倒退而影响处理吗?如果EB-3不处理,是否要联系律师马上升级回EB-2?谢谢。
r*k2013-12-30 08:128 楼离线的时候就不允许编辑呢?【在 k***g 的大作中提到】: 一个可以在不同设备上运行的应用,类似Google Keep那样的,怎样解决Sync的问题?: 比如,在手机更改了一些内容,但手机当时是离线的状态: 回到家里时,手机连上wifi了,正在更新数据,同时电脑上也做了一些编辑...: 这个题有什么可以展开的点吗?
s*x2013-12-30 08:1210 楼不是计算机专业的,个人想法……标注出修改位置和时间,还有就是对修改进行分类,想word一样,加字删字是一类,改格式是一类,挪地方是一类,不同类有的有冲突,有的可以共存,然后同步时就按修改时间先后一个一个处理……好像挪地方可以看成是删除了再在另一个位置增加……行外看法……
f*s2013-12-30 08:1214 楼没太明白,粗浅理解gossip比较适合对响应不是怎么敏感的boolean信息传递吗?譬如经典例子就是机器的health信息。在这个问题场景下怎么解决propagation速度不可控的问题?譬如client在欧洲,手机在美国,当client上传了一些照片,欧洲的服务器要到哪年才能把这个信息传给美国负责手机同步的服务器?我理解这样来处理,一套处理文件的系统,blockserver负责上传数据,并且更新metaserver集群中的信息。meta server集群中记录文件更改情况和时间,按照时间戳来处理冲突(参考g家牛叉的spanner)meta server最后将数据按照primary key进行 partition 然后用consistent hashing存在不同的存储节点上,存储节点上用leader election写在leader,传递给slaves 用quorum consistency 保证availability。当meta server更新结束,给一个distributed queue发送更新指令,说明用户和需要更新的设备信息,在queue的另一端,接收到指令的server提示和设备保持连接的服务器推送更新服务的信息 参见spdy 长连接。【在 z****e 的大作中提到】: gossip
z*e2013-12-30 08:1216 楼gossip一个常见应用是天气预报,如果非要用欧洲和美国来做例子的话所有的天气预报均不可用,因为同样存在“哪年才能把这个信息传给美国负责手机同步的服务器”的问题,从欧洲到美国,这有些吃太饱了你的meta server如果放在欧洲,客户在美国用server,难道没有类似问题?跨洲的传输丢包那是惊人的多,而且元数据集中同样增加了风险负责本地区的server群一般都会选择靠近客户近的地方比如欧洲客户就由北欧的数据中心处理天朝在宁夏或者东京,澳洲东南亚客户就由悉尼负责北美就在西雅图或者科罗拉多之类的amazon之所以全球建数据中心也是为了这个考虑比较少说南半球客户由北美数据中心负责除非不得不这么做,以减少响应时间的差异gossip到底响应有多及时,完全就是一个scale看怎么实现,原理都是ap系统,实际上现在前端用cp系统的不太多了做cp会随着nodes数量增长而拖慢进度如果保存一下需要半分钟才能完成,或者时不时提示无法完成估计所有人最后都无法忍受这个app对文档处理可以保存负责的node处理信息,然后对nodes做一级replica随机在同一区域找2-3个nodes做一级replica,负责拷贝既时的修改信息然后再做二级replica,区域内replica,最后global replicawhich可能永远都不会做,没有必要这种机制也同样暗示不要用cp系统,否则要上distributed transaction要弄is和ix锁,会挂客户端本身可以保留有一些类似cookie的东西以加强server的处理速度下次比如欧洲的server收到了处理请求有cookie的话就可以通知server之前的处理在哪个node上然后直接去那个server把文件给考过来就好然后server side再用consistent hashing之类的来分区严格说来跟consistent hashing其实没啥必然联系metahashing【在 f***s 的大作中提到】: 没太明白,粗浅理解gossip比较适合对响应不是怎么敏感的boolean信息传递吗?譬如: 经典例子就是机器的health信息。: 在这个问题场景下怎么解决propagation速度不可控的问题?譬如client在欧洲,手机: 在美国,当client上传了一些照片,欧洲的服务器要到哪年才能把这个信息传给美国负: 责手机同步的服务器?: 我理解这样来处理,一套处理文件的系统,blockserver负责上传数据,并且更新meta: server集群中的信息。: meta server集群中记录文件更改情况和时间,按照时间戳来处理冲突(参考g家牛叉的: spanner): meta server最后将数据按照primary key进行 partition 然后用consistent hashing
f*s2013-12-30 08:1218 楼对于跨region丢包的问题的确是不可逾越的瓶颈,除了不断retry还真没啥主意。http://www.quora.com/Dropbox/What-is-Dropboxs-architecture其实设计方案也不是我的,从drobpox的talk上面抄来改了下,把后台从mysqlhorizontal partition 改成了key value系统,仅仅把mysql 底层的innodb 做文件系统(Facebook抄过来)用primary key和consistent hashing分区和ring management(从dynamo抄过来)来处理scalability,当不同region出现conflict,用googlespanner处理.需要解释的是文件业务系统当然是欧洲和美国分开的,但是meta server还是要同步的,能想到的就是amazon s3中的dual head link list,每一个在欧洲的文件有一个指向美国本地的pointer,后台有event机制推送同步,当然是eventual consistency.【在 z****e 的大作中提到】: gossip一个常见应用是天气预报,如果非要用欧洲和美国来做例子的话: 所有的天气预报均不可用,因为同样存在: “哪年才能把这个信息传给美国负责手机同步的服务器”: 的问题,从欧洲到美国,这有些吃太饱了: 你的meta server如果放在欧洲,客户在美国用server,难道没有类似问题?: 跨洲的传输丢包那是惊人的多,而且元数据集中同样增加了风险: 负责本地区的server群一般都会选择靠近客户近的地方: 比如欧洲客户就由北欧的数据中心处理: 天朝在宁夏或者东京,澳洲东南亚客户就由悉尼负责: 北美就在西雅图或者科罗拉多之类的
z*e2013-12-30 08:1220 楼干脆就不要垮region存就是solution了美国数据consistent到欧洲去有啥意义欧洲要用,那就等欧洲那边有client登陆或者有人share给了欧洲的用户之后再通知美国这边consistent到那边去meta data做全球consistent还不是一样的慢?都eventually consistent还需要做globally consistent么?所有美国欧洲的数据,都consistent到大洋洲亚洲?没有意义等亚洲大洋洲有人登陆了再copy过去就好了绝大多数都不会有这种垮洲处理的问题而且都eventually consistent了,跟gossip没啥本质区别那既然是ap系统,scale out就好办了最需要解决的就是如何通过本地的replica来防止当前处理的node挂掉这在分布式算法里面有不少方法解决光看阿三的ppt蹦点产品名词是学不会原理的persistence用什么,其实无所谓,有什么用什么原理都是相通的,换个名字换点api而已而且google spanner这种是有版权的,升级时候api不兼容旧的api到时候就麻烦了,这种事太常见一般首选还都是apache,战斗的民族比较靠谱【在 f***s 的大作中提到】: 对于跨region丢包的问题的确是不可逾越的瓶颈,除了不断retry还真没啥主意。: http://www.quora.com/Dropbox/What-is-Dropboxs-architecture: 其实设计方案也不是我的,从drobpox的talk上面抄来改了下,把后台从mysql: horizontal partition 改成了key value系统,仅仅把mysql 底层的innodb 做文件系: 统(Facebook抄过来)用primary key和consistent hashing分区和ring management(: 从dynamo抄过来)来处理scalability,当不同region出现conflict,用google: spanner处理.: 需要解释的是文件业务系统当然是欧洲和美国分开的,但是meta server还是要同步的: ,能想到的就是amazon s3中的dual head link list,每一个在欧洲的文件有一个指向: 美国本地的pointer,后台有event机制推送同步,当然是eventual consistency.
g*e2013-12-30 08:1222 楼perforce【在 k***g 的大作中提到】: 一个可以在不同设备上运行的应用,类似Google Keep那样的,怎样解决Sync的问题?: 比如,在手机更改了一些内容,但手机当时是离线的状态: 回到家里时,手机连上wifi了,正在更新数据,同时电脑上也做了一些编辑...: 这个题有什么可以展开的点吗?