首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在Google App Engine中运行CherryPy Web服务器

在Google App Engine中运行CherryPy Web服务器需要遵循以下步骤:

  1. 安装CherryPy库:首先,确保已经安装了CherryPy库。如果没有,请使用以下命令安装:
代码语言:txt
复制
pip install cherrypy
  1. 创建CherryPy应用程序:接下来,创建一个CherryPy应用程序。以下是一个简单的示例:
代码语言:python
代码运行次数:0
复制
import cherrypy

class HelloWorld(object):
    def index(self):
        return "Hello World!"
    index.exposed = True

cherrypy.tree.mount(HelloWorld(), '/')
  1. 创建app.yaml文件:接下来,创建一个名为app.yaml的文件,以便为Google App Engine配置应用程序。以下是一个简单的示例:
代码语言:yaml
复制
runtime: python27
api_version: 1
threadsafe: true

handlers:
- url: /.*
  script: main.app
  1. 修改main.py文件:为了与Google App Engine兼容,需要对CherryPy应用程序进行一些修改。在main.py文件中,将以下代码添加到文件末尾:
代码语言:python
代码运行次数:0
复制
import os
import sys

from cherrypy import wsgiserver
from google.appengine.ext import webapp

def main():
    # Get the current CherryPy application
    app = cherrypy.tree.apps['/']

    # Create a new WSGI application from the CherryPy application
    wsgi_app = wsgiserver.WSGIPathInfoDispatcher({'/': app})

    # Create a new webapp request handler that uses the WSGI application
    class WSGIRequestHandler(webapp.RequestHandler):
        def __init__(self, *args, **kwargs):
            webapp.RequestHandler.__init__(self, *args, **kwargs)

        def handle_request(self):
            env = self.request.environ
            env['SCRIPT_NAME'] = ''
            wsgi_app(env, self.response.out)

    # Start the webapp application
    webapp.WSGIApplication([('/.*', WSGIRequestHandler)], debug=True)

if __name__ == '__main__':
    main()
  1. 部署应用程序:最后,部署应用程序到Google App Engine。可以使用Google Cloud SDK工具进行部署。在命令行中运行以下命令:
代码语言:txt
复制
gcloud app deploy

完成以上步骤后,CherryPy Web服务器应该已经在Google App Engine中运行。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

python bottle 简介

python bottle 简介 目录 正文 bottle 是一个轻量级的python web框架, 可以适配各种web服务器,包括python自带的wsgiref(默认),gevent, cherrypy...bottle是单文件形式发布,源码在这里可以下载,代码量不多,可以用来学习web框架。这里也有官方文档的中文翻译。   首先我们来运行一下bottle的hello world ?...ServerAdapter     所有bottle适配的web服务器的基类,子类只要实现run方法就可以了,bottle里面有大量的Web服务器的适配。...App Engine deployments wsgiref wsgiref Single-threaded default server cherrypy cherrypy Multi-threaded...工作模式也很全面,有多线程的(paste)、有多进程模式的(gunicorn)、也有基于协程的(gevent)。

1.3K20

年底总结一下Python WEB最好用的几个框架,让你有一个系统的了解

其他功能:开发Web服务器,集成单元测试支持,Google App Engine兼容性。Flask由LinkedIn使用,Pinterest。...aiohttp不仅仅是一个服务器web框架,也是客户端的一个。它支持WebSocket服务器和客户端。由于它支持与Jinja2的集成,因此该示例使用此功能。...CherryPy 旨在成为“程序员和问题之间的一种方式”。通过CherryPy开发的常见Web应用程序看起来像一个普通的Python应用程序,它可以在没有复杂的设置和定制的情况下使用。...此外,它支持不同的Web服务器Apache,IIS等。CherryPy包含一个嵌入式Web服务器,因此您的应用程序可以部署在任何安装了Python的地方。...CherryPy允许一次启动多个HTTP服务器。输出压缩,各部分可配置,灵活的插件系统。CherryPy不会强迫你使用任何特定的模板引擎,ORM或JavaScript库,所以你可以使用你喜欢的东西。

