所以我正在考虑在GCP上运行Nextcloud服务器,但是访问量可能不多,也许一天总共有3个用户访问半小时(实际上不是同时很多)。我应该使用哪种GCP产品来运行它,因为它很多时候都处于空闲状态...?
干杯, 锡伯特
编辑:我要问的原因是因为我想保持非常低的成本,并且我觉得由于很多时间都闲着,所以可能会有特定的GCP产品/服务可供选择
答案 0 :(得分:3)
您可以尝试使用微突发共享核Compute Engine虚拟机之一。它们与同一物理服务器上的其他VM共享一个CPU内核,因此它们非常便宜。对于f1-micro
变体,实际上Google可以让您始终保持开启状态(并处于活动状态),甚至无需为此付费。
为了实现瞬时性能,Google还允许共享核心VM在短时间内的高负载下暂时使用多达整个核心。这应该有助于访问和写入速度。
在持续的负载期间,您可以尝试设置一些使用Compute Engine的可抢占节点的工具。这些价格通常不到普通VM的一半,但要注意的是,它们一次最多不能使用24小时,并且它们可能会随时终止以释放常规VM的供应。因此,共享核心VM将为轻负载或短暂负载提供高可用性和足够的性能,并且您可以在需要时启动其他抢占式服务器以帮助进行繁重的工作。
就存储价值而言,最好将大多数数据保存在HDD支持的持久性磁盘上,然后减轻一些负担并加快对具有RAM或SSD的常用文件的访问支持的操作系统级别的缓存。
如果有一些大型数据集您不经常使用,但仍然需要偶尔访问,则可以通过将它们移至Nearline或Coldline Cloud Storage并通过以下方式在服务器上进行设置来节省一些资金: FUSE
坐骑。
答案 1 :(得分:1)
对于您的用例,适当的选择是将其托管在Compute Engine instance上。
关于该服务经常处于空闲状态,很遗憾,目前尚无官方的GCP解决方案,因为您仍需为here中所述的任何运行中的GCE实例付费。
它停止充电的唯一方法是停止VM,但是在删除磁盘之前,它仍然会向磁盘收费。因此,定价取决于您为实例选择的machine type和disk。
尽管如此,一种可能会帮助您的变通办法是使用外部第三方软件,例如automated scheduling tool,它可以根据其使用情况打开或关闭VM。但这确实意味着您必须等待实例启动才能使用它。
答案 2 :(得分:1)
我也建议使用其他评论中提到的Compute Engine instance。我在GCP上运行Nextcloud近一年了,我发现g1-small
即使在空闲状态下也经常会出现内存不足的情况。我正在使用fpm-alpine镜像以及nginx,redis,mysql和加密在Docker中运行Nextcloud。因此,至少使用n1-standard-1
。如果您计划存储大量图片,则共享的CPU层具有劣势,通过Web UI和Nextcloud App的每一次图片首次加载都会触发缩略图的生成,这是CPU繁重的操作,并且会导致CPU较低的实例对Nextcloud的无响应。打开包含大量图片的文件夹会使Nextcloud WebUI对所有人无响应(Nextcloud应用程序会给您带来错误),直到生成缩略图为止。
如果您选择N1系列标准等级,我建议使用Committed use discounts
如果您选择g1-small
和3年承诺,则价格几乎与import sympy as sy
sy.init_printing()
phi = sy.symbols("phi")
v1 = sy.Matrix([sy.cos(phi),sy.sin(phi),0])
v2 = sy.Matrix([-sy.sin(phi),sy.cos(phi),0])
相同(可能取决于地区)。
对于N1系列,即使您不提交,也会获得Sustained use discounts。
对于您的少量用户,我建议您不要使用Cloud SQL实例。即使在最小的层上,您也不会利用可用资源。
至于HDD,我正在使用标准的永久磁盘,这已经很便宜了。
还要仔细选择您的地区,有些比其他地区便宜。