A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© HM张博文 高级黑马   /  2013-6-14 10:06  /  1788 人查看  /  9 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

什么是云计算呢?

    其实云端(cloud)就代表了互联网(Internet),通过网络的计算能力,取代使用你原本安装在自己电脑上的软件,或者是取代原本你把资料存在自己硬盘的动作,你转而通过网络来进行各种工作,并存放档案资料在网络,也就是庞大的虚拟空间上。我们通过所使用的网络服务,把资料存放在网络上的服务器中,并借由浏览器浏览这些服务的网页,使用上面的界面进行各种计算和工作。
猜猜看怎样?其实你已经在云端之中了
    网络为基础的电子邮件服务像是Hotmail或Yahoo,可以说是云计算中最早的热门形式。如果你使用Facebook来与朋友互动,使用Flickr来存放照片,或者是用GOogle Gmail来发送邮件,你已经是在云端环境中存放自己的资料,同时使用云端为基础的技术,也就是新闻说的幕后神奇魔法。
云端冲浪(Cloud surfing)
       就像是不论你在哪边都看得到天空,你可以在任何能够使用网络访问的地方,连接你需要的云计算服务,即便你不是在自己的电脑上
走进云端之中
    上网本(netbook)的成功,以及移动网络(如可上网手机)的发迹,让云计算的普及性更高,人手一机是云计算很好的增长动力。上网本与手机通常被定义成较低性能的计算设备,也因此他们消耗较少的电力,同时具备相当程度的便携性。
    一台上网本也许不能把肥大的Photoshop软件跑得很顺,或者是不能存储超大量的音乐文档。但感谢云计算之赐,上网本并不需要具备这些能力,它需要的只是一个浏览器,以及网络连接能力,这样就能够听大量的音乐,线上处理照片,或者是在云端上发送电子邮件给其他联络人。
    所以,如果你需要的只是打一份文件,也许它同时需要包涵一些基本的格式处理,你并不需要微软Word软件的完整计算能力,你只需要上网登录Google Docs就可以做到类似的效果。
    在云计算中,服务器并不会管你电脑的计算能量有多强。有的同事在办公室用PC连上Google Docs,在家则是用Apple MacBook,同时还有很多其他的服务可以通过你的手机或iPhone与Android平台手机上的应用软件来完成。
多人协同操作的云计算
    你可以在任何一台电脑上登入使用云端服务,而一个朋友或同事也可以登入并和你一起在一样的文件上工作。Google Docs只是能够协同操作的一种办公室型态云计算服务。有些服务甚至还可以让人在全球不同的地点登入服务并同时在一样的文件上工作。
    云计算也许听起来很棒,但是它还是有一些隐忧的,也是你在使用时必须要考虑的地方。正如同开放源代码阵营名人Richard Stallman指出的,你的资料是在第三方厂商的手上,而且是在你控制以外的。
在云端上安全吗?
    最有可能遇到的问题是安全性,鲜少有公司会想窃取你的资料并做出无耻的网站设计,但最好还是研究一下各种网站和网络服务,找一些可信赖的专家推荐的,例如Lifehacker或是你谦卑的仆人科技疯人。
    就算某个网站的服务声誉卓着又值得信赖,还是可能会出现技术性问题,今年稍Google Docs就因设备故障导致私人资料外泄,像在线音乐串流服务Spotify就有可能成为那些想窃取使用者资料的黑客的目标。
云端安全性
    幸运的是,一点点常识和一些简单的正确电脑操作练习可以将这类安全性失误的影响降至最低,避免将你的机密资料放在云端上,如果你真的放了,例如利用网上银行时,避免在网咖、学校或图书馆内的公用电脑上进行,也别太随便给出自己真正的联络资料,避免每个帐号都使用同一个密码,就算只更改一个字母也好。
云端失联
    云计算第二个主要问题是可能暂时故障导致你无法使用某项服务,你可能把资料放在某个网站上而这个网站却因服务器故障导致某一段时间无法进入,Twitter就因偶发性挂点而恶名昭彰,每次它的网站挂掉时就会出现“掉落的鲸鱼”图案, 更糟的是,你有可能因此而遗失全部的资料。
云端消失
    最糟、最糟的情况是,当你想搜索自己在云端上的资料时却发现“情空中万里无云”,如果你想野餐这当然是好事,但如果是这个为你保管资料的公司突然关门大吉,可就大事不妙了。
去年Linkup与博客平台JournalSpace就发生这样的事情。可能要选择真正的大公司才会比较安全,例如Google,不过英国北岩银行(Northern Rock)、Woolworths、瑞银集团(UBS)以及全冰岛人民的客户可能当初也是这么想的。
    就算一家公司运营正常,还是可能会选择关闭某项服务,例如Google最近就宣布要关闭提供记事功能的Google Notebook服务,不过网络的适应性是很强的,提供类似服务的Evernote马上就接着发布一项可从Google将你的资料移植的工具。
云层过多
    如果你还没有备份自己的资料,你真的应该开始备份了。如果你不信邪,用iTunes就好了,但如果你信邪而且开始备份这些资料,就一直备份下去吧...想想要把全部的CD都跑过一次要花上多少时间(如果你还保有它们的话),更别提那些你借来的CD或是已经购买的MP3。
    想像一下明早你醒来时发现它们全部不见了,至少你还有音乐可以听,但如果遗失的是你的生日或婚礼或在瑞典穿着日本浴衣驾驶拖拉机的照片,那可能反而是件好事。
