求职简历网 > 知识 >

amazons3

来源:求职简历网时间:2024-04-21 12:11:21编辑:皮带君

amazon s3的概述

amazon (S3) 是一个公开的服务,Web 应用程序开发人员可以使用它存储数字资产,包括图片、视频、音乐和文档。 S3 提供一个 RESTful API 以编程方式实现与该服务的交互。云是一个抽象的概念,表示松散连接在一起的计算机组,这些计算机共同执行某项任务或者服务,就像是使用一个单独的实体完成一样。此概念背后的架构也很抽象:每个云提供者都可以根据各自情况随意设计它的产品。软件即服务(Software as a Service,SaaS)是一个与云相关的概念,表示云向用户提供某种服务。云模型可以降低用户成本,因为他们无需购买软件和硬件也可以运行 — 服务提供者已经为用户提供了必要的组件。

amazon s3的S3 概述

理论上,S3 是一个全球存储区域网络 (SAN),它表现为一个超大的硬盘,您可以在其中存储和检索数字资产。但是,从技术上讲,Amazon 的架构有一些不同。您通过 S3 存储和检索的资产被称为对象。对象存储在存储段(bucket)中。您可以用硬盘进行类比:对象就像是文件,存储段就像是文件夹(或目录)。与硬盘一样,对象和存储段也可以通过统一资源标识符(Uniform Resource Identifier,URI)查找。例如,在我的硬盘中,我有一个名为 whitepaper.pdf 的文件,它位于主目录中名为 documents 的文件夹中。相应的,该 pdf 文件的 URI 为 /home/aglover/documents/whitepaper.pdf 。在 S3 中,URI 有一点不同。首先,存储段只能是顶级的 — 无法像嵌套硬盘中的文件夹(或目录)一样进行嵌套。其次,存储段必须遵循 Internet 命名法则;句点旁边没有斜杠,名称不包括下划线等等。最后,由于存储段名称已经是 Amazon 域内的公共 URI 的一部分,存储段名称必须在所有 S3 中是惟一的。(好消息是每个帐户只能包含 100 个存储段,因此不用担心别人占用了所有的好名字)。

amazon s3的简介

尽管云计算这一术语并不新鲜(Amazon 在 2007 年就开始提供它的云服务),但从 2008 年起它才开始真正成为流行词,这期间,Google 和 Amazon 的云服务逐渐获得了公众的关注。 Google 的 App Engine 使用户能够在 Google 基础设施上构建和托管 Web 应用程序。连同 S3,Amazon Web Services 还包括 Elastic Cloud Compute (EC2) 计算 Web 服务,该服务可以在 Amazon 的基础设施上托管应用程序。其他公司也开始蠢蠢欲动,准备与 Amazon 和 Google 一决高下,其中就包括 Microsoft®的 Azure,甚至 Sun Microsystems(其云计算还没有正式推向市场)也想分一杯羹。以 Amazon 的 S3 产品为例。顾名思义,这是一个公开的服务,使 Web 开发人员能够存储数字资产(如图片、视频、音乐和文档等),以便在应用程序中使用。使用 S3 时,它就像一个位于 Internet 的机器,有一个包含数字资产的硬盘驱动。实际上,它涉及到许多机器(位于各个地理位置),其中包含数字资产(或者数字资产的某些部分)。 Amazon 还处理所有复杂的服务请求,可以存储数据并检索数据。您只需要付少量的费用(大约每月 15 美分 /GB)就可以在 Amazon 的服务器上存储数据,1 美元即可通过 Amazon 服务器传输数据。Amazon 的 S3 服务没有重复开发,它公开了 RESTful API,使您能够使用任何支持 HTTP 通信的语言访问 S3 。 JetS3t 项目是一个开源 Java 库,可以抽象出使用 S3 的 RESTful API 的细节,将 API 公开为常见的 Java 方法和类。编写的代码越少越好,难道不是吗?充分利用其他人的成果也是不错的。在本文中您将看到,JetS3t 使 S3 和 Java 语言的工作变得更加简单,从根本上提高了效率。

如何使用Linux命令行访问Amazon S3云存储

在Ubuntu或者Debian上安装s3cm
$ sudo apt-get install s3cmd

在Fedora上安装s3cmd
$ sudo yum install s3cmd

