Filecoin客户端将写请求发送给主副本,主副本将写请求复制到其他备副本,常见的做法是同步操作日志(CommitLog)。主副本首先将操作日志同步到备副本,备副本回放操作日志,完成后通知主副本。接着,主副本修改本机,等到所有的操作都完成后再通知客户端写成功。复制协议要求主备同步成功才可以返回客户端写成功,这种协议称为强同步协议。大量PC机通过网络互联,对外作为一个整体提供去中心化协议服务。Filecoin项目可以通过增加PC机的方式,使项目整体性能表现为线性增长。Filecoin中面临很多出错的可能性,比如机器宕机,网络分区,程序崩溃等等。上海Filecoin解决方案
为什么需要Filecoin?实际上,使用Filecoin是“被迫”的,因为随着互联网的飞速发展、应用越来越丰富、用户数量越来越多、数据也成几何级增长,海量数据的去中心化协议给本地去中心化协议带了巨大压力,去中心化协议项目已经不堪重负,处于崩溃的边缘,因此,必须通过其他手段分散去中心化协议项目压力,Filecoin和分布式文件项目应运而生。实际上,如果可能,应该是尽量不使用分布式的,因为这会增加项目的复杂度和管理难度,然而,虽然是这样,但这些终归是可以通过其他技术来解决。南京获得Filecoin架构Filecion和IPFS共用了同一个Libp2p模块。
Filecoin具有可扩展性、可用性、可靠性、高性能、易维护、低成本等特性。按照官方的定义:Filecoin就是一种数据去中心化协议技术,通过网络使用每台机器上的磁盘空间,并将这些分散的去中心化协议资源构成一个虚拟的去中心化协议设备,数据分散地去中心化协议在网络中的各个角落。是一种用来“去中心化协议数据”的技术,只不过它受到了“分布式”这一特点的加持,拥有了其他“去中心化协议技术”没有的特殊“光环”。在区块链体系中,Filecoin技术并不是只由一个数据库、或只由某一个人来决定数据的有效和更新。
Filecoin由于多个副本的存在,如何保证副本之间的一致性是整个分布式项目的理论中心。数据一致性这个单词在平常开发中,或者各种文章中都能经常看见,我们常常听见什么东西数据不一致了,造成了一定的损失,赶快修复一下。那有几种一致性呢?a、时间一致性:要求所有数据组件的数据在任意时刻都是完全一致的;b、事物一致性:事务一致性只能存在在事务开始前的和事务完成之后,在事务过程中数据有可能不一致,比如A转100元给B,A扣减100,B加上100,在事务开始前和事务完成之后都能保证他们的帐是对上的,那么这就是事务一致性。但是在事务过程中有可能会出现A扣减了100元,B没有加上100元的情况,这就是不一致。Filecoin因为其关键的技术,非常便于拓展。
互联网后端的分布式项目要求支持横向扩展,即通过增加普通PC服务器来提高项目的整体处理能力。普通PC服务器性价比高,故障率也高,需要在软件层面实现自动容错,保证数据的一致性。另外,随着服务器的不断加入,需要能够在软件层面实现自动负载均衡,使得项目的处理能力得到线性扩展。从单机单用户到单机多用户,再到现在的网络时代,应用项目发生了很多的变化。而分布式项目依然是目前很热门的讨论话题,分布式项目给我们带来很更加方便处理数据的能力和方法。对于Filecoin,它的获得资料原理是有效存储证明。南京获得Filecoin架构
Filecoin因为庞大的规模,对系统的扩展性能要求较高。上海Filecoin解决方案
Filecoin从本质上来说IPFS将原来P2P软件的按需下载转变为资源的长期去中心化协议,那么长期去中心化协议就需要有服务质量保证,否则没有用户愿意将自己有价值数据或者需要服务质量保证的资源内容去中心化协议到IPFS中。那么对于一个松散的IPFS网络,用户的随意退出、网络质量的不确定性、去中心化协议地理位置的不确定性、硬件资源性能参差不齐,硬件资源的性能抖动,这些问题都使得IPFS没有办法去去中心化协议对服务质量有强需求的资源去中心化协议,换句话说就是没有办法在商业领域中使用。所以,IPFS需要Filecoin的激励机制来吸引一批专业的去中心化协议服务商来提供更专业、安全和稳定的去中心化协议服务。上海Filecoin解决方案