[喵咪海外部署]海外部署访问技术探索

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u011142688/article/details/78489991

[喵咪海外部署]海外部署访问技术探索

当一个公司在开展海外业务的时候,对他的技术就有了挑战,因为海外用户访问会遭遇到各种问题(比如网络丢包,延迟高,国内防火墙等问题),喵咪现所在的公司从去年开展全球化业务至今,在技术上也做了很多探索,在这里和大家一同交流下经验希望可以帮助到大家或正在为全球化苦恼的小伙伴们.

PS:没有终极解决方案,只有最符合公司现状和当前业务类型方案,需要结合目前状态选择符合成本的方案

附上:

喵了个咪的博客:w-blog.cn

1.海外访问的问题是什么

在开展海外业务前期,基本上大部分服务都部署在国内环境(相信这也是大部分公司的选择主要用户是国内用户),但是随着公司的扩大产品的成熟,产品被海外用户开始使用,公司也带着产品参考海外的展会或者给客户演示,这个时候就会发现严重的问题:

  • 海外根本无法正常访问国内业务
  • 响应时间特别慢很难接受(类似于不翻墙打开一个国外的网站的感觉基本10秒左右)
  • 文件下载速度只有20kb/s,下载业务文件要2个小时

大致遇到的就是上述这类问题,通过这类问题就有了今天全球化系列

2.应该如何应对海外访问问题?

之后喵咪也在拼命的学习寻找方案,关于海外访问大致可以分为如下几种方案(方案直接可以互相结合并非一种就能解决所有问题比如主节点在海外在加上网络链路优化):

2.1 海外部署节点

首先想到的方案就是为什么不在海外部署节点,这也是大多公司同事给出的建议,但是其中的代价只有实施的人知道,海外部署节点又分为几种方式:

以阿里云举例,在查看ECS列表的时候如果选择海外比如德国的服务器,网页会跳转到德国的网络上去(aws等云厂商基本都是此类方式)
域名从ecs.console.aliyun.com -> ecs-eu-central-1.console.aliyun.com

因为数据的区别海外节点有分为这么几类,完全独立节点,海外独立数据中心或一套数据同步到海外,这几类方式都能很大程度的优化海外用户访问,但是也存在问题
(在喵咪之前的文章中有一个名为otter的阿里开源软件就是来解决数据同步问题)

完全独立节点
- 管理成本高,管理人员需要对国内外管理区分甚至国外有多个管理平台进行开发
- 数据不通导致汇总统计复杂

独立数据中心(例子:各大云厂商)
- 独立数据中心受限于业务,业务需要有相对的独立性
- 国内用户使用海外服务或海外用户使用国内服务还是会出现此类问题(如国内使用阿里德国节点明显慢很多)

数据同步到海外
- 数据通过国外会遇到数据库双写问题复杂度高,涉及数据结构大量修改
- 同步延迟数据冲突问题,海外创建记录test,国外也创建记录test本地因为都没有test记录创建成功在同步的时候会发现冲突

独立数据中心也好还是数据同步也好都需要公司的技术能力比较健壮,技术成本依赖低的后续方案会更加合适,在业务还不稳定在奔跑中的公司不建议使用

2.2 网络优化海外访问

这类方案在很多云厂商或者cdn厂商中提供的最普遍,比如阿里云的高速通道海外加速,网宿科技的APPA,ucloud的高速通道等,这个方案主要解决的是海外网络波动对用户的影响,用户首先访问到海外的节点延迟很低,让后通过海外的节点通过专线等方式访问到国内,极大程度降低了丢包断链等问题

优点
- 技术成本低,无需业务作出任何的改变
- 离得远延迟高的响应速度不块,但是能够保证用户的访问

缺点
- 无法解决延迟高的问题只能优化,用户依旧会感觉卡顿
- 选用云厂商的服务往往都特别的贵

(网宿科技的APPA类似于AWS的动态分发与高速通道不同,海外你无需在准备自己的中转节点,它本身会有很多个海外节点帮助你中转)

3.实践

