github wiki有一篇文档说明了edx.org的架构https://github.com/edx/configuration/wiki/Hosting-edX-in-Production
edX.org 部署
EdX.org 通过AWS cloudformation部署在EC2。你可以看到cloudformation的摸板https://github.com/edx/configuration/blob/master/cloudformation_templates/edx-reference-architecture.json.
在2015-02-18的时候,部署大概是这样的:
几个名词:
ELB Elastic Load Balancing http://aws.amazon.com/cn/elasticloadbalancing/
实例类型 http://aws.amazon.com/cn/ec2/instance-types/
EdXApp Servers (10 c3.4xlarge instances)
- edxapp.yml
- 1 external ELB hosting courses.edx.org
Forum Servers (2 m1.large instances)
- forum.yml
- 1 internal ELB hosting prod-edx-forum.edx.org
CommonCluster Servers (3 m3.large instances)
- commoncluster.yml
- 4 internal ELBs hosting
- ElasticSearch
- RabbitMQ
- XQueue
- XQueue internal
Worker Servers (2 m2.4xlarge instances)
xqwatcher Servers (2 m3.medium instances)
Insights Servers (2 m3.medium instances)
- insights.yml
- 1 ELB hosting insights.edx.org
Certificates Servers (1 m3.medium instance)
MongoDB Hosted via Compose.io
- Can also be deployed using mongo.yml
MySQL Hosted via AWS RDS (Multi-AZ deployment of size db.m2.4xlarge)
- Can also be deployed using a cluster of any mysql compatible database server.
Misc
- Various legacy graders
- Analytics related servers
- Admin & Monitoring servers
可以看到的大概分割思路是这样的
- edXAPP,包含LMS/CMS
- 论坛
- 一般节点,包含rabbitMQ/Xqueue
- Worker,后端进程
- xqwatcher,外部分析
- Insight,数据分析
- Certs,证书组件
- MonogoDB节点
- Mysql节点
- 其他,如管理监控
文不对题哦