(服务器)节点

常见问题

“节点”有什么作用?

更快、更稳健。 是Bitcron 系统最基础的组成。

“节点” 是什么意思?

一个“节点”相当于一台服务器。
Bitcron是分布式的,能实现在不同国家、地区以比较快的速度同时接入(非CDN)。
“节点”之间互相独立。每个网站能按需选择自己的节点(network),并且多个节点中的数据保持一致性同步

主节点有什么作用?

Bitcron默认选择系统中前几个位于美国机房的高性能服务器作为主节点,每个用户都会被分派到其中一个节点,并且所有的网站数据,都会同步到这个主节点(以及其它选中的节点)当中。

首页总提醒节点“错误”?

当访问非自己的主节点的时候,Bitcron的首页会提醒当前节点并非你的主节点。
可以在非主节点上对网站进行操作,但非主节点上进入网站的文件管理器则会显示空白,因为它并不存储最终数据。

建议进入自己对应的主节点进行各种管理和操作,或者确定自己的某个网站已经加入某个节点的,则可以忽略系统的提醒。
比如你的主节点为us.bitcron.com,但某个网站已经添加hk.bitcron.com的IP作为network之一了,那么访问hk.bitcron.com对这个网站直接进行管理,效果跟在主节点中的操作是一样的。

网站的network是什么意思?

一个网站可以设定有多个节点负责它的运行,network一般情况下是指这多个节点的合集,在某些情况下,是指这些节点服务器的IP列表。

怎么知道自己的主节点?

如下图,登录 Bitcron.com 后,在顶部的导航中,选择节点,然后看到后面跟着[main]的,则表示这个节点为自己账户对应的主节点的。

是不是加入的节点越多越好?

按需即可。
另外,加入节点,需要支付额外的费用
客观原因所致,一般东亚地区价格还会高于北美区域,特别是香港节点,流量的费用会高出很多。

节点间的数据是如何同步的?

当一个网站加入一个节点的时候,数据就会自动同步到这个节点中。这个等待时间接近即时,一般不超过1分钟,但同步的过程需要时间,期间表现为数据会源源不断地出现,而不是一次性同时出现。

另外,当其中一个主节点发生故障的时候,另外主节点之间会平均分派所有的站点,此时也会进行数据的同步。
但这个时候的数据同步不是立马进行的,而是标记为同步,并且等到网站被访问到的时候,才会进一步进行同步。

节点增、减可能存在的副作用

网站同步日志在不同节点上不一致

这个是正常的。
每个节点之间互相独立。
同步日志不完全一致,包括source的标识等,但总体还是趋同的。
注意: 如果在使用客户端软件,并且有从服务器端同步回来的操作的,请注意节点间不要跳跃,跳跃的话,可能存在个别文件不同步(回来)的情况。

计划任务(Cronjob)可能会被激活一次

在自己的网站添加了一个新的节点到network中,那么这个节点会尝试同步网站内的所有数据。
这个同步行为,是对基本数据的全新编译(因为节点之间是互相独立的,数据未经转化,不能直接进行同步),这就意味着原来负责cronjob定义的csv文件,会被重新解析,从而获得一个对应的计划任务列表。
听起来好像很复杂?其实主要有两件事情:
1, cronjob在新节点里,会reset到原始的状态,就是它的计划执行时间(一般)远远晚于当前时间,所以会被立即执行(相当于第一次执行)。
2,网站的network发生了变化,整个network中,仅仅有一个节点能执行cronjob;由于network的变化,原来负责执行cronjob的节点,可能不再负责了。

空文件夹的残留

有可能某个节点从其它节点同步的时候,残留已经删除了的空文件夹;可以手工在 Wed 端的文件管理器中进行删除。
一般情况下,并不影响网站页面的呈现。
注: 未来我们应该会想办法解决这个问题

什么是节点跳跃?

一般情况下,在同一个地区、访问同一个域名(对应一个Bitcron上的网站或服务)是相对固定的。在Bitcron系统本身没有出现故障、自动转移的时候,请求到并非期望的某个节点,我们称为节点跳跃
一般有以下两种情况:

  1. 使用CNAME绑定的值(比如直接错误地使用park.bitcron.com)和最终网站解析域名对应不同的解析结果。
  2. 使用了某个服务域名(比如sync.bitcron.com),而这个服务域名的IP并不是自己网站内容直接存储的节点,从而导致同步产生十几秒甚至1分钟左右的延时。

解决的办法也很简单,比如第一种情况,使用正确的CNAME值就可以了;第二种情况,API直接请求自己网站的域名,而不是Bitcron的系统域名。