Architecture 关于web应用程序体系结构(特别是前端)的一般查询

Architecture 关于web应用程序体系结构(特别是前端)的一般查询,architecture,hosting,cdn,restful-architecture,Architecture,Hosting,Cdn,Restful Architecture,我们的应用程序(最初可通过web访问,后来可通过移动应用程序和/或桌面应用程序访问)有一个应用程序服务器,它提供由所有端点驱动的应用程序和内部API(React for web,iOS/Android for mobile future等)。此应用程序服务器将可由app..com上的端点访问-目前,这是通过托管在heroku上的Django REST框架驱动的后端实现的 我们还有一个登录页,将由www.com提供服务 我的问题实际上是关于为登录页提供服务的服务器。显然,它将只提供静态内容、登录页

我们的应用程序(最初可通过web访问,后来可通过移动应用程序和/或桌面应用程序访问)有一个应用程序服务器,它提供由所有端点驱动的应用程序和内部API(React for web,iOS/Android for mobile future等)。此应用程序服务器将可由
app..com
上的端点访问-目前,这是通过托管在heroku上的Django REST框架驱动的后端实现的

我们还有一个登录页,将由
www.com
提供服务

我的问题实际上是关于为登录页提供服务的服务器。显然,它将只提供静态内容、登录页内容和静态react应用程序JS,当它必须发出请求并获取数据时,这些应用程序将参与
app..com

显然,在这种情况下,我不需要在后端使用脚本引擎。你建议我使用什么来提供登录页内容和静态react应用程序代码?简单的apache服务器?别的?我们的应用程序目前仅在美国,通过CloudFront或任何其他CDN部署有意义吗


如果有任何建议,我将不胜感激

静态内容最好由快速http服务器提供。我个人的偏好是因为它的配置简单,性能好,但apache也可以 这就像将htmls上传到服务器一样简单。尽管如此,有几件事需要牢记在心。花一些时间为不同的文件类型配置缓存头。自动化部署过程,例如,让Ansible在推送到repo后部署您的web内容,或将其转换为docker容器。这应该足以处理每天数千个请求。如果您的规模更大,那么CDN是一个有效的改进点,可以扩展web服务器,进一步改进缓存和压缩。 另外一点:您的ngnix还可以作为一个非常有效的反向代理,面向您的rest后端。您可以轻松地设置负载平衡和ssl,以便您的其余部分可以专注于快速的业务操作。

快乐黑客。

静态内容最好由快速http服务器提供。我个人的偏好是因为它的配置简单,性能好,但apache也可以 这就像将htmls上传到服务器一样简单。尽管如此,有几件事需要牢记在心。花一些时间为不同的文件类型配置缓存头。自动化部署过程,例如,让Ansible在推送到repo后部署您的web内容,或将其转换为docker容器。这应该足以处理每天数千个请求。如果您的规模更大,那么CDN是一个有效的改进点,可以扩展web服务器,进一步改进缓存和压缩。 另外一点:您的ngnix还可以作为一个非常有效的反向代理,面向您的rest后端。您可以轻松地设置负载平衡和ssl,以便您的其余部分可以专注于快速的业务操作。
快乐黑客