3.2K80
  • 众多Python Web框架比较,哪个适合你,你就用哪个!

    在这里,我们给这样的框架更高的分数:这些框架展示了如何在教程创建整个应用程序,包括常见的配方或设计模式,以及超出职责范围(例如提供有关如何运行的详细信息) Python变体(PyPy或IronPython...但对于Windows或MacOS上技术含量较低的用户,Web2py的创建者提供的版本基本上是独立服务器。下载,解压缩并运行其中一个版本,将拥有一个内置Web2py预配置副本的本地Web服务器。...这些系统使用Python类来定义模型,在Web2py,使用构造函数(define_table)来实例化模型。...CherryPy在引擎下使用池化线程,更好地支持多线程服务器适配器。如果想尝试其他方法,CherryPy的非官方第三方分支交换asyncio协程而不是线程。...后者包括针对大量目标环境的部署技术,从Google App Engine到Nginx。 Pyramid支持Python 2和Python 3,但不使用Python 3的异步语法。

    4.5K20

    2013年6月12日 Go生态洞察:Go与Google云平台的协同

    自2011年Go运行时被引入到App Engine以来,Go在Google云平台上的支持不断增强。...Go运行时的引入不仅为App Engine带来了高性能的网页应用运行环境,还让Go成为处理大量数据和复杂运算的理想选择。这篇文章将深入这些主题,带你了解Go在云计台的强大表现。...正文 Go在App Engine上的高性能应用 高效的Web应用运行环境 Go运行时提供了快速响应、实例快速启动和高效利用实例小时数的能力,使你的应用能够以全机器速度进行严肃的处理。...充分利用Go的优势 这部分将探讨如何在App Engine上充分发挥Go的能力,以提升Web应用的性能。...使用Go和Google云服务进行数据可视化 这部分讨论了如何利用Maps、App Engine、Go、Compute Engine、BigQuery、Cloud Storage和WebGL进行大规模数据可视化

    11210

    如何把一个Python应用程序装进Docker

    准备 容器无处不在,但是如何在Docker容器运行Python应用程序呢?这篇文章将告诉你怎么做! 如果您想知道,这些示例需要Python 3.x。...这个应用程序是一个web API,它从一个电影集合返回一个随机的电影。...': PORT, })) requirement.txt,我们有我们的依赖包 pip install -r requirements.txt 我们可以使用python app.py运行我们的应用程序...现在我们可以使用docker run命令运行刚刚构建的图像: docker run movie-recommender python /src/app.py 该命令将在基于电影推荐图像的容器执行python...因此,让我们尝试再次运行该命令,这一次指定我们希望在本地公开端口8888: docker run -p 8888:8888 movie-recommender python /src/app.py 然后

    2.6K20

    工具 | Python Web 开发的十个框架

    Pylons是最新的Web应用框架的典型,类似于Django和TurboGears。...目前Web.py被广泛运用在许多大型网站,西班牙的社交网站Frinki、主页日平均访问量达7000万次的Yandex等。 Pyramid ?...CherryPy自身内置了一个HTTP服务器,或者称为Web服务器。这样,对于CherryPy的用户来说,不用另外搭设Web服务器就能直接运行 CherryPy应用程序了。...实际上,Web服务器是到达CherryPy应用程序的关口,是所有的HTTP请求和响应的必经之地。...因此,可以这样理解 CherryPy内建的Web服务器:它是位于处理客户端与服务器端之间的一层软件,用于把底层TCP套按字传输的信息转换成Http请求,并传递给相应 的处理程序;同时,还把上层软件传来的信息打包成

    1.5K100

    2011年05月10日 Go生态洞察:Go与Google App Engine的结合

    2011年05月10日 Go生态洞察:Go与Google App Engine的结合 摘要 喵,猫头虎博主今天要带你探索Go语言与Google App Engine(GAE)的结合。...加入我,让我们一起了解Go如何在GAE上激发潜力,将应用推向云端! 引言 Google App Engine作为一个提供可靠、可扩展且易于构建和部署web应用的平台,已经托管了超过十万个应用。...Go语言在GAE上的表现 在App Engine环境,Go运行时提供了完整的Go语言和几乎所有的标准库,除了一些在GAE环境没有意义的部分,例如没有unsafe包,syscall包也进行了精简。...并发:Goroutines与Channels的应用 虽然goroutines和channels存在,但在App Engine运行的Go应用在给定实例运行一个线程,这意味着所有goroutines都在一个操作系统线程运行...Go and Google App Engine. Retrieved from Google App Engine Blog

    9110

    DevOps工具介绍连载(20)——Google App Engine

    详细介绍 2008年4月7号,Google在Campfire One上介绍了一种简化创建、运行和构建伸缩性Web应用的工具——Google App Engine。...简而言之,Google App Engine允许你本地使用Google基础设施构建Web应用,待其完工之后再将其部署到Google基础设施之上。...App Engine提供了一个web应用运行的框架,App Engine应用程序易于运行、部属和扩展。App Engine不同于其他方案:App Engine不是网格计算—它不能运行任意的作业。...Sandbox 在安全环境运行的应用程序,仅提供对基础操作系统的有限访问权限。这些限制让 App Engine 可以在多个服务器之间分发应用程序的网络请求,并可以启动和停止服务器以满足访问量需求。...但在周二,谷歌宣布与初创企业AppScale合作,允许App Engine上的应用程序不经修改即可在其他云服务器或公司自有数据中心和服务器运行

    2.7K10

    PaaS 调研:GAE与 AWS(上)

    另外,作为一个游戏服务器端的开发者,也在试图从PaaS的概念,学习如何提高游戏开发、运营效率的方法。所以就有了以下的研究。...[1510126142353_3848_1510126187882.jpg] 本文主要的研究对象是Google出品的App Engine,以及Amazone的AWS两个产品。...] 应用场景 Google自己的Web服务,是具备一整套“基础设施”的,包括Web应用(PHP)的运行框架、BigTable、GFS等等广为人知的服务器端软件。...所以Google App Engine的设计目标,就是让用户可以很方便的使用这一整套“基础设施”。从某种意义上来说,为了使用Google的配套服务,可能会比托管运行自己的Web应用程序,更吸引人。...开发支持 Google不愧是以技术著称的公司,其运行容器,支持Python\Java\PHP\Go等等几乎所有主流的编程语言,及这些编程语言在Web应用程序方面的标准框架,Servlet for Java

    2.3K20

    Python: 10大Web框架简介

    尽管如此,最好的部分是它的语法非常简单,因为我们用英语写了一些单词, print、exit 等。它使开发人员和其他人以更容易的方式理解代码。...由于其开源特性,Django 具有成本效益,但在其他有助于开发人员创建 API 和业务类 Web 应用程序的 Python Web 框架功能最强大。...3.CherryPy CherryPy 是另一个出色的 Python Web 开发框架,也是 Python 开发人员的首选之一。它有一个多挂服务器,可以与任何 Python 支持的框架一起运行。...强调符合 HTTP/1.1;毫不费力地在各种 HTTP 服务器运行;多种内置工具;授权配置系统。 4.Pyramid 在很短的时间内,Pyramid 在经验丰富的开发人员中广受欢迎。...它提供 SQL/JDBC 作为其数据库接口,包括对 Google App Engine 的支持,以及为初学者和专家设计的文档齐全、正确且清晰的界面。

    79510

    Python Web 框架大乱斗:哪个框架适合你?

    其中超过98%的站点运行的是Python 2.0,只有1%多一点的站点运行3.0。 框架让开发更轻松 今天,有着大量的Python框架,它们可以让web应用的开发更轻松。...虽然大部分现代的web框架都运行在服务端,也有一些框架开始尝试与客户端代码结合,可以在客户端运行(例如Skulpt和Trinket)。Python框架通常分为全栈框架和非全栈框架。...它的优点包括: 内建的快速模板引擎和对Jinja2,Mako和Cheetah的支持 可以访问上传,cookies,表单数据,标题,和其他元数据的大量工具 支持fapws3,Google App Engine...,CherryPyPaste的内建HTTP开发服务器 支持动态URLs Bottle的另一个优点是,它的小巧精干便于嵌入在一个较大应用程序而不必担心系统依赖关系。...有着热情的追随者其他框架包括 Pyramid, web.py, Bobo, Albatross, 和 CherryPy

    1.2K60

    Python库大全,建议收藏留用!

    Python学习网络爬虫主要分3个大的版块:抓取,分析,存储 当我们在浏览器输入一个url后回车,后台会发生什么? 简单来说这段过程发生了以下四个步骤: 查找域名对应的IP地址。...Splinter – 通用API浏览器模拟器(selenium web驱动,Django客户端,Zope)。 多重处理 threading – Python标准库的线程运行。...the] Web framework we use at FriendFeed [and] the webapp framework that ships with App Engine…” 因为有这层关系...5.CherryPy CherryPy是一种用于Python的、简单而非常有用的Web框架,其主要作用是以尽可能少的操作将Web服务器与Python代码连接,其功能包括内置的分析功能、灵活的插件系统以及一次运行多个...HTTP服务器的功能,可与运行在最新版本的Python、Jython、Android上。

    1.8K30

    2013年01月09日 Go生态洞察:App Engine SDK与工作区(GOPATH)深度解析

    今天,我们将探索Go语言在Google App Engine SDK的最新进展,尤其聚焦于GOPATH工作区的概念和应用。...这意味着在本地运行或上传应用时,这些工具将在由GOPATH环境变量指定的工作区搜索依赖。.../x/oauth2" 混合独立程序与App Engine应用 利用Go的标准net/http包,许多Go Web服务器可以在App Engine运行,只需少量修改。...例如,Go发行版的godoc既可以作为独立程序运行,也可以作为App Engine应用运行。 构建混合应用 通过使用构建约束,你可以编写既是独立Web服务器又是App Engine应用的程序。...案例研究:简单Go Web服务器转换为混合应用 让我们看一个将简单的Go Web服务器转换为混合应用的示例。

    7410
    领券