解决国外用户访问网站慢的问题
来源:互联网 发布:四旋翼pid算法 编辑:程序博客网 时间:2024/04/30 08:09
现象:
阿里云上有ECS,华东地区的,现在有美国和日本的客户反映访问我们的网站比较慢?部分美国客户上传图片上传不了,不能完成报名的操作。
在卡卡网上测试后如图,(卡卡网地址:http://www.webkaka.com/)
原因:
公网延迟和国家防火墙导致的
维基百科地址:https://zh.wikipedia.org/wiki/%E9%98%B2%E7%81%AB%E9%95%BF%E5%9F%8E
解决方案:
第一、使用阿里云的vpc,但是价格太贵,一般游戏公司会采用。
第二、分区域部署业务,数据做双向同步,DTS可以支持mysql双向同步。但是我们数据库部署在ECS上,没有部署云数据库上,切换成本太高。
第三、分区域部署业务、使用接口进行同步,虽有延迟,但是能满足我们的网站需求,故采用。
下面说一下怎么部署
1、买一台ECS的海外服务器,根据网站需求,我们只有前端部分,故要求不高
2、部署JDK,nginx,tomcat环境,步骤省略,具体文章可参考其他网络资料
3、申请域名,配置nginx
#run upstream RUN { server XX.27.54.XX:9500; } server { listen 80; server_name run.XXXXX.cn; location / { proxy_next_upstream error timeout http_500 http_502 http_504; proxy_read_timeout 600s; proxy_set_header Host $host; proxy_pass http://RUN; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_intercept_errors on; client_max_body_size 20M; client_body_timeout 120s; client_body_buffer_size 256k; index index.html; } location ^~ /errorpage { root /home/nginx/nginx_data; } error_page 500 502 503 504 /errorpage/500.html; error_page 400 404 /errorpage/404.html; error_page 403 /errorpage/403.html; }
4、开启服务,重新到卡卡网上测试,延时已经降了很多。
5、开启阿里云的海外CDN加速。因为我们工程结构是直接把网站需要的css,不涉及到业务的js,img等静态网页都是都是部署在工程里面,使用OSS+CDN实现动静分离,需要改发布流程,流程未完善,所以改用在原域名上加速。
定义的CDN缓存策略为
部署上cdn之后,再卡卡网上再次测试
测试结果很诡异,反而慢了
难道CDN没有生效,查看浏览器查看是否在启用CDN。
从上面黄色标注的地方可以看出,的确走了CDN,那为什么会慢呢?是不是测试软件本身的的问题呢?换个测试软件
https://www.host-tracker.com/InstantCheck/1/d13bd992-67cb-e711-879e-0003ff7328cc
的确有差别,但是还是能看出,有点慢。
到底怎么回事呢?
答:测试软件的测试方法和测试探针节点分布有关系。
再等等后面的真人测试结果吧
- 解决国外用户访问网站慢的问题
- DNSMasq & Reverse proxy 解决国外网站访问慢等问题
- 如何解决国外用户访问国内网站打开速度慢难题?
- 解决使用GOOGLE字体网站访问慢的问题
- 解决Asp.net Web网站第一次访问慢的问题
- 使用国外 DNS 造成国内网站访问慢的解决方法
- 国外网站类似于stackoverflow、github访问慢的解决办法
- 很多国外网站使用了google字体,导致访问慢,如何解决
- linux 网速慢,访问国外网站也慢 解决方法
- Appfuse创建网站访问慢的问题
- 解决网站访问速度慢
- 解决CVS访问慢的问题
- 解决Github访问超慢的问题
- 解决codeforces访问慢的问题
- 解决github访问速度慢的问题
- 解决github访问慢的问题
- apache配置优化 - 解决apache环境下网站访问速度慢的问题(重点参考)
- apache配置优化 - 解决apache环境下网站访问速度慢的问题
- MongoDb 基本操作(PHP)
- 沉浸式状态栏——状态栏的实现封装类
- 动态的给ajax传dada参数
- 我的第一篇博客
- nginx配置TP5
- 解决国外用户访问网站慢的问题
- Linux入门
- java日期转换小知识
- Qt笔记(5)重新搭建Qt开发环境 二
- MySQL Error 不定期更新
- java中queue的使用
- Java核心技术读书笔记--数据类型
- 第一章-绪论
- C#设计模式之代理模式(三)