GAE沙盒的官方说明如下:
http://code.google.com/intl/zh-CN/appengine/docs/java/runtime.html#The_Sandbox
。
用过GAE中JAVA版本的都知道,GAE是使用JETTY
作为WEB容器的,并且采用了沙箱安全模型隔离各个应用。现在要探讨的问题就是,这个具体是如何实现的?
经过鄙人粗略的研究,沙盒不仅仅使用了JAVA内含的基于安全管理器
的沙箱,而且似乎还新建了特别的类加载器(使某些类不能使用),还有其它一些措施(比如无法新增新线程,无法使用JNI等,这个方面目前还在研究中),大概可能还是用自定义的ClassLoader来实现对类的选择过滤,即建立了一个所谓JRE白名单
(http://code.google.com/intl/zh-CN/appengine/docs/java/jrewhitelist.html
)
。
联想到TOMCAT的自定义ClassLoader模型,我觉得其实GAE所谓的“沙盒”无非其原理也就是类似于TOMCAT这样一个应用服务器中间件,
在继承自通用的JDK特性前提下,进行了更多的功能屏蔽,同时提供了JAVA级别的API来访问其开放的服务功能,比如通过JDO和JPA
两种方式来实现和其“数据存储区”
交互
,
并借助于其GFS分布式部署的特性以达到巨大的可伸缩性。
分享到:
相关推荐
Eclipse开发 Gae,Struts2,Spring,云计算,学习gae云计算的好例子
GAE使用规则GAE使用规则GAE使用规则GAE使用规则GAE使用规则GAE使用规则GAE使用规则GAE使用规则GAE使用规则
图自编码器GAE的pytorch实现,参考论文vgae
pass之GAE入门教程, 学习GAE
图形自动编码器GAE的pytorch实现,可参考论文VGAE
GAE平台开发应用时,简单的webapp框架的使用
《GAE编程指南》是一种云计算服务,跟其他的同类产品不同,它提供了一种简单的应用程序构建模型,通过这种模型,你可以轻松地构建出能够容纳数百万用户的应用程序。《GAE编程指南》是介绍使用这个强大平台的专家级...
云计算下的PaaS中的GAE和SAE平台
实现了gae与spring3之间的集成
GAE上可以用的JAVA Blog源代码 可以在GAE上直接使用,支持图片上传等。 源代码是修改其他网友的普通blog程序而来,只做了必要的修改,原结构保留 最新版本请去主页下载 http://redpower1998.appspot.com 主页包括...
《GAE编程指南》是一种云计算服务,跟其他的同类产品不同,它提供了一种简单的应用程序构建模型,通过这种模型,你可以轻松地构建出能够容纳数百万用户的应用程序。《GAE编程指南》是介绍使用这个强大平台的专家级...
百度的bae跟谷歌的gae对比,百度的资源限制很少,但是资源很少,教程很少。。
GAE 集成程序,共有三个软件包,解压后安装包里的python然后运行SDU里的exe文件,最后运行客户端加服务端中localproxy中的proxy.py就可以了
关于GAE的教程、工具与文档(建站) 全
GAE(Google App Engine)空间 GAE(Google App Engine)空间申请使用教程及 GAE域名捆绑方法使用教程及 GAE域 GAE(Google App Engine)空间申请使用教程及 GAE域名捆绑方法捆绑方法
gae-java-mini-profiler.zip,google a p p engine java runtime的mini profiler(灵感来自于https://github.com/kamens/gae_mini_profiler上的python gae_mini_profiler和...
GAE虽然支持java了,但不幸的是依然不支持php 但是我们可以使用基于java的Quercus基本上可以100%的支持PHP语言
基于Google App Engine(GAE)的Java和GWT应用开发_Google App Engine Java and GWT Application Development Nov.2010
资源分类:Python库 所属语言:Python 资源全名:gae_installer-1.9.7.2.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
资源分类:Python库 所属语言:Python 资源全名:gae_installer-1.9.17.4.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059