上面两类方案一个技术成本高,一个经济成本高,就没有一个好办法吗,由于公司没有专门的海外技术小组所以使用第一种方式代价太高成本有些难以接受见效周期长,不太适合现阶段,那么第二个成本这么高20MB国外高速通道一个月要3W块也挺难接受的,所以先找到问题的根源,在了解解决方案的思想在进行解决

3.1 海外根本无法正常访问国内业务

无法正常访问国内业务的罪魁祸首就是网络丢包或网络不稳定的问题,通过ping值测试除了中国周边地区外,基本上海外直接ping国内都会出现丢包,巴西丢包率高达39%(难怪无法访问),但是通过测试发现海外节点大部分于新加坡的网络支持良好基本上无丢包现象(到国内丢包39%的巴西都很稳定),而且国内到新加坡也比较稳定,所以考虑使用新加坡来中转国外的请求回到国内来解决请求过程中丢包导致无法使用的问题

并且在通过各项链路优化数据来降低中转节点到国内的延迟,比如OPENVPN建立长链转发,使用KCP协议优化协议,基本上中转节点到国内的http访问消耗等于ping消耗的毫秒数,比正常的缩短了一倍的速度

(高速通道测试下来并没有缩短延迟的作用,国内到新加坡延迟也很低稳定性也很好和国内连上高速通道中转没有太大的区别,并且高速通道价格特别贵选择了通过外网中转)

3.2 响应时间特别慢很难接受(类似于不翻墙打开一个国外的网站的感觉基本10秒左右)

这个问题其实和国内墙有关系,静态文件一般使用全球CDN加速来解决,对于动态资源,就需要中转不然如果网络丢包TCP协议会一直重试http访问超时或缓慢

3.2 文件下载速度只有20kb/s,下载业务文件要2个小时

这个问题主要是海外CDN在回源的时候被国内的墙进行了拦截限速,这个情况下使用中转的方式吧源站中转出来会得到比较理想的效果

最好的效果是当国外第一次访问文件通过中转回源获取之后这个问题就会在国外存储一份,之后的回源都会寻找到海外的这个源站文件来获取

4 总结

确实因为篇幅问题很难描述的特别细致,在后续的博客中会分解文件分发演进,动态资源加速演进来具体的介绍通过相对比较低的成本来优化用户的体验,大家如果也遇到了海外访问的问题或者有比较好的海外访问的解决方案可以随时来和喵咪沟通,多谢大家的支持今天我们就到这里.

注:笔者能力有限有说的不对的地方希望大家能够指出,也希望多多交流!

展开阅读全文

海外经历帖(日本)

02-06

