sae服务器(SS服务器网站)
请问后缀为sae的文件,用什么软件才能打开啊
sae文件为sae服务云的相关程序文件,无法打开的,只能通过相关API接口进行调用。
SAE整体框架:
相关解释:Direwolf是SAE为Python语言环境开发的Web服务器,支持WSGI协议。
在SAE中一个应用可以部署多个版本。
在使用SVN部署代码时,每个版本在SVN中对应一个数字为名的目录。下面是一个应用的典型目录结构:
$treemyapp
myapp
|--1
||--build-doc.sh
||--config.yaml
||--index.wsgi
|`--README.md
`--2
|--config.yaml
`--index.wsgi
2directories,6files
称顶级目录myapp目录为应用目录,而myapp/1为应用版本目录。
应用版本是指用户部署的同一个应用的多个版本的代码,对应应用版本目录。
因为SVN作为版本管理系统,本身有个版本的概念,为了防止和SAE的应用版本相混淆,在本文档中我们使用SVN版本来指代SVN的版本。
SAE平台的服务特性
SAE提供的服务
SAE目前已经提供了十多种服务,整体上分为计算型和存储型,计算型又包括同步计算和异步计算,而存储型则分为持久化存储和非持久化存储。具体列表如下:服务名称类型说明 HTTP+PHP同步计算带SAE沙盒的Apache和Zend为用户提供Web计算服务 Storage持久化存储提供分布式文件存储 Memcache非持久化存储提供分布式缓存服务 RDC持久化存储分布式数据库集群,提供MySQL服务 TaskQueue异步计算异步离线轻量级任务队列,HTTP方式调用 DeferredJob异步计算异步离线重量级任务队列,系统方式调用 Counter持久化存储计数器服务 RankDB持久化存储分布式排行榜服务 KVDB持久化存储分布式key/value存储服务 Cron异步计算分布式定时服务 FetchURL同步计算分布式抓取服务 TmpFS非持久化存储提供临时文件存储,文件生命周期在一个会话内,Http请求结束文件自动消失 AppConfig提供应用配置功能,取代Apache htaccess Mail异步计算邮件发送服务 Image同步计算图像处理服务 XHProf同步计算 Facebook提供的强大的PHP调优工具 SVN持久存储用户代码部署的入口点 Online CodeEditor持久存储在线代码编辑器,编辑的代码保存后入自动入SVN并部署到Web服务器两大特性:扩展性和可靠性
·扩展性
SAE在服务的可扩展性上基本是动态可扩展性的思路,即资源和ID没有强对应关系,用户以服务使用者的身份使用SAE服务。
·可靠性
在计算可靠性方面,SAE主要是依靠多点部署来完成可靠性,多节点的计算一致性上,SAE有分布式锁服务提供比Paxos更好的容错逻辑。
在数据可靠性方面,SAE的所有数据都通过冗余存储来达到SLA。SAE通过主动复制和被动复制来实现多点数据冗余。
如何在SAE上架设RPC服务与Openresty的Lua服务通信
有时候我们写的服务可能会部署到很同种不同类型的服务器上,有一些数据,可能不便于存在本地,需要一个数据中心,保存这些数据。
我们要求是这样的:
1.客户端服务要周期性的去服务器上拉取数据。(存在SAE MySQL中)。
2.不使用长连接的方式通信,使用基于HTTP的协议。
3.客户端与数据库交互不依赖服务器端采用什么数据库,抽象出一层数据访问层。
基于以上三点:
服务器端:我们将服务器服务架设到SAE的云端,使用SAE支持的Python语言,WEB框架使用的Django,通过RPC协议,为客户端提供服务。服务端的数据存储在SAE的MySQL数据库中,为使服务器端可以对外开发RPC服务接口,使用开源的RPC服务端解决方案RPC4Django。
客户端:这里的客户端其是架设在另一台服务器的Openresty服务,使用Lua语言进行扩展,加入了定时拉取访问数据的流程演示模块,至于如何接定RPC接口,传输什么数据,看具体的实际业务,这里只是通过程序演示这个机制如何在SAE上完成变互的过程。
客户访问端使用持术是用Openresty做服务器,用Lua Lapis框架写成应用。在客户访问端需要做以下几件事情:
1.安装Openresty服务器,按装Lua Lapis框架。
2.使用Lua Lapis创建一个Openresty的项目。
3.配置Openresty,创建一个定时作任务。
这时我们先跳出Lua阶段,进行SAE端Pytho