有没有办法将图像部署到 Firebase 托管,但仅限于存在更改的地方?
Is there a way to deploy images to Firebase hosting, but only where changes exist?
我将我的 Angular2 站点部署到 Firebase 托管,但 'dist' 文件夹总是发送 'assets' 文件夹中的整个图像集,即使它们没有更改。这会占用比必要更多的带宽,因为此文件夹比所有其他文件加起来还要大。
如何才能只部署更改后的映像?
该策略将是:
A) 配置 Firebase CLI“deploy”命令以仅处理已更改的图像
AND/OR
B) 配置 Angular 生产构建以仅打包更改的图像(尽管这仍然需要 Firebase 更新 'assets' 文件夹而不是在部署时覆盖所有其他未更改的图像)
正如我所见,Firebase 存储不是一个好的选择...在页面加载时进行 API 调用以访问图像只会减慢加载时间...除非有缓存策略参与这个?归根结底,解决方案需要让 CDN 和 CLI 协同工作,以最大限度地减少带宽和 load/deployment 时间。
抱歉,目前没有针对 Firebase 托管静态内容的部分部署。
另一种方法可能是将您的图像托管在一个项目中,而将其他所有内容托管在另一个项目中。如果您的图像不经常更改,那么如果没有任何更改,您就不必将图像部署到项目中。
您还可以使用 Storage 来存储图像,然后通过 Cloud Functions integration with Firebase Hosting, which can do the lookup dynamically and proxy the image to the client. Hosting can then be configured to cache the images at the CDN, as described in the documentation 提供它们。
如果您改为记录实时数据库中图像的存储下载 URL,而不是要求存储生成图像,然后让客户端查看那里,您可能还会看到一些好处。
我将我的 Angular2 站点部署到 Firebase 托管,但 'dist' 文件夹总是发送 'assets' 文件夹中的整个图像集,即使它们没有更改。这会占用比必要更多的带宽,因为此文件夹比所有其他文件加起来还要大。
如何才能只部署更改后的映像? 该策略将是:
A) 配置 Firebase CLI“deploy”命令以仅处理已更改的图像
AND/OR
B) 配置 Angular 生产构建以仅打包更改的图像(尽管这仍然需要 Firebase 更新 'assets' 文件夹而不是在部署时覆盖所有其他未更改的图像)
正如我所见,Firebase 存储不是一个好的选择...在页面加载时进行 API 调用以访问图像只会减慢加载时间...除非有缓存策略参与这个?归根结底,解决方案需要让 CDN 和 CLI 协同工作,以最大限度地减少带宽和 load/deployment 时间。
抱歉,目前没有针对 Firebase 托管静态内容的部分部署。
另一种方法可能是将您的图像托管在一个项目中,而将其他所有内容托管在另一个项目中。如果您的图像不经常更改,那么如果没有任何更改,您就不必将图像部署到项目中。
您还可以使用 Storage 来存储图像,然后通过 Cloud Functions integration with Firebase Hosting, which can do the lookup dynamically and proxy the image to the client. Hosting can then be configured to cache the images at the CDN, as described in the documentation 提供它们。
如果您改为记录实时数据库中图像的存储下载 URL,而不是要求存储生成图像,然后让客户端查看那里,您可能还会看到一些好处。