由于某些需求,要临时搭建局域网络,给小范围内大量移动客户端提供特定的网络服务,这样的服务通常包含常见的HTTP服务、数据文件下载服务、RESTFul接口服务等。市面常见的非企业级WIFI路由器能够承受的用户连接不会太大,一般也就数十个,便携的MIFI用户连接更少,连接超过十多个就无法正常使用了,同时根据现实条件,时常是需要使用3G/4G给WIFI路由提供网络支撑,若APP需要下载一些离线数据包,这样的网络非常容易崩溃。若要支持大量用户,在不提升硬件级别的条件下,只能增加若干WIFI设备进行扩容,但这从根本上没有解决并发下载大数据包的问题。

以下介绍一种利用反向代理缓存大数据,减轻WIFI内下载大数据包对网络的影响,同时支持RESTFul接口连入Internet的方法。

参见上图,左侧是供APP接入的局域网,右侧是Internet环境。局域网中,虚线表示APP和Internet Web接口的连接,此连接只是短连接,提供小数据量的接口服务,并接入Internet;实线表示大数据连接,可提供持久的大数据缓存服务。

此图中关键的设备是反向代理服务器(Reverse Proxy Server),此服务器同时还需作为DNS服务器。经过模拟,使用Nginx提供反向代理功能,在Nginx的配置中,添加大数据(安装包、压缩包、图片等)文件的本地目录,对API接口则转发到Internet交由更强大的云Server进行数据和逻辑处理。Nginx的配置可参考如下:

    server {
listen 80;
server_name domain.com; location / {
proxy_pass http://domain.com;
} location ~ \.zip$ {
root CacheFiles;
} location ~ \.apk$ {
root CacheFiles;
} error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}

利用这种网络和软件的配置模式,优点如下:

1、局域网设备配置要求相对较低

2、可复制性高,操作简易,可快速复制多个相同网络

3、本地数据传输速度较快,对3G/4G接入不产生压力

4、用户体验较好,真正实现了无缝接入,包含了数据包和接口的无缝接入

5、无需再次进行分网段引起的数据同步

以上内容还处于理论和试验阶段,有待近期投入实际运作进行验证。欢迎指正!

反向代理在APP通过无线路由接入3G/4G时的特殊作用的更多相关文章

  1. nginx反向代理tomcat应用,struts2网站程序redirect时导致请求地址错误的解决方法

    一个使用struts2的网站在登录页面需要进行redirect跳转,大致如下: <package name="admin" extends="httl-defaul ...

  2. 02 - nginx - 反向代理、限速

    一.Nginx反向代理 代理服务器,客户机在发送请求时,不会直接发送给目的主机,而是先发送给代理服务器. 代理服务接受客户机请求之后,再向主机发出,并接收目的主机返回的数据,存放在代理服务器的硬盘中, ...

  3. Linux 笔记 - 第二十章 配置 Nginx 反向代理和负载均衡

    一.简介 由于 Nginx 的反向代理和负载均衡功能经常被提及,所以将这两个功能单独提出来进行讲解. Nginx 其实仅仅是作为 Nginx Proxy 反向代理使用的,因为这个反向代理功能表现的效果 ...

  4. 【应用服务 App Service】 App Service Rewrite 实例 - 反向代理转发功能

    问题描述 在使用Azure App Service(应用服务)时,有时候需要在不同的站点之间进行跳转,但是希望通过通过访问同一个域名的方式来实现反向代理.如果创建应用时候选择的是Window服务,这时 ...

  5. 【Azure 应用服务】App Service For Container 配置Nginx,设置/home/site/wwwroot/目录为启动目录,并配置反向代理

    问题描述 通过Docker Desktop for Linux,配置Nginx镜像后,自定义nginx.conf文件,修改启动目录和对 /out 路径的反向代理到博客园的博文地址 (https://w ...

  6. app与jvm 反向代理时config的设置(用于在web页面显示npm(就如tomcat)产生的页面)

    dev: { // Various Dev Server settings contentBase: ROOT, host: ip, port: 8084,    //此端口为任意设置,不重复即可,为 ...

  7. Nginx支持WebSocket反向代理-学习小结

    WebSocket是目前比较成熟的技术了,WebSocket协议为创建客户端和服务器端需要实时双向通讯的webapp提供了一个选择.其为HTML5的一部分,WebSocket相较于原来开发这类app的 ...

  8. 【架构师之路】Nginx负载均衡与反向代理—《亿级流量网站架构核心技术》

    本篇摘自<亿级流量网站架构核心技术>第二章 Nginx负载均衡与反向代理 部分内容. 当我们的应用单实例不能支撑用户请求时,此时就需要扩容,从一台服务器扩容到两台.几十台.几百台.然而,用 ...

  9. Nginx负载均衡与反向代理—《亿级流量网站架构核心技术》

    当我们的应用单实例不能支撑用户请求时,此时就需要扩容,从一台服务器扩容到两台.几十台.几百台.然而,用户访问时是通过如http://www.XX.com的方式访问,在请求时,浏览器首先会查询DNS服务 ...

随机推荐

  1. How to configure spring boot through annotations in order to have something similar to <jsp-config> in web.xml?

    JSP file not rendering in Spring Boot web application You will need not one but two dependencies (ja ...

  2. 记一次由于缓存导致的bug

    bug描述 有一张数据库表存储的是 值日员工信息,有时候可能一次性录入1个月的数据.有时候也可能隔了很多天没有录入数据,也就是说这个录数据不是很规律. bug现象:测试人员发现,网站上三亚地区能正常显 ...

  3. [Unity3D]Unity3D游戏开发Lua随着游戏的债券(在)

    ---------------------------------------------------------------------------------------------------- ...

  4. iOS8的APP过渡过程

    1. 2. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWluX3hpYW53ZWk=/font/5a6L5L2T/fontsize/400/fill/ ...

  5. [OpenGL]OpenGL坐标系和坐标变换

    OpenGL通过摄像机的模拟.要实现一个三维计算机图形重大转变,这是几何变换(模型转换-查看转型(两者统称为几何变换)).投影.作物转型.口变换等.同一时候,OpenGL还实现了矩阵堆栈等.理解掌握了 ...

  6. [Songqw.Net 基础]WPF插件化中同步Style

    原文:[Songqw.Net 基础]WPF插件化中同步Style 版权声明:本文为博主原创文章,未经博主允许可以随意转载 https://blog.csdn.net/songqingwei1988/a ...

  7. 经典数字图像处理(matlab 实现)

    Ivan Selesnick(Software) Sparsity / Total variation / Denoising Software - Michael Elad's Personal P ...

  8. React HOC

    在React官网文档学习React HOC,整个看了一遍还是云里雾里的,于是按照官网文档,自己动手实践一下.官网地址:React 高阶组件 定义:高阶组件就是一个函数,且该函数接受一个组件作为参数,并 ...

  9. java_Mac安装多个JDK版本并设置环境变量

    JDK6.JDK7.JDK8三个版本的汇总地址:https://pan.baidu.com/s/1pKSYv8Z 安装 JDK6安装 JDK6下载地址 见网盘 安装完毕后确认版本 JavaForOSX ...

  10. 基于Linux C的socketEthereal程序和Package分析 (一个)

     执行测试平台:CentOS 6.5发行版,内核版本号3.11 1. Linux抓包源程序 在OSI七层模型中.网卡工作在物理层和数据链路层的MAC子层. 进行网络通信时.源主机通过socket( ...