全球旧事资料 分类
户只需在Google的GAE页面上注册一个账号,即可创建、添加应用程序。目前,GAE支持的开发语言有Pytho
、Java以及Go语言,云相册系统将使用Java语言工具。
12云相册响应流程云客户端使用Http协议和云服务器进行交互。JSP中,常用Servlet读取客户端提交的请求数据,处理后返回响应结果。模型如图1所示,客户端发送http请求到服务器,WebServer接收到这个请求后,首先在Web容器中检查是否存在该Servlet实例,若不存在则初始化该类,然后调用该类的Service()方法,最后将处理结果返回客户端。Web服务器上可以部署多个Servlet程序,每一个Servlet程序实现了Java特殊的接口,它负责处理对应的一个或者多个URL请求。可以在Webxml中使用Servletmappi
g元素将定制的URL与Servlet相关联。Web服务器在加载Webxml文件后,根据配置的Servlet名称,加载对应的Servlet类。云相册服务端封装了一个统一的A
ywhereServlet类,以及多个响应Actio
,并在Webxml中配置A
ywhereServletjava以统一接收客户端请求的Servlet:
Service
comserverA
ywhereServerservletA
ywhereServlet
Serviceservicedo
13云相册数据存储云相册服务器在接受客户端请求后,最重要的处理就是保存数据,如将客户端发送的相片和文字进行持久化存储。
f龙源期刊网httpwwwqika
comc
Bigtable是最直观的GAE存储方法,被设计用于处理海量数据。它是一个稀疏的、分布式的、持久化存储的多维度排序映射,不支持完整的关系数据模型。相反,Bigtable为用户提供了简单的数据模型,利用这个模型,客户可以动态控制数据的分布和格式。尽管存在文件大小限制的缺点,即每个文件不超过1MB,但是仍然可以使用Bigtable来存储一些账户信息,例如注册账户、账号密码等。
当需要存储大数据文件时,例如相片、多媒体文件,则需要使用Blobstore存储方式。这是另一个基于的存储方法,它最大能够保存和显示2GB的文件。虽然Blobstore不存在数据大小方面的问题,但它在使用上还是存在不友好因素,即需要客户端发送两次请求:第一次用于获得文件数据存储的URL,第二次使用上一次获得的URL发送提交真正的数据。在这点上,不仅浪费了用户宝贵的网络资源,同时也消耗了更多的云服务器CPU资源。
在云相册系统中,相片数据使用Blobstore方式来存储,其它用户数据均使用BigTable方式存储。
2系统A
droid客户端实现
云相册系统的客户端选用占领智能手机市场半壁江山的A
droid系统平台。客户端通过网络以及调用接口方式,实现与云服务端的数据交互,以及系统客户端具体业务逻辑。
21A
dr
好听全球资料 返回顶部