2012年底 我回国了,结束了日本3年的IT工作。rn三年来,有苦有甜;有喜有悲,每每想起来 都历历在目。rn在阐述之前,首先说下自己的观点:rn1 苦与乐在于自己,身处地狱还是天堂,取决于自己的立场和意志rn2 【苦乐参半】,没有绝对的事情,穷人有穷人的快乐,富人有富人的烦恼,这句话同样适用:国外生活的好坏,没有绝对。rn3 年纪轻轻(30岁以前吧),不管苦还是累,挣钱多还是少,走出国门,扩大一下视野,个人认为有必要。对个人的价值观 人生观以及以后创业,有很大的益处。rn下边开始说下,我的大体经历体验吧:rn我的经历 可能与大部分人不同,我不是纯粹的赴日工作签证,也不是日本派遣,而是 日本母公司的需求下,3年的出向。rn(薪水的话,常驻2万以上 》 出向 2万左右 》 派遣 1万多点)rn3年内,工作地点换了2次,在市区工作过,也在农村分公司工作过。rn有过很多很多的感触,今天主要说下,日本企业的特点,关于中日企业不同,大家大部分都是国内的精英,比较的话,大家自己来。rn1 上下班rn日本上下班跟国内差不多,但是普遍一个现象就是 8点半小时工作制,rn因为中间有半个小时可以休息,一般是下午3点开始到3点半,当然根据工种不同而不同啦rnrn工作态度也因人而异rn 正式员工:上班打盹,下班干活,6点下班干到11点的很多,其实上班的时候啥也没干。。。rn 小时工:上班勤勤恳恳,但是一到下班时间,不管什么情况,扔下就走。。。。rn 半正是社员:最辛苦的一部分人,工作时间跟正式员工差不多,待遇介于正式员工和小时工之间,偏低rn 但是担负责任不少。小时工的统括什么的 都是这部分人做。小时工要是没做完走了,这部分人收尾。rn2 加班rn日本加班跟国内一样,有时间限制,因为时间段、工种不同意而,rn不同的是,日本加班,就是加班,没有1.5倍,2倍之说,,,即使春节期间上班了,也只是正常工资加班。。。rn4 节假日rn日本节假日和国内差不多吧,不同的是制度上的,rn比如说,清明1天假期,正好是周日,rn 在国内的话,大家【被休息】了,【日子不对,怨不得别人。。。。】rn 在日本的话,那假期就成了周1(顺延),也就是说 周6,7,1 都是休息。。。。rn这点还是比较人性化的。。。。rn5 人际关系和工龄rn日本人很注重上下属,和工龄rn上司就是上司,下属就是下属。rn工资根据职位不同,但是职位和工龄一般是挂钩的。。rn想和日本的上司相处好关系,难,那只是工作关系;少有上司和下属【个人关系】多好的rn相反的,跟一般的小时工,很容易相处,我现在回国了,还有那时候的小时工联系。rn6 生活rn 邻居rn日本人一般不怎么跟邻居说话。。。个人感觉,也有可能因为我们是中国人吧。。。rn平时比较友好,偶尔说句话什么的,但是不要招惹啊。。。rn好人不少,XXX人也有。。。rn我就又一次,因为晚上朋友一起喝酒声音大,被报警;然后每次见了都比较敌视。。。rnrn大电器回收:rn在国内 你要是有个破冰箱,破电视机,估计还能有100-200元额外收入。。。rn但是到了日本就不一样了,你要是想扔,不好意思,给我500元,扔给我。。。。rn金额的话,根据电器大小而定,一辆破车的话,估计你要付几千人民币才能【扔】。rn当然,现在也有很多 免费回收电器的,这些也大都是中国人好像,回收后 解体,然后收集值钱的东西,再倒卖。。。rn垃圾:rn日本垃圾处理相当到位,什么时候扔什么垃圾,什么垃圾放到什么袋子里,放到什么地方,都有严格的规定rn一旦出错,有三种可能:1警告(找到你的单位,警告你),2驱逐(去别的地方住吧),3罚款(1000万日元以上,视情节)rn购物:rn在日本 是没有小卖部的,取而代之的是 大超市和24小时店,方便之余 24小时店的东西也相应的贵(一瓶水10元吧,普通超市也就5元左右) rn6 服务rn日本服务行业的态度,是国内不能比的,在日本服务员要是跟顾客有争执,不管谁对错,轻则处分,重则开除,没有可讲情面的地方。rn收费也是一个狠、、、rn受不了的是,服务员经常跪下。。。。rn7:其他rn如果生活拮据了,可以利用业余时间打零工,不过要看你的签证性质了,需要允许的,否则就是打黑工,抓到要遣送回国的。rn打零工,看地方了,小城镇,一小时800以上,大城市一小时1000以上(100日元=7.5元)rn8 环境rn日本环境,那只能一个字【好】rn日本绿化率,达到超过正常生态平衡的水平,什么意思呢,就是树什么的太多啦。。一般的山,因为树多,导致没有路爬。。。rn动物资源相当的丰富,,有很多次在路边看到猴子,浣熊,野猪,各种不知名的动物,还有老鹰、。。。rn河里的王八,呼呼地爬,,,几斤重的鱼,是个小河沟就有,,,但是没有抓的。。。(没去过日本的可能不信呀。。。)rn空气,也是一个字【好】,公园基本上是免费的。。。rnrn最后rn就像这周标题写的,很多朋友说 “在国外生活就是生不如死”,也有很多朋友说“国外就是天堂”rn苦乐参半,这是我的个人感受,希望我的感触能对大家的疑问有所帮助。rn 论坛

没有更多推荐了,返回首页