如果你想避免资料流失,结合实质的备份与线上服务提供的以云端为基础的备份是最起码的措施,当你的外部硬盘坏掉或你的房子烧毁时,云端那边的备份会派得上用场,而当在线服务的某个服务器坏掉或网站破产关闭时,你硬盘内的备份就有用了。
通过云端传送资料
    以上就是使用云端计算的基本技巧,不论你已经在云端上,每件事都在网络上做,或是你不信任云端,无法将你赖以为生的资料交给它们保管,都可留言分享你的看法。

应用在哪些方面?

理论上讲在全部的领域,它就像是一个在远端的服务器,我们想用上面的资源或运算能力,只需即时购买,即时享受服务。
但是,就目前来讲,个人觉得主要还是在两个方面。
一是我们已经在享受的,但是我们很少关注的云应用。比方说apple的Icloud那些拥有的iphone手机,Itunes的用户就可以通过网络从apple的APP store下载歌曲、电影、软件等等,但是在这强调的是,云应用远不止这些普通意义上上同步。
二是IaaS业务,比较常见的像阳光云、盛大云,均是云计算服务器供应商。不论是企业用户,还是散户均可以通过网上购买来享受服务。

评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1 很给力!

查看全部评分

9 个回复

倒序浏览
云计算的核心技术

  云计算系统运用了许多技术,其中以编程模型、数据管理技术、数据存储技术、虚拟化技术、云计算平台管理技术最为关键。

  (1)编程模型

  MapReduce是Google开发的java、Python、C++编程模型,它是一种简化的分布式编程模型和高效的任务调度模型,用于大规模数据集(大于1TB)的并行运算。严格的编程模型使云计算环境下的编程十分简单。MapReduce模式的思想是将要执行的问题分解成Map(映射)和Reduce(化简)的方式,先通过Map程序将数据切割成不相关的区块,分配(调度)给大量计算机处理,达到分布式运算的效果,再通过Reduce程序将结果汇整输出。

  (2) 海量数据分布存储技术

  云计算系统由大量服务器组成,同时为大量用户服务,因此云计算系统采用分布式存储的方式存储数据,用冗余存储的方式保证数据的可靠性。云计算系统中广泛使用的数据存储系统是Google的GFS和Hadoop团队开发的GFS的开源实现HDFS。

  GFS即Google文件系统(Google File System),是一个可扩展的分布式文件系统,用于大型的、分布式的、对大量数据进行访问的应用。GFS的设计思想不同于传统的文件系统,是针对大规模数据处理和Google应用特性而设计的。它运行于廉价的普通硬件上,但可以提供容错功能。它可以给大量的用户提供总体性能较高的服务。

  一个GFS集群由一个主服务器(master)和大量的块服务器(chunkserver)构成,并被许多客户(Client)访问。主服务器存储文件系统所以的元数据,包括名字空间、访问控制信息、从文件到块的映射以及块的当前位置。它也控制系统范围的活动,如块租约(lease)管理,孤儿块的垃圾收集,块服务器间的块迁移。主服务器定期通过HeartBeat消息与每一个块服务器通信,给块服务器传递指令并收集它的状态。GFS中的文件被切分为64MB的块并以冗余存储,每份数据在系统中保存3个以上备份。

  客户与主服务器的交换只限于对元数据的操作,所有数据方面的通信都直接和块服务器联系,这大大提高了系统的效率,防止主服务器负载过重。

  (3) 海量数据管理技术

  云计算需要对分布的、海量的数据进行处理、分析,因此,数据管理技术必需能够高效的管理大量的数据。云计算系统中的数据管理技术主要是Google的BT(BigTable)数据管理技术和Hadoop团队开发的开源数据管理模块HBase。

  BT是建立在GFS, Scheduler, Lock Service和MapReduce之上的一个大型的分布式数据库,与传统的关系数据库不同,它把所有数据都作为对象来处理,形成一个巨大的表格,用来分布存储大规模结构化数据。

  Google的很多项目使用BT来存储数据,包括网页查询,Google earth和Google金融。这些应用程序对BT的要求各不相同:数据大小(从URL到网页到卫星图象)不同,反应速度不同(从后端的大批处理到实时数据服务)。对于不同的要求,BT都成功的提供了灵活高效的服务。

  (4)虚拟化技术

  通过虚拟化技术可实现软件应用与底层硬件相隔离,它包括将单个资源划分成多个虚拟资源的裂分模式,也包括将多个资源整合成一个虚拟资源的聚合模式。虚拟化技术根据对象可分成存储虚拟化、计算虚拟化、网络虚拟化等,计算虚拟化又分为系统级虚拟化、应用级虚拟化和桌面虚拟化。

  (5)云计算平台管理技术

  云计算资源规模庞大,服务器数量众多并分布在不同的地点,同时运行着数百种应用,如何有效的管理这些服务器,保证整个系统提供不间断的服务是巨大的挑战。

  云计算系统的平台管理技术能够使大量的服务器协同工作,方便的进行业务部署和开通,快速发现和恢复系统故障,通过自动化、智能化的手段实现大规模系统的可靠运营。
回复 使用道具 举报
顶一个,博文,还认识我不

点评

曹大哥啊,群里蛮活跃的嘛  发表于 2013-6-14 11:39
回复 使用道具 举报
To 金牌黑马 2013-6-14 10:17:14
板凳
有这样的文章。多多分享。先顶个!
回复 使用道具 举报 1 0
0.0  顶起
回复 使用道具 举报
曹睿翔 发表于 2013-6-14 10:13
顶一个,博文,还认识我不

不认识识识识识识
回复 使用道具 举报
加油   张博文
回复 使用道具 举报
曹睿翔 发表于 2013-6-14 10:13
顶一个,博文,还认识我不

:hug:
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马