一种基于P2P的web服务器模型
云是有一个个的细微颗粒组成的,每个颗粒虽然是微小的,但是它们组合起来却可以遮天蔽日,具有强大的能力。
最近bitcoin的出现让我觉得基于p2p的web服务器应该也是可以实现的吧。以下是我个人的一些想法。
实现的效果
· 用户在安装客户端程序之后会自动与其他网络节点之间取得联系,获取一些必要的信息(这些信息待定)
· 用户在浏览器中输入127.0.0.1或者localhost即可访问这个基于p2p的网络服务器。(当然可以不使用80端口)
· 这个web服务器是一个平台,用户可以在上面创建自己的网站,比如搭建wordpress等等,使用的人越多该用户的网站获取的资源就越多。极端情况是如果这个人的服务只有他一个人使用那么他的数据不会扩散到P2P网络。
首先一个应用需要两个基本的东西
A、 存储空间
B、 运算资源(CPU资源)
每个用户就是一个网络节点,这点与P2P网络没有区别。(为了鼓励节点用户分享足够的资源,可以采用积分制度,甚至与bitcoin绑定。)
其次解决与传统服务器不同的结构
A、 传统服务器控制权在网站站长手里,可以防止数据被恶意篡改,但是现在所有的数据要分布存储在不同的计算机物理存储设备中,怎样防止错误的信息扩散到P2P网络中。
我想到的是基本原则是让信息PK,假设正确的信息序列是ABCDEFG,而有人攻击网络将一部分节点的信息改为ABBDEFG了。
B、 数据存储的连续性,在传统硬盘上面文件存储的结构改变了,需要定义一种新的文件系统File System。用于解决数据查询。
(在这里可以解决文件缓存问题,比如web上面一些常用的静态文件可以直接存在用户节点,且竟可能少的存放用户不需要的资源。
C、 CPU资源的分散,需要网络自动将一些运算分解开,发布给节点CPU运算。
最后
还有很多一些细节的想法,但是自己对计算机底层不是很了解,比较喜欢生物的存在方式,相信世界的本源都是简单到极致的,不喜欢直接就创造一个庞然大物,喜欢用微小的元素组成一个有机体。
另外对现在的云计算走的道路不是很赞同,觉得不应该把所有的计算、存储集中在服务器,而是储存与计算都分散到每个用户。用户有需求自然产生云。
欢迎大家拍砖~
这个想法很早就有了,但是一直没有敢写出来,最近又看到一些BT的资料,觉得还是很可行的。
附上一些资料:
http://www.feeqi.com/category/tencent%E4%BA%A7%E5%93%81
这个链接,网站出错
真深奥。大牛。
为什么我搜我的博客的搜索引擎Link会有那么多你的博客链接呢?在雅虎上搜的:http://siteexplorer.search.yahoo.com/search;_ylt=A0oGk.tosAJOEEsBrnDal8kF?p=www.ztfy.tk&fr=sfp&bwm=i
@行云流水
我也不知道为什么会这样了