更省更快,如何使用 Serverless 搭建个人专属网盘?
作者| 西流 阿里云 Serverless 技术专家
1分钟 Serverless 部署个人网盘,赠好礼
随着全球大数据不断增长,未来数据云存储容量需求也将不断扩大,iiMedia Research(艾媒咨询)数据显示,2020年全球数据中心存储容量将达到272艾字节。不断扩大的个人数据和云储存需求加速了个人云服务市场的发展,2020年中国个人云盘用户规模有超过4亿人。
虽然现在市面上有些网盘产品, 如果免费试用,或多或少都存在一些问题, 可以参考 2020国内还能用的网盘推荐。 本文旨在使用较低成本打造一个 “个人专享的、无任何限速的、如 Windows 体验的私有云盘”。
KodBox 遇见 Serverless
为什么是 KodBox?
调研了不少开源的 web ui filemanager, kodbox 深深打动了我, 功能丰富超出了我的想象,总结下来就是: 简单高效,流畅, 云端存储&协同办公新体验
- 如Windows体验的私有云盘/企业网盘
- 完全支持私有化部署,存储安全可控
- 数百种文件格式在线预览、编辑和播放
- 轻松分享,高效协作,细粒度权限管控
- 全平台客户端覆盖,随时随地访问,轻松同步挂载
更多详情可以参考 kodbox中文网
为什么选择 Serverless 托管 KodBox 应用?
网盘的操作时间就是比较离散的, 尤其是对于个人和家庭的网站, 常备一台机器(数据库也需要安装在本机, 不然还有单独的数据库费用), 会产生大量的浪费, 比如凌晨大家都睡觉了,机器资源是闲置的。 而对于晚上 8 点, 家庭成员都在娱乐休闲的时候, 可用一台机器的资源又不太够用, 比如大家一起同时在线看不同的 4K 高清电影(当然每个人可以自己先快速下载到自己本地PC 机或者手机)。 而 Serverless 很好的解决了这个需求, 按量付费, 有请求随时扩容。
阿里云函数计算是事件驱动的全托管计算服务。使用函数计算:
- 您无需采购与管理服务器等基础设施,只需编写并上传代码。
- 函数计算为您准备好计算资源,弹性地、可靠地运行任务。
- 按量付费、免运维
- 提供日志查询、性能监控和报警等功能。
借助函数计算,您可以快速构建任何类型的应用和服务,并且只需为任务实际消耗的资源付费。 
将 kodbox 项目部署到函数计算, 数据库持久化使用阿里云文件存储,内容存储使用阿里云对象存储, 我们就得到一个专属的 " 计算+存储都可以 Serverless 无限扩展、不限制网速、支持数百种文件格式在线预览编辑和播放、轻松分享和协作" 的个人&家庭网盘。
直接体验
http://kodbox.fc-nas-filemgr.1986114430573743.cn-hangzhou.fc.devsapp.net~~ 账号: test 密码:test@123~~
登录之后, 您可以得到一个 web 版本的 windows 操作系统的体验, 对您 NAS 盘 或者 OSS 上多媒体文件进行预览、编辑、移动等各种处理。
当然:
- 如果您部署成功后, 默认有 admin 账号, 可以实施更高级的用户管理级插件安装等等...
- https://kodcloud.com/download/~~ 可以下载 PC 或者手机客户端实现网盘的自动备份同步功能 ...~~
直接放体验场景的内容,少字
成本剖析
- 计算费用: 0.000110592元/GB-秒, 每个月有 40万 GB-秒的免费额度,这项基本免费。
- 流量费用:函数请求响应流量:0.50元/GB, 取决于您每个月从您的网盘上下载文件的多少, 上传没有流量费用。上传和下载均没有限速。
- 持久化费用:使用阿里云 NAS, 主要部署 kodbox 应用需要的 sqlite 数据库, 0.35(*结合低频介质,低至0.19) GB/月, 由于 NAS 单价比较贵, 建议 NAS 盘只做 kodbox 的 sqlite 数据库存储, 不会超过1G, 费用即 0.35 元。
- 在单纯存储这块, 可以选择您自己存储类型,以使用 OSS 做文件存储为例, OSS 存储价格如下表, 如果电影收集爱好者, 大部分电影应该是冷归档型,假设有 100GB 的存储资源,那么每个月的存储费用是 1.5 元。
具体示例
小明使用这个方案做自己的私有或家庭网盘,目前大约有 150G 的资源
存储
通过对 OSS 结合基于最后一次修改时间的生命周期规则实现Bucket内指定前缀的Object在达到指定天数后转换为目标存储类型,策略说明如下:
- Object存储30天后,自动转换为低频访问类型。
- Object存储180天后,自动转换为归档存储类型。
- Object存储360天后,自动转换为冷归档存储类型。
假设小明的资源的分布情况如下:
- 最新的存储资源(30 天以内), 5G
- 30-180天内的资源, 20G
- 180天-360天的资源,25G
- 超过360天的资源,100G
NAS 作为数据库: 0.35 元
因此小明每个月的存储费用为: 0.12 * 5 + 20 * 0.08 + 25 * 0.033 + 100 * 0.015 + 0.35 = 4.875
计算
函数计算 0.000110592元/GB-秒, 每个月都有 40万 GB-秒的免费额度(这个等价于 1核(1.5G) 的机器完整执行 74.1 小时), 函数计算是按毫秒计费的, 每次操作, 只是相当执行一次函数调用, 比如预览, 看起来您预览这个文章花费了很长时间, 实际上的耗费, 就是预览那次请求,后端执行的是100-200s 的时间(即计费也在这个时间), 按照网盘的操作频率, 这项应该基本在免费额度内。
流出流量
该方案最大的优势就是上传和下载没有任何限速, 上传没有流量费用。 理论上 FC 一个实例, 最大内网带宽是1Gbps, 最大外网带宽是 100Mbps。
假设小明每个月, 会翻阅自己网盘内的电影和照片, 假设每个月消耗的流量是 15G, 流量费用为 0.5 * 15 = 7.5
总结
小明一个月的总费用为: 4.875 + 7.5 = 12.375 元
参考
快速部署实战操作
- 开通阿里云函数计算
- 开通阿里云文件存储
- 在登录阿里云控制台的状态下, 打开这个引导链接 start-fc-kodbox, 按照这个指引教程走下去即可, 视频教程如下:

- 使用 admin 账号登录, 进入后台存储管理, 添加适合自己的存储, 比如增加一个 OSS Bucket。

畅想
在文章 PHP 遇见 Serverless,帮你解决这些痛点!中, 我们十分细致地讨论了 PHP 应用在 Serverless 的最佳实践方式以及带来的巨大价值, 其中最重点的一个点是 FC 弹出的实例演化为存粹的执行环境, PHP web 工程存储到 NAS, 这个时候我们就可以使用 Kodbox + FC 实现 windows 体验般的 WEB UI 对 NAS 上的 PHP 工程就地管理, 包括上传、覆盖、删除、修改等。


参考
- 艾媒咨询|2020-2021年中国个人网盘专题调研报告
- https://github.com/devsapp/start-fc-kodbox
- https://github.com/kalcaddle/kodbox
- 2020国内还能用的网盘推荐
更多内容关注 Serverless 微信公众号(ID:serverlessdevs),汇集 Serverless 技术最全内容,定期举办 Serverless 活动、直播,用户最佳实践。
更省更快,如何使用 Serverless 搭建个人专属网盘?的更多相关文章
- 搭建 Seafile 专属网盘
准备域名 任务时间:15min ~ 20min 域名注册 如果您还没有域名,可以在腾讯云上选购,过程可以参考下面的视频. 视频 - 在腾讯云上购买域名 域名解析 域名购买完成后, 需要将域名解析到实验 ...
- 基于CentOS 搭建 Seafile 专属网盘
系统要求:CentOS 7.2 64 位操作系统 安装 Seafile 安装依赖环境 使用 yum 安装 Python 及 MySQL: yum install python python-setup ...
- 基于Ubuntu搭建Seafile专属网盘
系统要求: Ubuntu 16.04.1 LTS 64 位操作系统 安装 Seafile 服务器 安装依赖环境 在 Debian/Ubuntu 系统下,可以使用以下命令安装 MySQL: sudo a ...
- Centos搭建Seafile个人网盘
1.安装依赖环境 yum install python python-setuptools python-imaging python-ldap python-memcached MySQL-pyth ...
- 树莓派搭建Seafile个人网盘
步骤一.安装Seafile依赖包 yum install python-setuptools python-ldap python-memcached MySQL-python mariadb mar ...
- 基于 CentOS 搭建Seafile个人网盘
一.安装 Seafile 安装依赖环境使用 yum 安装 Python 及 MySQL: yum install python python-setuptools python-imaging pyt ...
- 使用Docker搭建Nextcloud私有网盘
一.准备材料 安装环境:linux 工具:docker 软件:MySql.Nextcloud 二.安装Docker 安装Docker:https://www.cnblogs.com/jzcn/p/15 ...
- 使用ECS和OSS搭建个人网盘
体验简介 本场景将提供一台配置了Centos 7.7版本的ECS实例(云服务器)和对象存储OSS实例.通过本教程的操作,您可以基于ECS和OSS快速搭建一个个人网盘. 体验此场景后,可以掌握的知识有: ...
- seafile私有网盘搭建
各种公有网盘确实很方便,但总有些特殊情况不是? 闲来无聊准备自己搭建一个私有网盘,也让自己的闲置的服务器好好利用一下 搜索一番,找到了专业户seafile 一顿操作,踩了无数大坑,特此总结一下 1.c ...
- Dnsmasq安装与配置-搭建本地DNS服务器 更干净更快无广告DNS解析
默认的情况下,我们平时上网用的本地DNS服务器都是使用电信或者联通的,但是这样也导致了不少的问题,首当其冲的就是上网时经常莫名地弹出广告,或者莫名的流量被消耗掉导致网速变慢.其次是部分网站域名不能正常 ...
随机推荐
- 通过.NET Core+Vue3 实现SignalR即时通讯功能
.NET Core 和 Vue3 结合使用 SignalR 可以实现强大的实时通讯功能,允许实时双向通信.在这个示例中,我们将详细说明如何创建一个简单的聊天应用程序,演示如何使用 .NET Core ...
- DHorse v1.5.0 发布,基于 k8s 的发布平台
版本说明 新增特性 支持同一机器部署多个DHorse服务: 支持Next..NET应用部署: 优化Node.Nuxt应用构建和部署的性能: 默认使用fabric8客户端与k8s集群交互,可以通过指定参 ...
- Kernel Memory 入门系列:文档的管理
Kernel Memory 入门系列: 文档的管理 在Quick Start中我们了解到如何快速直接地上传文档.当时实际中,往往会面临更多的问题,例如文档如何更新,如何划定查询范围等等.这里我们将详细 ...
- NetSuite 开发日记 —— 库存详细信息记录更改数量问题
详细报错: "type":"error.SuiteScriptError","name":"USER_ERROR",&q ...
- 有意思,我的GitHub账号值$23806.2,快来试试你的?
睡不着,看到一个有意思的网站:Estimate Github Worth Generator. 它可以用来估算 GitHub 账号的价值.马上试了一下. 我的账号估值:$23806.2 操作很简单,点 ...
- 云MSP技本功|基于OGG 实现Oracle到Kafka增量数据实时同步
简介: 在大数据时代,存在大量基于数据的业务.数据需要在不同的系统之间流动.整合.通常,核心业务系统的数据存在OLTP数据库系统中,其它业务系统需要获取OLTP系统中的数据.传统的数仓通过批量数据同步 ...
- 手写spring的ioc的流程截图(笔记-1)
spring ioc是什么? IoC 容器是 Spring 的核心,也可以称为 Spring 容器.Spring 通过 IoC 容器来管理对象的实例化和初始化,以及对象从创建到销毁的整个生命周期. S ...
- 2023-05-13:你现在手里有一份大小为 n x n 的 网格 grid, 上面的每个 单元格 都用 0 和 1 标记好了其中 0 代表海洋,1 代表陆地。 请你找出一个海洋单元格,这个海洋单元格
2023-05-13:你现在手里有一份大小为 n x n 的 网格 grid, 上面的每个 单元格 都用 0 和 1 标记好了其中 0 代表海洋,1 代表陆地. 请你找出一个海洋单元格,这个海洋单元格 ...
- 【DevCloud·敏捷智库】如何利用故事点做估算
背景 在某开发团队辅导的第二天,一个团队负责人咨询道:"领导经常管我要开发计划,我如何能快速的评估出预计开发完成时间呢,我们目前用工时估算,我听说过故事点估算,不知道适合吗?" 问 ...
- 华为云·云享专家李万龙: IoT 梦想,从0到1的实现
摘要:掀翻35岁IT人退役魔咒,站在巨人肩膀上,应用新技术,结合经验,整体方案优势,让IoT快速生花,这就是李万龙的最新感悟. 随着过去几年传感器和终端设备长足的发展,加上通讯连接在带宽和速度上的大幅 ...