在CentOS或者RHEL上安装s3cm
$ s3cmd put –acl-public 4.png s3://dev99 4.png -> s3://dev99/4.png [1 of 1] 30778 of 30778 100% in 8s 3.34 kB/s done

先从官方站点上下载rpm包,然后手工安装。64位CentOS或RHEL 6,用以下命令:
$ sudo rpm -ivh s3cmd-1.0.0-4.1.x86_64.rpm

配置s3cmd
第一次运行s3cmd需要运行下面的命令做配置:
$ s3cmd –configure

它将会问你一系列问题:
AWS S3的访问密钥和安全密钥
对AWS S3双向传输的加密密码和加密数据
为加密数据设定GPG程序的路径(例如,/usr/bin/gpg)
是否使用https协议
如果使用http代理,设定名字和端口
配置将以保存普通文本格式保存在 ~/.s3cfg.
s3cmd的基本用法
在你的账户中列出所有现有的bucket:
$ s3cmd ls 2011-05-28 22:30 s3://mybucket1 2011-05-29 00:14 s3://mybucket2

建立新的bucket:
$ s3cmd mb s3://dev99 Bucket ’s3://dev99/’ created

上传文件到现有的bucket:
$ s3cmd put 1.png 2.png 3.png s3://dev99 1.png -> s3://dev99/1.png [1 of 3] 26261 of 26261 100% in 5s 4.33 kB/s done 2.png -> s3://dev99/2.png [2 of 3] 201430 of 201430 100% in 2s 98.05 kB/s done 3.png -> s3://dev99/3.png [3 of 3] 46630 of 46630 100% in 0s 56.62 kB/s done

上传文件的默认访问权限是私有的(private),就是只有你自己可以访问,使用正确的访问和安全密码即可。
上传公开访问权限的文件到现有bucket:
$ s3cmd put --acl-public 4.png s3://dev99 4.png -> s3://dev99/4.png [1 of 1] 30778 of 30778 100% in 8s 3.34 kB/s done Public URL of the object is

如果上传的文件授予公开访问权限,任何人在浏览器中都可以通过
查看一个现有bucket的内容:
$ s3cmd ls s3://dev99 2013-06-02 02:52 26261 s3://dev99/1.png 2013-06-02 02:52 201430 s3://dev99/2.png 2013-06-02 02:52 46630 s3://dev99/3.png 2013-06-02 02:56 30778 s3://dev99/4.png

下载现有bucket包含的文件(例如所有的.png文件):
$ s3cmd get s3://dev99/*.png s3://dev99/1.png -> ./1.png [1 of 4] 26261 of 26261 100% in 0s 39.39 kB/s done s3://dev99/2.png -> ./2.png [2 of 4] 201430 of 201430 100% in 7s 24.64 kB/s done s3://dev99/3.png -> ./3.png [3 of 4] 46630 of 46630 100% in 1s 39.34 kB/s done s3://dev99/4.png -> ./4.png [4 of 4] 30778 of 30778 100% in 0s 97.01 kB/s done

删除现有bucket中的文件:
$ s3cmd del s3://dev99/*.png File s3://dev99/1.png deleted File s3://dev99/2.png deleted File s3://dev99/3.png deleted File s3://dev99/4.png deleted

获取现有bucket的信息,包括存储位置和访问控制列表(ACL):
$ s3cmd info s3://dev99 s3://dev99/ (bucket): Location: us-east-1 ACL: dan.nanni: READ ACL: dan.nanni: WRITE ACL: dan.nanni: READ_ACP ACL: dan.nanni: WRITE_ACP

在上传到现有的bucket之前,加密文件:
$ s3cmd -e put encrypt.png s3://dev99 /tmp/tmpfile-pzT1zV3kLZlxDwqA0kwy -> s3://dev99/encrypt.png [1 of 1] 196890 of 196890 100% in 1s 99.51 kB/s done

当用s3cmd下载一个加密过的文件时,它会自动检测加密并在下载过程解密,因此下载和访问加密文件时,就像通常所做的一样:
$ s3cmd get s3://dev99/encrypt.png s3://dev99/encrypt.png -> ./encrypt.png [1 of 1] 196890 of 196890 100% in 1s 131.29 kB/s done

