了解复杂的网站架构(reactjs,node,CDN,AWS S3,nginx)

时间:2018-01-21 01:03:18

标签: node.js reactjs nginx amazon-s3 architecture

有人可以向我解释this website (link to a picture)的架构吗?我正在努力理解前端部分中的不同元素以及顶部的字段,这些元素似乎与AWS S3和CDN相关。虽然我不理解memcache,但后端部分看起来很清楚。我也不明白为什么在前端部分需要nginx proxy或为什么它在那里。

我是一个绝对的初学者,所以如果有人能够告诉我这些事情是如何联系起来的话,那将会非常有帮助。

Source

1 个答案:

答案 0 :(得分:1)

Memcache可能用于缓存频繁数据库查询的结果。它还可以用作会话数据库,以便经过身份验证的用户会话可以跨多个服务器一致地工作,从而无需服务器关联(memcache是​​执行此操作的几种方法之一)。

左边的CDN在从S3获取图像时将图像缓存在边缘位置,这是应用程序的WordPress部分推送它们的位置。 CDN并非严格必要,但通过将频繁请求的对象缓存到更靠近观看者的位置来提高性能,并在一定程度上降低传输成本。

nginx代理是一个HTTP路由器,它选择性地将某些路径模式路由到一组服务器,并将其他路径路由到其他服务器组 - 看起来该站点的一部分由WordPress提供,其中一部分是node.js ,其中一部分是浏览器需要获取的静态反应代码,这是分离单个主机名后面的路径并将它们路由到不同服务器集群的一种方法。执行此操作的其他方法(在AWS中)是Application Load Balancer和CloudFront,它们中的任何一个都可以根据请求路径路由到特定服务器,例如: /assets/*/css/*