Calibre-web 个人图书库搭建记 15: 1m带宽主机的坑

在腾讯云主机上安装了calibre-web程序,因为主机只有1M带宽,折腾了很长时间的访问优化。现在访问优化基本上能静态访问的图片、css、js、图书下载都放到了不限带宽、不限容量、按照容量和流量收费的对象存储中了。

但遗漏了一个电子书管理很重要的功能,发送到kindle的服务也是通过服务器发送电子邮件,而往外传数据是用的出口带宽,如果实时发送电子邮件带上几M的书附件就太慢了,发一本书带宽跑满的情况下也要很长时间,程序经常超时,也影响正常网站访问。这个问题直到自己尝试发送到kindle时才发现。

研究了一下在腾讯云可以有几种方式可以处理这种非实时要求的大附件发送要求,一种是直接加带宽,目前看成本收益不高。另一种是通过其他服务发送邮件和附件,腾讯云的五服务器函数可以干这个事情,scf无服务器函数可以直接读取对象存储内容,也能通过smtp 发送邮件,可以通过腾讯云消息队列smq进行调用。

考虑了一个异步邮件发送的方案,发送事件信息写到异步的消息队列,消息队列调用无服务器函数,无服务器函数直接根据消息指令内网读取对象存储中的图书文件发送邮件。

修改calibre-web的邮件发送模块,只需要调用消息sdk增加邮件发送队列事件。增加邮件发送的消息队列,在无服务器函数编写邮件发送函数。具体开发顺序需要倒序着来。这个改动也挺大,外网流量费也高,0.8元/G。先做好git的代码管理以后再考虑这个事情。

还想到另外一种方式,用家庭带宽搭建邮件和书库代理,通过接口调用,需要在家里搭一套书库和邮件发送以及队列程序。虽然可以利用家里的带宽,但也增加了复杂度,如果搞了这一套还不如直接把程序整个部署在家里服务器上就好了。

这么一想也把自己吓了一跳,不如真的就直接把程序部署到家庭带宽环境下,出口带宽一下子就飙升到了20M,每年省下好多钱呢!

发自我的iPhone


这一系列文章并没有什么具体的技术细节,开了个QQ交流群(72239907),方便大家交流读书、技术问题、图书资源共享。如果有什么软件安装等问题也可以加 calibre 交流群的QQ群(72239907)进行交流。
点击链接加入群聊【爱读书 读好书 calibre】:https://jq.qq.com/?_wv=1027&k=5vYWQsV

“Calibre-web 个人图书库搭建记 15: 1m带宽主机的坑”的一个回复

发表评论

电子邮件地址不会被公开。 必填项已用*标注