javascript - 每个用户/产品的新 html、css、js 页面
问题描述
我对 Web 开发比较陌生,我只是在想 Facebook/twitter 或 Amazon 是否为每个用户/产品创建一个新的 html、css、js 页面。如果没有,是否可以使用我正在学习的技术复制此操作。
HTML、CSS、JavaScript + React、Node.js 和 MongoDB
感谢您的任何帮助!!
解决方案
答案是:有点!我将以 Facebook 为例。
Facebook 拥有大约 20 亿用户。每个用户都可以转到他们的个人资料页面。但 Facebook 的服务器上并没有存储 20 亿个“profile.html”页面。这样做会有很多问题:
- 那将是要存储的大量数据。
- 个人资料页面都有很多共同点:它们具有相同的颜色/字体主题、相同的总体布局、相同的页眉和页脚……存储 20 亿个非常相似的文件并不能有效地利用空间。
- 假设 Facebook 想要更改个人资料页面上的字体。他们需要更新所有 20 亿个个人资料页面,效率不高。
相反,Facebook 存储了个人资料页面的一个模板。然后,当用户 Alice 进入她的个人资料时,Facebook 加载模板,从数据库加载 Alice 的数据,将她的数据插入到模板中,然后将填写好的模板发送给 Alice。
这样,Facebook 就获得了以下优势:
- 它们存储的数据量要少得多
- 如果他们想改变个人资料页面的字体,他们只需要改变模板
除了 Facebook 之外的所有其他平台都在做同样的事情。
推荐阅读
- javascript - 当服务器端不允许 cors 时在 javascript 中发出 ajax 请求?
- animation - 我想在 svg 路径中的选定点开始 svg 路径的动画
- javascript - 处理 render() 函数中 componentDidMount() 中定义的变量
- python - 无法使用 dictwriter 在 csv 文件中写入数据
- django - 我什么时候应该检查请求是否是 is_ajax()?
- javascript - Moment.js ,转换 epochtime 时的日期时间无效
- python - 通过 SVM 训练数据的相同键扩展字典值
- python - 在熊猫数据框中查找元素
- android - LiveData observeForever 不会随着房间的变化而更新
- java - STS/Eclipse 显示潜在的资源泄漏,为什么?