删除现有的bucket:
$ s3cmd rb s3://dev99 Bucket ’s3://dev99/’ removed

注意,你不能删除一个非空的bucket。


云计算的关键技术包括

云计算的五大关键技术如下:云计算平台管理技术、分布式计算的编程模式、分布式海量数据存储、海量数据管理技术、虚拟化技术。1、云计算平台管理技术:云计算系统的平台管理技术能够使大量的服务器协同工作,方便的进行业务部署和开通,快速发现和恢复系统故障。2、分布式计算的编程模式:云计算采用了一种思想简洁的分布式并行编程模型Map—Reduce.Map—Reduce是一种编程模型和任务调度模型。主要用于数据集的并行运算和并行任务的调度处理。3、分布式海量数据存储:云计算系统采用分布式存储的方式存储数据,用冗余存储的方式保证数据的可靠性。冗余的方式通过任务分解和集群,用低配机器替代超级计算机的性能来保证低成本,这种方式保证分布式数据的高可用、高可靠和经济性,即为同一份数据存储多个副本。4、海量数据管理技术:云计算系统中的数据管理技术主要是Google的BT sT~lO数据管理技术和Hadoop团队开发的开源数据管理模块HBase。5、虚拟化技术:指计算元件在虚拟的基础上而不是真实的基础上运行,它可以扩大硬件的容量,简化软件的重新配置过程,减少软件虚拟机相关开销和支持更广泛的操作系统方面。

云计算的关键技术有哪些?

云计算的五大关键技术如下:云计算平台管理技术、分布式计算的编程模式、分布式海量数据存储、海量数据管理技术、虚拟化技术。1、云计算平台管理技术:云计算系统的平台管理技术能够使大量的服务器协同工作,方便的进行业务部署和开通,快速发现和恢复系统故障。2、分布式计算的编程模式:云计算采用了一种思想简洁的分布式并行编程模型Map—Reduce.Map—Reduce是一种编程模型和任务调度模型。主要用于数据集的并行运算和并行任务的调度处理。3、分布式海量数据存储:云计算系统采用分布式存储的方式存储数据,用冗余存储的方式保证数据的可靠性。冗余的方式通过任务分解和集群,用低配机器替代超级计算机的性能来保证低成本,这种方式保证分布式数据的高可用、高可靠和经济性,即为同一份数据存储多个副本。4、海量数据管理技术:云计算系统中的数据管理技术主要是Google的BT sT~lO数据管理技术和Hadoop团队开发的开源数据管理模块HBase。5、虚拟化技术:指计算元件在虚拟的基础上而不是真实的基础上运行,它可以扩大硬件的容量,简化软件的重新配置过程,减少软件虚拟机相关开销和支持更广泛的操作系统方面。

怎样用linux命令行访问AmazonS3云存储

在Linux上安装s3cmd
在Ubuntu或者Debian上安装s3cm
$ sudo apt-get install s3cmd

在Fedora上安装s3cmd
$ sudo yum install s3cmd

在CentOS或者RHEL上安装s3cm
$ s3cmd put –acl-public 4.png s3://dev99 4.png -> s3://dev99/4.png [1 of 1] 30778 of 30778 100% in 8s 3.34 kB/s done

先从官方站点上下载rpm包,然后手工安装。64位CentOS或RHEL 6,用以下命令:
$ sudo rpm -ivh s3cmd-1.0.0-4.1.x86_64.rpm

配置s3cmd
第一次运行s3cmd需要运行下面的命令做配置:
$ s3cmd –configure

它将会问你一系列问题:
AWS S3的访问密钥和安全密钥
对AWS S3双向传输的加密密码和加密数据
为加密数据设定GPG程序的路径(例如,/usr/bin/gpg)
是否使用https协议
如果使用http代理,设定名字和端口
配置将以保存普通文本格式保存在 ~/.s3cfg.
s3cmd的基本用法
在你的账户中列出所有现有的bucket:
$ s3cmd ls 2011-05-28 22:30 s3://mybucket1 2011-05-29 00:14 s3://mybucket2

建立新的bucket:
$ s3cmd mb s3://dev99 Bucket ’s3://dev99/’ created

