# 关键概念

# 开发者、客户、用户

本文档中会经常提到如下几个角色。

  • 开发者是云计算服务的使用者,因此在文档中提到的 客户 等同于开发者 。
  • 用户是开发者所推出产品的直接使用者,也是云计算服务的间接使用者。

# 负载均衡

负载均衡是新浪云服务的最外层,负责接收应用的请求,并将请求转发到应用所在的Web服务池去由其做实际的请求处理。当前新浪云负载均衡完成的工作包含:

  • 健康检查
  • 流量调度
  • 应用防火墙服务

# Web服务池

一个Web服务池一般由一组Web服务器组成,负载均衡使用Round-Robin算法在应用的 Web服务池 中选择一个健康的 Web服务器 来处理该应用的请求。

# Web服务器

Web服务器负责解析负载均衡转发过来的请求,并调用对应开发者编写的应用代码来处理这个应用的请求,并将用户代码生成的回复返回给负载均衡,最终由负载均衡返回给请求者。

目前各语言环境使用的 Web服务器分别是:

  • Apache(PHP)
  • Jetty(Java标准环境)
  • Tomcat8.0 (Java环境)
  • Direwolf(Python共享环境)

# 运行环境

运行环境 是用户代码执行的环境,譬如 Web服务器 的版本、本地IO权限、可用的扩展及其版本、SDK等。本文档中一般会用 PHP运行环境 、 Java运行环境 、 Python运行环境等来指代各语言代码的执行环境。

# 服务

新浪云不需要开发者去部署和运维MySQL、Memcached等程序,而是将这些程序通过 服务 的形式以接口提供给开发者去使用,开发者只需要在线创建服务实例,直接从程序中使用即可,服务的可用性、故障管理、扩容等工作由新浪云负责。

# 应用目录、应用版本目录、应用版本

在新浪云中一个应用可以部署多个版本。

在使用SVN部署代码时,每个版本在SVN中对应一个数字为名的目录。下面是一个应用的典型目录结构:

$ tree myapp
myapp
|-- 1
|   |-- build-doc.sh
|   |-- config.yaml
|   |-- index.wsgi
|   `-- README.md
`-- 2
    |-- config.yaml
    `-- index.wsgi

2 directories, 6 files

我们称顶级目录 myapp 目录为 应用目录 ,而 myapp/1应用版本目录

应用版本 是指用户部署的同一个应用的多个版本的代码,对应 应用版本目录

因为SVN作为版本管理系统,本身有个版本的概念,为了防止和新浪云的 应用版本 相混淆,在本文档中我们使用 SVN版本 来指代SVN的版本。

在使用Git部署代码的时候,应用版本对应Git的远程分支。下面时一个典型的Git代码目录结构如下:

$ tree myapp
myapp
|-- .git
|-- build-doc.sh
|-- config.yaml
|-- index.wsgi
`-- README.md

1 directories, 4 files

开发者在 git push 代码的时候指定远程的分支名,也就是要部署到的 应用版本

# 安全邮箱

安全邮箱是开发者在注册新浪云账号时填写的邮箱地址,如果忘记从http://www.sinacloud.com/ucenter/profile.html (opens new window)用户中心可以查询。

# 安全密码

安全密码是开发者在注册新浪云账号时填写的密码,如果忘记从http://www.sinacloud.com/ucenter/profile.html (opens new window)用户中心可以查询。

# 应用名

应用名是在创建应用时指定的应用的唯一标示,支持数字0-9和小写字符组成,长度为4-18位,全局唯一。创建后这个应用名也会用于系统分配的二级域名组成。

例如创建时指定的应用名为:sinxxx2,则应用的二级域名为:sinaxxx2.applinzi.com

说明

applinzi.com仅为演示,可能会变化,具体可用的二级域名请以管理面板展示的为准。