基于Hadoop开发网络云盘系统架构设计方案第一稿

简介:

引言

  云计算技术的发展,各种网络云盘技术如雨后春笋,层出不穷,百度、新浪、网易都推出了自己的云盘系统,本文基于开源框架Hadoop设计实现了一套自己的网络云盘系统,方案为初步设计方案,不断完善中。

一、总体架构

二、方案说明

2.1 系统切分

  从用户角度,整个系统划分为ECDisk客户端、ECDisk运营管理平台、HDFS分布式文件存储集群和账户数据应用平台四部分。

2.2 功能需求

  文件管理:浏览、文件上传、文件下载、文件删除

  用户管理:用户注册、用户登录、用户注销、账户充值、账户查询  

三、技术选型

  3.1 HDFS服务接口

  考虑到客户端开发环境为VC++2010,HDFS客户端API采用Hadoop自身提供的Thrift接口。

  3.2 用户数据库

  用户数据库存储用户的账户信息,保留在MySQL数据库中。

  3.3 内存数据库

  为提高用户账户信息访问速度,所有当前在线用户(已登录)的账户数据都缓存到内存数据库中,内存数据库选用基于Erlang实现的Menisa。

四、设计原则

  4.1 隐藏暴露原则

  面向ECDisk用户只能直接访问用户数据应用服务器,HDFS服务器资源用户登录后,由用户数据服务器返回给ECDisk客户端。

  4.2 授权原则

  ECDisk终端用户只能访问授权用户设定的空间,超出空间限制不允许访问。

五、界面原型

目录
相关文章
|
17天前
|
数据采集 存储 监控
网络爬虫的最佳实践:结合 set_time_limit() 与 setTrafficLimit() 抓取云盘数据
本文探讨了如何利用 PHP 的 `set_time_limit()` 与爬虫工具的 `setTrafficLimit()` 方法,结合多线程和代理 IP 技术,高效稳定地抓取百度云盘的公开资源。通过设置脚本执行时间和流量限制,使用多线程提高抓取效率,并通过代理 IP 防止 IP 封禁,确保长时间稳定运行。文章还提供了示例代码,展示了如何具体实现这一过程,并加入了数据分类统计功能以监控抓取效果。
52 16
网络爬虫的最佳实践:结合 set_time_limit() 与 setTrafficLimit() 抓取云盘数据
|
2月前
|
安全 网络安全 Android开发
安卓与iOS开发:选择的艺术网络安全与信息安全:漏洞、加密与意识的交织
【8月更文挑战第20天】在数字时代,安卓和iOS两大平台如同两座巍峨的山峰,分别占据着移动互联网的半壁江山。它们各自拥有独特的魅力和优势,吸引着无数开发者投身其中。本文将探讨这两个平台的特点、优势以及它们在移动应用开发中的地位,帮助读者更好地理解这两个平台的差异,并为那些正在面临选择的开发者提供一些启示。
116 56
|
1月前
|
资源调度 分布式计算 Hadoop
YARN(Hadoop操作系统)的架构
本文详细解释了YARN(Hadoop操作系统)的架构,包括其主要组件如ResourceManager、NodeManager和ApplicationMaster的作用以及它们如何协同工作来管理Hadoop集群中的资源和调度作业。
39 3
YARN(Hadoop操作系统)的架构
|
2月前
|
C++
C++ Qt开发:QUdpSocket网络通信组件
QUdpSocket是Qt网络编程中一个非常有用的组件,它提供了在UDP协议下进行数据发送和接收的能力。通过简单的方法和信号,可以轻松实现基于UDP的网络通信。不过,需要注意的是,UDP协议本身不保证数据的可靠传输,因此在使用QUdpSocket时,可能需要在应用层实现一些机制来保证数据的完整性和顺序,或者选择在适用的场景下使用UDP协议。
75 2
|
2月前
|
小程序 数据安全/隐私保护
Taro@3.x+Vue@3.x+TS开发微信小程序,网络请求封装
在 `src/http` 目录下创建 `request.ts` 文件,并配置 Taro 的网络请求方法 `Taro.request`,支持多种 HTTP 方法并处理数据加密。
Taro@3.x+Vue@3.x+TS开发微信小程序,网络请求封装
|
18天前
|
存储 分布式计算 Hadoop
探讨Hadoop的基础架构及其核心特点
总之,Hadoop的设计目标是解决大数据存储和分析问题,提供一个可靠、可扩展、高效且成本低廉的解决方案。随着数据量的日益增长,Hadoop及其生态系统在业界的重要性也日益凸显。
14 0
|
2月前
|
数据采集 存储 前端开发
豆瓣评分9.0!Python3网络爬虫开发实战,堪称教学典范!
今天我们所处的时代是信息化时代,是数据驱动的人工智能时代。在人工智能、物联网时代,万物互联和物理世界的全面数字化使得人工智能可以基于这些数据产生优质的决策,从而对人类的生产生活产生巨大价值。 在这个以数据驱动为特征的时代,数据是最基础的。数据既可以通过研发产品获得,也可以通过爬虫采集公开数据获得,因此爬虫技术在这个快速发展的时代就显得尤为重要,高端爬虫人才的收人也在逐年提高。
Qt开发网络嗅探器02
Qt开发网络嗅探器02
|
2月前
|
网络协议 容器
Qt开发网络嗅探器03
Qt开发网络嗅探器03
|
2月前
|
安全 网络安全 数据安全/隐私保护
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享安卓与iOS开发中的线程管理比较
【8月更文挑战第30天】本文将探讨网络安全与信息安全的重要性,并分享关于网络安全漏洞、加密技术和安全意识的知识。我们将了解常见的网络攻击类型和防御策略,以及如何通过加密技术和提高安全意识来保护个人和组织的信息安全。
下一篇
无影云桌面