google app engine
你有google的帐户,可以去申请一个http://code.google.com/intl/zh-CN/appengine/ 什么是 Google App Engine?
Google App Engine 让您可以在 Google 的基础架构上运行您的网络应用程序。Google App Engine 应用程序易于构建和维护,并可根据您的访问量和数据存储需要的增长轻松扩展。使用 Google App Engine,将不再需要维护服务器:您只需上载您的应用程序,它便可立即为您的用户提供服务。
您可以使用 appspot.com 域上的免费域名为您的应用程序提供服务,也可以使用 Google Apps 从您自己的域为它提供服务。您可以与全世界的人共享您的应用程序,也可以限制为只有您组织内的成员可以访问。
可以免费开始使用 App Engine。注册一个免费帐户即可开发和发布您的应用程序以供全世界的人共享,而且不需要承担任何费用和责任。每个免费帐户都可使用多达 500MB 的持久存储空间,以及可支持每月约 500 万页面浏览量的足够 CPU 和宽带。
使用 Google App Engine 的试用版本期间,只可以使用免费帐户。您很快就能够购买其他的计算资源。
应用程序环境
通过 Google App Engine,即使在重载和数据量极大的情况下,也可以轻松构建能安全运行的应用程序。该环境包括以下特性:
动态网络服务,提供对常用网络技术的完全支持
持久存储有查询、分类和事务
自动扩展和载荷平衡
用于对用户进行身份验证和使用 Google 帐户发送电子邮件的 API
一种功能完整的本地开发环境,可以在您的计算机上模拟 Google App Engine
Google App Engine 应用程序是使用 Python 编程语言实现的。该运行时环境包括完整 Python 语言和多数 Python 标准库。
目前,Google App Engine 仅支持 Python 语言,但是我们希望将来它可以支持更多语言。
Sandbox
在安全环境中运行的应用程序,仅提供对基础操作系统的有限访问权限。这些限制让 App Engine 可以在多个服务器之间分发应用程序的网络请求,并可以启动和停止服务器以满足访问量需求。Sandbox 将您的应用程序隔离在它自己的安全可靠环境中,该环境与网络服务器的硬件、操作系统和物理位置无关。
安全 Sandbox 环境的限制实例包括:
应用程序只能通过提供的网址获取和电子邮件服务和 API 访问互联网中的其他计算机。其他计算机只能通过在标准端口上进行 HTTP(或 HTTPS)请求来连接至该应用程序。
应用程序无法向文件系统写入。应用程序只能读取通过应用程序代码上载的文件。该应用程序必须使用 App Engine 数据库存储所有在请求之间持续存在的数据。
应用程序代码仅在响应网络请求时运行,且必须在几秒钟内返回响应数据。请求处理程序不能在响应发送后产生子进程或执行代码。
Python 运行时环境
App Engine 提供了一个使用 Python 编程语言的运行时环境。将来的版本将考虑使用其他编程语言和运行时环境配置。
Python 运行时环境使用 Python 2.5.2 版。
该环境包括 Python 标准库。当然,您无法调用违反了 Sandbox 限制的库方法,例如尝试打开套接字或向文件写入。方便起见,其主要功能不受该运行时环境支持的标准库中的多个模块已被禁用,而导入这些模块的代码将发生错误。
应用程序代码只能以 Python 编写。具有用 C 编写的扩展的代码不受支持。
Python 环境为数据库、Google 帐户、网址获取和电子邮件服务提供了丰富的 Python API。App Engine 还提供了一个称为 webapp 的简单 Python 网络应用程序框架,从而可以轻松开始构建应用程序。
方便起见,App Engine 还包括 Django 网络应用程序框架 0.96.1 版。请注意,App Engine 数据库不是某些 Django 组件所需的关系数据库。某些组件(例如 Django 模板引擎)按照文档化的程序工作,而其他组件则需要做更多工作。有关将 Django 与 App Engine 一起使用的提示,请参阅文章部分。
只要这些库是完全使用 Python 实现并且不需要任何不受支持的标准库模块,您就可以使用您的应用程序上载其他第三方库。
有关 Python 运行时环境的详细信息,请参阅 Python 运行时环境。
数据库
App Engine 提供了一个强大的分布式数据存储服务,其中包含查询引擎和事务功能。就像分布式网络服务器随访问量增加一样,该分布式数据库也会随数据而增加。
该 App Engine 数据库与传统关系数据库不同。数据对象(或“实体”)有一类和一组属性。查询可以检索按属性值过滤和分类的给定种类的实体。属性值可以是受支持的属性值类型中的任何一种。
数据库的 Python API 包括一个可以定义数据库实体结构的数据建模界面。数据模型可以指示属性值必须位于给定范围内,如果未给定任何范围,还可以提供默认值。您的应用程序可以根据需要向数据提供或多或少的结构。
数据库使用乐观锁定进行并发控制。如果有其他进程尝试更新某实体,而同时该实体位于以固定次数进行重新尝试的事务中,此时该实体将更新。应用程序可以在一个事务中执行多项数据库操作(全部成功或者全部失败),从而确保数据的完整性。
数据库通过其分布式网络使用“实体组”实现事务。一个事务操作一个组内的实体。同一组的实体存储在一起,以高效执行事务。应用程序可以在实体创建时将实体分配到组。
有关数据库的详细信息,请参阅数据库 API 参考。
Google 帐户
App Engine 包括用于与 Google 帐户集成的服务 API。应用程序使用户可以通过 Google 帐户登录,并可以访问与该帐户关联的电子邮件地址和可显示的名称。使用 Google 帐户使用户可以更快地开始使用您的应用程序,因为用户可以不需要创建新帐户了。Google 帐户还省去只为您的应用程序执行用户帐户系统的麻烦。
如果您的应用程序正在 Google Apps 下运行,则它可以与您组织的成员和 Google Apps 帐户成员使用相同的功能。
用户 API 还可告知应用程序当前用户是否是应用程序的注册管理员。这样便可以轻松实现您站点上仅用于管理的区域。
有关与 Google 帐户集成的详细信息,请参阅用户 API 参考。
App Engine 服务
App Engine 提供了多种服务,从而使您可以在管理应用程序的同时执行常规操作。提供了以下 API 以访问这些服务:
网址获取
应用程序可以使用 App Engine 的网址获取服务访问互联网上的资源,例如网络服务或其他数据。网址获取服务使用用于为许多其他 Google 产品检索网页的高速 Google 基础架构来检索网络资源。有关网址获取服务的详细信息,请参阅网址获取 API 参考。
邮件
应用程序可以使用 App Engine 的邮件服务发送电子邮件。邮件服务使用 Google 基础架构发送电子邮件。有关邮件服务的详细信息,请参阅邮件 API 参考。
Memcache
Memcache 服务为您的应用程序提供了高性能的内存键值缓存,您可通过应用程序的多个实例访问该缓存。Memcache 对于那些不需要数据库的永久性功能和事务功能的数据很有用,例如临时数据或从数据库复制到缓存以进行高速访问的数据。有关 Memcache 服务的详细信息,请参阅 Memcache API 参考。
图片操作
图片服务使您的应用程序可以对图片进行操作。使用该 API,您可以对 JPEG 和 PNG 格式的图片进行大小调整、剪切、旋转和翻转。有关图片操作服务的详细信息,请参阅图片 API 参考。
开发工作流程
App Engine 软件开发套件 (SDK) 包括可以在您的本地计算机上模拟所有 App Engine 服务的网络服务器应用程序。该 SDK 包括 App Engine 中的所有 API 和库。该网络服务器还可以模拟安全 Sandbox 环境,包括检查是否存在禁用模块的导入以及对不允许访问的系统资源的尝试访问。
Python SDK 完全使用 Python 实现,可以在装有 Python 2.5 的任何平台上运行,包括 Windows、Mac OS X 和 Linux。您可以在 Python 网站上获得适用于您的系统的 Python。该 SDK 以 Zip 文件提供,安装程序可用于 Windows 和 Mac OS X。
您可以在此处下载该 SDK。
该 SDK 还包括可将您的应用程序上载到 App Engine 的工具。创建了您应用程序的代码、静态文件和配置文件后,即可运行该工具上载数据。该工具会提示您提供 Google 帐户电子邮件地址和密码。
构建已在 App Engine 上运行的应用程序的新主要发行版时,可以将新发行版作为新版本上载。在您改为使用新版本之前,旧版本可以继续为用户提供服务。可以在仍运行旧版本的同时在 App Engine 上测试新版本。
管理控制台是基于网络的界面,用于管理在 App Engine 上运行的应用程序。您可以使用它创建新应用程序、配置域名、更改您的应用程序当前的版本、检查访问权限和错误日志以及浏览应用程序数据库。
限额和限制
创建 App Engine 应用程序不仅简单,而且是免费的!您可以创建帐户,然后发布一个应用程序,用户无需承担任何费用和责任即可立即使用该应用程序。通过免费帐户获得的应用程序可使用多达 500MB 的存储空间和多达每月 500 万的页面浏览量。
此试用时间内,仅提供免费帐户。您很快就能够以有竞争力的市场价格购买其他的计算资源。试用期过后,免费帐户可继续使用。
此试用期间,最多可注册 3 个应用程序。
应用程序资源限制(“限额”)会不断刷新。如果您的应用程序达到基于时间的限额(例如宽带),则该限额将以给定限制的比率立即开始刷新。固定限额(例如存储使用量)仅在降低使用量时才会减小。
更多 Google App Engine 资源链接更多 Google App Engine 资源链接 更多 Google App Engine 资源链接 更多 Google App Engine 资源链接
有些功能会施加与限额无关的限制,以保护系统的稳定性。例如,当调用某应用程序以为网络请求提供服务时,该应用程序必须在几秒钟内发出响应。如果该应用程序花费的时间过长,则进程将被终止并且服务器将向用户返回错误代码。响应超时是动态的,如果请求处理程序经常达到其超时,则可以缩短请求超时以节省资源。
服务限制的另一实例是查询返回的结果数。一个查询最多可返回 1,000 条结果。要返回更多结果的查询只能返回该最大值。在这种情况下,执行这种查询的请求不可能在超时前返回请求,但限制仍存在以节省数据库上的资源。
更多 Google App Engine 资源链接
试图破坏或滥用限额(例如同时在多个帐户上操作应用程序)违反服务条款,并可能导致应用程序被禁用或帐户关闭。
有关详细信息...
有关 Google App Engine 的详细信息:
观看营火会视频或阅读抄本。
观看 App Engine 演示视频。
下载 SDK、注册帐户,然后阅读使用入门指南并执行教程。
浏览应用程序库以获取使用 App Engine 构建的应用程序的实例。
查看剩余 App Engine 文档。
欢迎使用 Google App Engine! 百度首页 | 百度空间 | 登录 Google App EngineGoogle App Engine site gadget code document photo 主页博客相册|个人档案 |好友 查看文章
Google App Engine 您好world 入门教程2008/06/15 08:09 P.M.Google App Engine入门:简介
April 28th, 2008 (本文译自:Google App Engine Getting Started)
欢迎使用 Google App Engine! 创建一个Google App Engine应用非常简便,只需要花费你几分钟时间. 你可以很方便的创建你的网站应用:直接上载并分享,不需要进行任何的修改和注释。
在这个指导里,我们将创建一个简单的留言本,让用户可以发表留言。并且支持匿名和Google帐号两种方式发表留言。
这个留言本程序将演示如何使用Google的数据存储,集成Google账户系统,如何使用一个简单的Python Web framework来调试GAE网站。并且还将演示如何使用Django的模版引擎。
接下来…
为了开始编写你的Google App Engine应用程序,你必须先下载 Google App Engine软件开发环境。
Google 提供了一个Google App Engine 软件开发包(SDK),用于让开发者进行网站应用程序开发或上载已经完成的应用。
这个开发包包含:
一个web服务程序,用来模拟App Engine应用环境
一个本地版的数据存储方案
本地模拟的Google帐号集成
支持使用Api来分析URL和发送邮件
这个开发包可以运行在所有安装了Python2.5的机器上,并且支持Windows, Mac OS X 和Linux系统。
因为这个开发包是以Python2.5为基础的,所以你必须先要在你的机器上安装Python2.5(必须是2.5版本).Mac OS X 10.5 用户可能已经安装了Python2.5,某些版本的Linux自带Python环境,但是版本可能比较低,需要升级成2.5版本。
接下来:下载并安装App Engine SDK
在这个入门教程中,我们需要用到下面的两个命令:
dev_appserver.py, 本地开发服务程序
appcfg.py, 上载并发布你的应用
Windows或Mac OS X的安装程序会将这两个命令放到命令行运行路径中。在安装结束后,你可以直接通过命令行执行。
如果你使用的是Zip压缩包格式的SDK,你可以google_appengine目录下找到它们。
接下来…
本地开发环境,让你可以轻松的开发和测试你的应用。并且保持和发布后的环境完全的一致。下面,让我们开始编写代码吧:
Google App Engine 入门: 您好 World
April 30th, 2008 (本文译自:Google App Engine Getting Started)
Google App Engine 应用通过 CGI 标准协议与服务器通讯.这是一个标准的Http处理流程,Web服务接受到客户端发来的Get或Post请求,web服务器把请求转发给你的应用程序,由应用程序来处理要输出的内容。
为了更好的理解这个过程,下面就开始开发我们经典的您好w World应用程序吧。在这一章,仅仅只是实现显示一些简单的信息的功能。
创建一个简单的 Request Handler
首先创建一个名为 您好world 的文件夹。 除非特殊说明,以后所有关于这个应用程序的文件都将放在这个文件夹里面。
在您好world 文件夹里, 创建一个新文件 您好world.py,文件内容如下:
print ‘Content-Type: text/plain’
print ”
print ‘您好, world!’
这个Python 脚本处理一个request请求,并且设置一个Http header,输出一个空行和一段信息 您好, world!.
创建配置文件
每个App Engine application 都包含一个名为 app.yaml的配置文件。 在这个配置文件中,可以设置具体的某个URL需要用哪个Python脚本来处理.
现在,在 您好world 文件夹中,创建一个新的 app.yaml 文件,输入以下内容:
application: 您好world
version: 1
runtime: python
api_version: 1
handlers:
- url: /.*
script: 您好world.py
这个配置文件描述了以下内容::
这个应用程序的标识是 您好world. 这个标识需要和你在App Engine网站上创建的应用程序标识保持一致。在开发期间你可以使用任何你喜欢的名字,但是上载的时候,必须要和你在App Engine 注册的标识保持一致。现在,我们把它设置为 您好world.
你的应用程序的版本号为1 ,如果你在上载应用之前修改了这个编号, App Engine 将会自动保留前一个版本的副本,以方便你可以在管理平台中将当前版本恢复成原来的版本。
该应用运行在 python 环境, 环境版本是 1. 目前只有Python可选,将来会提供更多的运行环境和开发语言.
所有符合正则表达式/.* (所有URL) 的请求,都由 您好world.py 脚本来处理.
该配置文件使用 YAML语法. 关于该配置文件的更多选项, 请参考 the app.yaml reference.
测试应用程序
现在这个应用程序已经基本上完整了。 你可以在本地App Engine SDK环境中进行模拟运行测试。
首先,指定应用路径为 您好world 目录,使用下面的命令启动测试环境Web服务程序,:
google_appengine/dev_appserver.py 您好world/
这个Web服务程序将监听8080端口. 你可以在浏览器中输入以下地址进行测试:
http://localhost:8080/
关于这个web服务程序的更多选项(如怎样修改默认端口等), 请查看the Dev Web Server reference, 或者使用命令行选项 --help.
无需中断你的开发
在开发过程中,你不需要不停的重启Web服务程序。Web服务程序可以自行判断哪些脚本文件已经被修改过了,并且重新加载这些脚本。
试一试: 不要关闭web服务程序, 编辑 您好world.py 将 您好, world! 修改成其他内容. 重新访问http://localhost:8080/ ,看看是不是您的修改已经生效了!
要关闭Web服务程序,您只需在控制台中按下 Control-C (或其他有效的 "break" 功能键).
PS:在以后的入门指导中,你可以让你的Web服务程序一直开着 。
接下来…
我们已经开发了一个完整的web应用程序!你可能迫不及待的就想把这个程序发布出去,并分享给你的朋友了。且慢,还是让我们给它增加一些功能后再这样做吧,毕竟它太简陋了。 Google是个真正能不断的为大伙带来惊喜的公司。从免费的Gmail把大家带入电子邮件的G级时代以来,Google一直在为实现统一的网络应用平台努力着。前不久Google在 Google Campfire One 大会上宣布推出App Engine(应用引擎),一个在线应用平台。
App Engine是什么呢?它到底会怎样的改变现在的网络环境呢。
简洁的说,App Engine是一个由Python应用服务器群、BigTable(Google的一个内部的数据库系统)数据库访问及GFS数据储存服务组成的平台,它能为开发者提供一体化的、提供主机服务器及可自动升级的在线应用服务。用户编写应用,Google提供应用运行及维护所需要的一切平台资源。换言之, Google不仅仅要为用户提供现成的在线应用套件,它还希望利用自身的数据库系统优势,使自己成为在线应用的真正统一平台。
Google希望App Engine能令网络开发者更容易创建及升级在线应用,而不用花费精力在系统的管理及维护上。Google App Engine有以下优势:
使用Google的资源,运行你自己的应用。Google App Engine 使你可以使用和Google现在的应用完全相同的环境来构建自己的网站.
不需要额外的软硬件配置,Google App Engine 提供一个完整的Web应用环境.
良好的可伸缩性,Google App Engine 使你不用考虑使用人数的限制,从1个人到1百万人,Google App Engine 都能提供良好的支持.Google的服务器会为你处理这些额外的事情。(当然对于超大的流量,Google会收取一些费用)
免费开始使用。每个 Google App Engine 应用程序可以使用500M的存储空间,Google没有具体限制流量和Cpu的使用率,只是笼统地说明提供足够的流量和CPU,可以支持每月500万左右的PV.想想多少个人网站能达到这个限制呢?所以说我们基本不用担心流量的问题了。
对我们来说Google App Engine是免费的,如果你有办法使你的网站流量超过500万,我想也不会介意向Google支付一些费用了。这样想来Google其实就是一个虚拟主机服务商,只不过巧妙的换了一种方式,尽管如此,我还是看好GOOGLE的实力,或许真的能开拓出一个免费主机时代,呵呵,到时候就要像感谢Gmail让我们进入免费G级邮件时代一样感谢Google App Engine了。
我个人是十分期待的,所以我准备重新拾起快要荒废的Python,投入Google的怀抱。
总结一下:
Google App Engine为我们提供了:
免费的主机空间
免费的数据库GFS
免费的web服务器
完整的Python应用环境(目前版本为Python2.5)
强大的技术支持
下一页 google app engine 您好world 教程 利用免费的GAE(Google App Engine)建立强大的Blog网站2009/02/06 11:53 P.M.看着个题目可能很玄乎,本来也想写的玄乎玄乎的,但Google了一下,觉得没有必要写的这么玄乎,其实,今天我就是要给大家介绍一款非常优秀的基于python(能够支持GAE)的blog程序而已,所以本文就言简意赅,不过,我会从头到尾,详细的道来整个过程。
问题的提出:1.我国内的虚拟主机感觉速度时好时坏,总不令人满意,所以有找一个稳定的主机的想法,但又不准备再花钱,因为国内和国外的主机买的时间也不长,也不想浪费金钱以及人力来搬家。2.几天前了解了一下Google App Engine,其实Google的东西总是太好太强大,以至于我这样的菜鸟只好避而远之,但又看到K_Reverter已经将整个网站都搬到了GAE,并且还实现了许多强悍的功能,所以羡慕不已。所以,有想利用GAE做点东西的想法了,只是暂时不敢大动干戈,所以今天建立一个blog程序算是尝试吧,更多的想法有待更多的尝试。
Google App Engine,简单的说就是一个Google提供的强大的开放的虚拟主机,每个用户可以建立10个app,也就是10个网站,每个网站500M的空间,也就相当于5G的个人空间。不过,大家不要动歪脑筋,因为Google的限制中一个app只能最多1000个文件,单文件最大500K,所以基本上以为这空间可以放大容量文件的就死心吧。加上GAE提供的是python语言的支持,还不支持PHP,更不用说.NET了,同时还没有MYSQL,自身提供的数据库好像还是很不强大的,另外还不支持FTP,需要使用python上载(不过还蛮好用),加上python的程序本身就不多,Google的GAE又有很多的限制,所以基本上只有拿GAE看看的份了。
今天寻找了一下python+blog,不过效果不是很好,虽然许多大大们都说python开发blog简直是小菜一碟,但我真的没有找到几个,可能国内的还不多吧。首先我找到的是pylogs,看了演示网站,觉得非常的不错,简洁明了,功能也是可以,于是就下载,上载到GAE,结果500错误,在本地调试,也是500错误,难道pylogs用的是Django 1.0框架,而Google提供的是0.96的框架?当然,pylogs是需要MYSQL支持的,而DreamHost的MYSQL是支持外联的,所以不应该存在问题。最后只好作罢。后来找到了这个micolog(官方网站(不过我这边上不去,可能又被墙了),下载地址,现在0.5版本),看到这个的时候是惊喜的,配置完成后登陆到后台完全是惊讶的,应该说这确实是一个非常不错的blog程序了,并且和wordpress做的很像,功能也类似,打着GAE python blog的旗号,让人非常喜欢。看看人家列举的功能吧:
custom theme
tags and categories for the blog entry.
rich content editor by tinymce
import data from wordpress export file
menu & pages management.
cache enabled
implement wordPress API and metaWeblog API ,support client writer (such as window live writer)
看到上面这些功能我想基本上都够用了吧。既然说到这里,那么我们做一下简单的比较吧,我为什么要推荐这样的一个blog。首先不管zblog还是wordpress都需要空间存放,那就需要购买虚拟主机,而如果用GAE则完全免费,并且GAE的速度是飞快的没有怠机的(可能会有,但Google强大的集群技术应该不会出现这样的情况);其次,如果使用Google blog服务,虽然可以绑定自己的域名,但是总在页面最上显示Blogger的搜索和提示,总觉得不爽;再次,我想放自己的Google adsense怎么办(Blogger是支持adsense的)?总觉自己做模板什么的灵活一些,Blogger的adsense存放位置可能不是很灵活。可能原因还有更多,当然GAE的缺点也是有的,比如可能被墙挡住,数据库不容易控制等等。话题有点扯远,甚至说到了GAE和虚拟主机的比较去了。从上面的功能上来看,tag和categories我觉得不用说,定制皮肤还不错,我喜欢的是从wordpress导入、拥有pages功能和支持WLW,当然cache也不错。所以,如果你想用Wordpress,那么你可以先用micolog+GAE建立一个bolg试试,免费加快速访问,一定会让你惊喜的。
回到正题,从头开始讲整个安装设置,包括Windows live writer中的设置。
1.既然是使用GAE,那当然要注册一个GAE吧,你只要有Gmail帐号就可以了。然后按照步骤建立一个app,这样你就差不多得到你的网站名了,我注册的是tangf2004,所以可以使用tangf2004.appspot.com这个Google提供的免费二级域名来访问。
2.下载App Engine SDK。因为要用到这个来上载app的。安装SDK,桌面上就提供了一个Google App Engine的文件夹快捷图标,进入该文件夹,看到的是一些py文件,不用管,只要知道dev_appserver.py是在本机模拟开发环境的,而appcfg.py是用于上载等工作的,具体就去参考入门指南吧。
3.下载micolog,这是主程序当然要下载了。完成后是一个压缩包,将该压缩包解压缩到Google App Engine所在目录。
4.进入Google App Engine下的micolog目录,用文本编辑器打开app.yaml文件,这是一个配置文件,只需要将第一行的application后的内容改成你所建立的app的ID就可以了,比如我的就是tangf2004。(要知道第一次就是因为没有理解这个导致文件上载到GAE都没有成功,笨吧)
5.开始-运行-cmd,命令行进入到Google App Engine目录,输入命令:appcfg.py update micolog/,回车确定。第一次上载的话会提示输入Email,就是你自己注册的Gmail地址,密码也是你的gmail地址,然后提示一些信息,大致就是验证通过、找到多少文件、开始上载、结束上载等信息,很快就完成了。(如第4点所说,如果app.yaml文件的ID是错的那么你是上载不成功的)
6.那就赶紧开始你的Blog之旅吧。登录tangf2004.appspot.com就可以看到效果了。点击右上角的admin就可以开始管理你的blog了。看一下简单的后台吧,和wordpress很像哦。
虽然看上去完工了,但后续工作还没有完。下面再说几件事情吧。
将该app绑定到一个自有的二级域名:
首先该域名是已经注册了Google apps,如何注册请看我的上一文:Google apps注册以及解析ghs.google.com。(不过遗憾的是,好像我上文提供的ghs的替代IP又出问题了,下面留言的朋友提供的IP也不行,最后勉强又找了一个可用的IP。我怀疑徐明的博客就是因为墙挡住了而无法访问)。
然后,进入到appengine中你刚刚建立的app的控制面板,在左侧的管理工具栏中点击Versions,有一个add domain的按钮,就是它了,点击进入下一页面提示输入域名,直接就是国际域名,比如我的就是sharesh.cn,如果你的域名还没有注册Google apps那么会提示无法继续的。再继续的话就是进入到Google apps的管理面板了,提示输入域名,写一个二级域名就可以了,所以我就写了gae.sharesh.cn。确定后提示该二级域名的CNAME需要指向ghs.google.com,完成后才能确认点那个我已经完成了该操作的按钮。(这里很简单,图片也不上了,写的也很罗嗦,自己一步一步很容易搞定的)
最后,需要在域名中设置上一步中的二级域名的CNAME记录。进入时代互联的控制面板,域名VDNS管理,增加一个二级域名gde,我没有使用CNAME,而是直接使用了A记录,A记录的IP设置为刚刚找到的可以访问的ghs对应的IP就可以了。重启VDNS,没有等待几秒,我就去点了上一步中的我已完成操作确认域名,竟然就直接可以用了,看来增加一个二级域名的DNS解析速度还是比较快的。
所以,你现在可以通过这两个域名来访问我的GAE上的blog程序了:GAE.sharesh.cn(我自己的二级域名)和Tangf2004.appspot.com(Google提供的免费二级域名),两者访问的效果都是一样的。
将wordpress数据导入micolog:
这一个步骤还是很简单的,首先登录wordpress的后台,选择导出,导出的是wordpress自有个是的XML文件。然后,登录micolog后台(忘了说了,micolog的登录是和gmail已经集成了,看来又用到了gmail的API了,够强悍),在设置中的导入导出,选择刚才导出的XML文件直接导入到wordpress中,即可,非常的简单而方便。顺便要提一下的是,wordpress的固定链接,在micolog中也存在,所以,如果你真的准备搬家到GAE,那么可以使用完全一致的固定链接,对于SEO来说是不会有影响的,这一点做的非常的不错。
只是,我在导入的时候我碰到了一个问题,竟然导入中断掉了,试了好几次都不成功,没有办法只好看XML文件,最后发现竟然有几个图片也导出成文章了,我把由图片生成的item删除,最后导入成功了,可能是wordpress的bug。
使用Windows live writer写blog:
上次我就写了一个文章推荐Windows live writer,没有看过的就回看一下我的文章吧:推荐:Windows live writer 2009(附WIN2003下安装方法)。用WLW来离线写作真的非常的棒,而micolog是和wordpress一样也是支持WLW离线写作的。
首先登录micolog后台设置中的基本设置,在最下面有一个客户端(Xmlrpc)调用设置,这里写上你的用户名和密码,这样就可以支持WLW了。
然后是配置WLW,在WLW中新增一个日志账户,其中提供者和接入地址,需要按下图填写。(这也是网上找的,不然也不会写这一点)。类型选择wordpress2.2+,接口为网址后面加/rpc,比如我的就是http://gae.sharesh.cn/rpc。经过我的测试,上载图片,嵌入iframe等都没有问题,并且WLW的缩略图等都支持,图片直接上载到GAE的空间,非常的不错。
至此,使用GAE建立blog的过程已经全部完毕,你是否也心痒痒的要建立一个呢?那就赶紧开始吧。
整个blog的寻找建立并摸索大概花了我小半个下午,而写此篇日志却花了我三个小时,郁闷,看来写日志真的不是一件容易的事情。不过,欣慰的是,我的网站又多了一个镜像,只是在考虑要不要真的把站点搬过去呢,我是要忍受不了国内主站的速度了。
http://edikudweb.appspot.com这是我的。。。。。。 Google App Engine搭建自己的CDN2008年11月27日 星期四 11:56
似乎性能优化永远都是属于门户网站的事儿,与咱们小民无关?!
这种想法在网络技术高速发展的今天,似乎有点落伍了。如果你是专业从事互联网的技术人员,甚至是负责优化公司网站的专家,自己的小站也别忘记适当地优化一下,
好像只有雅虎的人平时谈论这个问题比较多,是因为雅虎发明了YSlow和一套检验网站性能的机制?如果你使用的是Firefox,可以安装YSlow,来查看自己网站的性能,根据提示进行优化.总结一下,作为个站,可以做的优化工作大概这么几个:
使用更少的HTTP请求;
使用CDN
把CSS放在页面顶部(放<head>里)
把JS放在页面底部(紧跟着放</body>前就行)
这是最基本地,3,4条最容易做到.第1条,多半是由于你的blog皮肤样式里使用了很多图片,建议采用CSS Sprites把像icon这类的小图片合并在一个图片里,通过CSS控制背景位置来调用不同icon,这样只需要发送一次HTTP请求,取一张图片回来就搞定了.
这里我主要来解决第2条–”使用CDN”的问题(先了解一下CDN是什么).Google真是个好东西,总能提供一些很实用的服务.我的CDN就是利用Google App Engine来搭建的.首先做一些准备活动,需要安装一些小程序到你的电脑上,配置一些文件,但这些工作只需要做一次,之后使用时只需要运行一下程序,就可以把文件同步到Google了.
简单描述下工作原理.SVN用过吧?这个类似.
建立一个文件夹,里面放你的文件和文件夹,修改一个配置文件,把里面的application name改成你自己的.
通过Google App Engine SDK同步你的这个文件夹到Google服务器上.类似SVN的update或check in.
我是在Mac下工作的,先说说在Mac下怎么做:
Google App Engine是基于Python的,Mac和Linux的用户不用装,系统本身就支持.
下载Mac版的Google App Engine SDK并安装,都使用默认安装就可以了.
在appengine.google.com登录.当然你要先有Google帐号,用你的Gmail帐号就行了,如果没有注册一个也不麻烦.
登录以后,先点击”Create an Application”创建一个application,并给它取个名字.它必须是唯一且没被使用过的,所以我起的叫”b3insidecdn”,既不重复又好记.然后保存.第一次创建application时需要输入你的手机号码(形如:+8613800138000),用于接收Google发的确认短信,确认你是Google App Engine帐号的主人.同时也为了防止spam,呵呵.
下载这个文件: PPSpot.com/files/b3insidecdn.zip" target="_blank">http://b3insidecdn.appspot.com/files/b3insidecdn.zip,我把它解压后放在”GoogleApp”的文件夹里(当然,这个文件夹名随便起).
用文本编辑器修改app.yaml.把”application:b3insidecdn”改成你自己的”application:<你的application名字>”并保存.这个配置用来告诉Google App Engine你要上载的是哪些文件.
呼~ 现在把你要上载的图片, css, js, 甚至视频放到你本地的这个文件夹中.我把图片都放在/img里,别的文件也放在子文件夹里,方便管理,如/css/b3inside.com/style.css.
运行你安装的GoogleAppEngineLauncher.app,然后”File”-”New Application”,按下图填写,端口不要用80,因为你机器上还有Apache在跑.之后点”Create”创建即可.
上一步将SDK和你本地文件夹做好连接后,就大功告成了.以后把要上载的文件放在你的文件夹里,通过GoogleAppEngineLauncher把它们Deploy到Google上就行了.
好了,快去访问一下你的CDN吧,看看它是否已经正常工作了.用这个地址:<你的应用名>.appspot.com/img/welcome.gif(我的是:b3insidecdn.appspot.com/img/logo_alpha.gif)
如果你是WIN用户,大体做法和上面一样,只是需要多安装点东西,我把不同的地方简单补充一下:
下载Python并安装.任何目录都可以.
下载Google App Engine SDK并安装,安装程序会自动检测你机器上是否已经安装了Python.
登录appengine.google.com.
创建新应用.
下载文件 http://b3insidecdn.appspot.com/files/b3insidecdn.zip,作为本地目录参考.
编辑app.yaml文件,修改application的名字.
把要上载的文件等放到这个文件夹中,待上载.
下载这个自动比处理文件http://digitalisticcdn.appspot.com/files/deploy_digitalistic_cdn.bat,用文本编辑器修改一下,替换成你自己的Python路径和Google App Engine安装路径(注意:路径必须用引号包围).需要同步你本地目录时,只要运行这个文件就行了.
都配置好后,双击deploy_digitalistic_cdn.bat来把你的文件上载部署到你自己的Google App Engine上.第一次运行需要输入你的Google用户名和密码.
大功告成.测试你的CDN是否运转正常的方法,和Mac版的一样.
本文并不是对10 Easy Steps to use Google App Engine as your own CDN的简单翻译,使用CDN也只是网站优化内容之一,我们迈出的只是长征路上的第一步.
P.S.需要告诉你的YSlow, appspot.com是你的CDN服务器,所以需要做以下配置:
在Firefox地址栏里输入 about:config
右键–新建–字符串
字符串的名字: extensions.firebug.yslow.cdnHostnames
值就可以写:appspot.com Google App Engine搭建自己的CDN2008年11月27日 星期四 11:56
似乎性能优化永远都是属于门户网站的事儿,与咱们小民无关?!
这种想法在网络技术高速发展的今天,似乎有点落伍了。如果你是专业从事互联网的技术人员,甚至是负责优化公司网站的专家,自己的小站也别忘记适当地优化一下,
好像只有雅虎的人平时谈论这个问题比较多,是因为雅虎发明了YSlow和一套检验网站性能的机制?如果你使用的是Firefox,可以安装YSlow,来查看自己网站的性能,根据提示进行优化.总结一下,作为个站,可以做的优化工作大概这么几个:
使用更少的HTTP请求;
使用CDN
把CSS放在页面顶部(放<head>里)
把JS放在页面底部(紧跟着放</body>前就行)
这是最基本地,3,4条最容易做到.第1条,多半是由于你的blog皮肤样式里使用了很多图片,建议采用CSS Sprites把像icon这类的小图片合并在一个图片里,通过CSS控制背景位置来调用不同icon,这样只需要发送一次HTTP请求,取一张图片回来就搞定了.
这里我主要来解决第2条–”使用CDN”的问题(先了解一下CDN是什么).Google真是个好东西,总能提供一些很实用的服务.我的CDN就是利用Google App Engine来搭建的.首先做一些准备活动,需要安装一些小程序到你的电脑上,配置一些文件,但这些工作只需要做一次,之后使用时只需要运行一下程序,就可以把文件同步到Google了.
简单描述下工作原理.SVN用过吧?这个类似.
建立一个文件夹,里面放你的文件和文件夹,修改一个配置文件,把里面的application name改成你自己的.
通过Google App Engine SDK同步你的这个文件夹到Google服务器上.类似SVN的update或check in.
我是在Mac下工作的,先说说在Mac下怎么做:
Google App Engine是基于Python的,Mac和Linux的用户不用装,系统本身就支持.
下载Mac版的Google App Engine SDK并安装,都使用默认安装就可以了.
在appengine.google.com登录.当然你要先有Google帐号,用你的Gmail帐号就行了,如果没有注册一个也不麻烦.
登录以后,先点击”Create an Application”创建一个application,并给它取个名字.它必须是唯一且没被使用过的,所以我起的叫”b3insidecdn”,既不重复又好记.然后保存.第一次创建application时需要输入你的手机号码(形如:+8613800138000),用于接收Google发的确认短信,确认你是Google App Engine帐号的主人.同时也为了防止spam,呵呵.
下载这个文件: PPSpot.com/files/b3insidecdn.zip" target="_blank">http://b3insidecdn.appspot.com/files/b3insidecdn.zip,我把它解压后放在”GoogleApp”的文件夹里(当然,这个文件夹名随便起).
用文本编辑器修改app.yaml.把”application:b3insidecdn”改成你自己的”application:<你的application名字>”并保存.这个配置用来告诉Google App Engine你要上载的是哪些文件.
呼~ 现在把你要上载的图片, css, js, 甚至视频放到你本地的这个文件夹中.我把图片都放在/img里,别的文件也放在子文件夹里,方便管理,如/css/b3inside.com/style.css.
运行你安装的GoogleAppEngineLauncher.app,然后”File”-”New Application”,按下图填写,端口不要用80,因为你机器上还有Apache在跑.之后点”Create”创建即可.
上一步将SDK和你本地文件夹做好连接后,就大功告成了.以后把要上载的文件放在你的文件夹里,通过GoogleAppEngineLauncher把它们Deploy到Google上就行了.
好了,快去访问一下你的CDN吧,看看它是否已经正常工作了.用这个地址:<你的应用名>.appspot.com/img/welcome.gif(我的是:b3insidecdn.appspot.com/img/logo_alpha.gif)
如果你是WIN用户,大体做法和上面一样,只是需要多安装点东西,我把不同的地方简单补充一下:
下载Python并安装.任何目录都可以.
下载Google App Engine SDK并安装,安装程序会自动检测你机器上是否已经安装了Python.
登录appengine.google.com.
创建新应用.
下载文件 http://b3insidecdn.appspot.com/files/b3insidecdn.zip,作为本地目录参考.
编辑app.yaml文件,修改application的名字.
把要上载的文件等放到这个文件夹中,待上载.
下载这个自动比处理文件http://digitalisticcdn.appspot.com/files/deploy_digitalistic_cdn.bat,用文本编辑器修改一下,替换成你自己的Python路径和Google App Engine安装路径(注意:路径必须用引号包围).需要同步你本地目录时,只要运行这个文件就行了.
都配置好后,双击deploy_digitalistic_cdn.bat来把你的文件上载部署到你自己的Google App Engine上.第一次运行需要输入你的Google用户名和密码.
大功告成.测试你的CDN是否运转正常的方法,和Mac版的一样.
本文并不是对10 Easy Steps to use Google App Engine as your own CDN的简单翻译,使用CDN也只是网站优化内容之一,我们迈出的只是长征路上的第一步.
P.S.需要告诉你的YSlow, appspot.com是你的CDN服务器,所以需要做以下配置:
在Firefox地址栏里输入 about:config
右键–新建–字符串
字符串的名字: extensions.firebug.yslow.cdnHostnames
值就可以写:appspot.com 好帖子~ 爱死你了~ :lol 。。 如何在 Google App Engine 绑定自己的域名
如果你成功申请了 Google App Engine 的服务,并创建了自己的应用(Application),你会自动获得一个形如 your-application-id.appspot.com 的 URL 地址,用于你的应用程序的发布。
如果你不喜欢这样的地址,完全可以把 Google App Engine 的服务绑定到自己的域名上。
途径有两条(殊途同归):
一、从 Google App Engine 的管理中心出发
1. 登录 Google App Engine 的管理中心(Administration Console)。在 Versions 下面找到 Add Domain 的按钮。
2. 填写你的域名。此域名需要先申请 Google Apps 服务。.cn 域名很难(或说不能)“直接”申请 Google Apps 服务,你可以先通过诸如 .com/.org/.net 等域名申请到 Google Apps,然后再通过他们把 .cn 域名绑进去。
3. 阅读并接受 Google App Engine 的条款。填写你要使用的 URL 地址。(期间会提示你登录 Google Apps 帐号)
……
二、从 Google Apps 的控制面板出发
1. 登录 Google Apps。在控制面板找到 Add more services。
2. 在 Google App Engine 那里填写你的 Application ID。
3. 跟方法一的一样。
最后就是要在域名注册商那里新建 CNAME 或 A 记录,指向 Google 的服务器了。
使用 CNAME 的方法:
如果你要用地址 app.your-domain.com 来访问你的应用,你就新建一个 app 的 CNAME 记录,内容填写 ghs.google.com。(但野鸭不推荐此方法,因为某防火墙水产了 ghs.google.com 的部分 IP,国内用户不一定能访问到)
使用 A 记录的方法:(参考来源)
针对你要用地址(如 app.your-domain.com),建一个 A 记录,ip 填写下面四个中的任意一个:
216.239.32.21
216.239.34.21
216.239.36.21
216.239.38.21
根据野鸭目前所了解到的情况,这四个 ip 都能在国内访问到。
另外,发现在 Google Apps 里面,可以为自己的那个 Application 添加多个地址。添加之后,发现原来的 app-id.appspot.com 仍然可以使用,而不是像 Blogger 绑定域名那样,会自动重定向至你绑定的那个地址。
页:
[1]
2