上传文件到现有的bucket:
$ s3cmd put 1.png 2.png 3.png s3://dev99 1.png -> s3://dev99/1.png [1 of 3] 26261 of 26261 100% in 5s 4.33 kB/s done 2.png -> s3://dev99/2.png [2 of 3] 201430 of 201430 100% in 2s 98.05 kB/s done 3.png -> s3://dev99/3.png [3 of 3] 46630 of 46630 100% in 0s 56.62 kB/s done

上传文件的默认访问权限是私有的(private),就是只有你自己可以访问,使用正确的访问和安全密码即可。
上传公开访问权限的文件到现有bucket:
$ s3cmd put --acl-public 4.png s3://dev99 4.png -> s3://dev99/4.png [1 of 1] 30778 of 30778 100% in 8s 3.34 kB/s done Public URL of the object is: http://dev99.s3.amazonaws.com/4.png

如果上传的文件授予公开访问权限,任何人在浏览器中都可以通过http://dev99.s3.amazonaws.com/4.png 访问。
查看一个现有bucket的内容:
$ s3cmd ls s3://dev99 2013-06-02 02:52 26261 s3://dev99/1.png 2013-06-02 02:52 201430 s3://dev99/2.png 2013-06-02 02:52 46630 s3://dev99/3.png 2013-06-02 02:56 30778 s3://dev99/4.png

下载现有bucket包含的文件(例如所有的.png文件):
$ s3cmd get s3://dev99/*.png s3://dev99/1.png -> ./1.png [1 of 4] 26261 of 26261 100% in 0s 39.39 kB/s done s3://dev99/2.png -> ./2.png [2 of 4] 201430 of 201430 100% in 7s 24.64 kB/s done s3://dev99/3.png -> ./3.png [3 of 4] 46630 of 46630 100% in 1s 39.34 kB/s done s3://dev99/4.png -> ./4.png [4 of 4] 30778 of 30778 100% in 0s 97.01 kB/s done

删除现有bucket中的文件:
$ s3cmd del s3://dev99/*.png File s3://dev99/1.png deleted File s3://dev99/2.png deleted File s3://dev99/3.png deleted File s3://dev99/4.png deleted

获取现有bucket的信息,包括存储位置和访问控制列表(ACL):
$ s3cmd info s3://dev99 s3://dev99/ (bucket): Location: us-east-1 ACL: dan.nanni: READ ACL: dan.nanni: WRITE ACL: dan.nanni: READ_ACP ACL: dan.nanni: WRITE_ACP

在上传到现有的bucket之前,加密文件:
$ s3cmd -e put encrypt.png s3://dev99 /tmp/tmpfile-pzT1zV3kLZlxDwqA0kwy -> s3://dev99/encrypt.png [1 of 1] 196890 of 196890 100% in 1s 99.51 kB/s done

当用s3cmd下载一个加密过的文件时,它会自动检测加密并在下载过程解密,因此下载和访问加密文件时,就像通常所做的一样:
$ s3cmd get s3://dev99/encrypt.png s3://dev99/encrypt.png -> ./encrypt.png [1 of 1] 196890 of 196890 100% in 1s 131.29 kB/s done

删除现有的bucket:
$ s3cmd rb s3://dev99 Bucket ’s3://dev99/’ removed

注意,你不能删除一个非空的bucket。


如何把MYSQL数据库上传到空间

首先,登录mysql(127.0.0.1/phpmyadmin)输入用户名、密码,用户名通常是root,密码自己看着办,然后在本地导出数据库,存为一个扩展名为xxx.sql的文档。如果你在数据库里用到了GB2312记得用Dreamweaver打开,替换成GBK,因为我的PHPMYADMIN里面没有GB2312编码。


然后通过浏览器打开网址的后台管理界面,用新网给你的用户名和密码登陆。在最下方有一个MYSQL数据库管理入口。


3
进入新网后台以后,进去后再次要求输入密码,再次验证,你照开始一样输入就可以。我的MYSQL数据库没有直接导入功能,所以把刚刚在Dreamweaver编辑的代码全部复制到SQL执行窗口,点击执行即可!接下来就是修改网站文件里的链接代码,将对应的服务器地址、用户名和密码换成对应的就可以了。很简单吧。


上一篇:公文系统

下一篇:没有了

相关推荐

热门头条