互联网公司技术架构资料.新浪.动态应用平台实践

互联网公司技术架构资料.新浪.动态应用平台实践

ID:34610684

大小:962.77 KB

页数:17页

时间:2019-03-08

互联网公司技术架构资料.新浪.动态应用平台实践_第1页
互联网公司技术架构资料.新浪.动态应用平台实践_第2页
互联网公司技术架构资料.新浪.动态应用平台实践_第3页
互联网公司技术架构资料.新浪.动态应用平台实践_第4页
互联网公司技术架构资料.新浪.动态应用平台实践_第5页
资源描述:

《互联网公司技术架构资料.新浪.动态应用平台实践》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、新浪动态应用平台开发实践姓名:童剑部门:研发中心.平台部主要负责:系统平台运营和研发2009年8月23日目录平台介绍平台目的经验分享系统架构系统架构设计可扩展性标准化配置多机房体系约束和限制服务容量监控报警使用的开源软件关于性能容量规划平台介绍•功能–提供:PHP程序托管服务的虚拟主机环境–提供:数据库、存储、Memcached等基础服务–提供:代码分发、开发环境、线上调试、后台管理、Cron配置功能•历史–1.0版本•2004年由CTO李嵩波先生立项,9月份完成1.0环境搭建•2005年资源监控系统开发,实现项目资源的可用性监控和报警•2005年生产环境部分系统单元

2、开始使用Xen虚拟机技术•2006年基于MySQL的数据库集群系统开发完成–2.0版本•2006年完成2.0环境的搭建•2006年托管项目数量突破100个,每日程序请求突破3亿次•2006年实时访问统计系统开发,实现恶意访问控制机制•2007年子系统或代码被其它业务使用:代码分发、数据库集群、软件包仓库•2008年基于数据库集群系统,发展为独立的数据库服务平台•2008年基于虚拟化技术经验,开发了虚拟机服务平台,并投入使用平台目的•高可用+低成本+可扩展–没有单点故障–基于LAMP架构和其它开源软件技术–平台资源被多个业务共享从而提高资产利用率–增加服务器即可提升服务

3、容量并且对应用透明•统一的运行环境–统一标准的系统环境配置,方便开发,方便运维–开发环境发布代码到生产环境即可正常运行•简单映像的体系架构–让开发人员只看到一个Web前端、一个DB、一个存储、一个Cache–底层系统集群技术、节点多机房分布等技术对开发人员透明•应用开发和平台开发分离–技术团队专业分工,各自作擅长的事情–开发人员在已有系统平台迅速开发应用,缩短开发周期,提高效率系统架构4/7层交换4/7层交换用户外网前端App集群前端Cache集群内网数据库集群Memcache集群存储集群线实系App监上时统后控调访配台和试问置管报内内容和测统管理警部程序开发代码发布

4、试计理开发环DB存储MC源码管理境性能和可扩展性北广负载均衡负载均衡京州机机房房CacheAppAppCacheCacheAppAppCacheCacheAppAppCache专线/VPN存储VFSVFS存储MCMC存储MCMC存储负载均衡负载均衡MySQLRWMySQLRWSSMMSSMM多机房分布式体系代码代码发布分发北广专线/VPN京前端App前端App州前端App前端App机前端App前端App机房存储房同步存储VFSVFS存储数据MySQLMySQL库写SSMRSS数据库同步历年访问量•程序Hits量每年都翻倍–每年增加一定数量的机器即可满足需求使用的开源软

5、件•LAMP•Memcached•Squid-Cache•Heartbeat+DRBD•Xen•Cfengine•BindDNS+Mon•Haproxy经验分享-系统架构设计1.借鉴成功的经验1.LiveJournal(Memcached、MogileFS)2.Yahoo!、Google、Youtube、Facebook2.使用成熟的软件1.除非别无选择才去自己开发代码2.自己开发代码也许容易,但长期维护很不容易3.深入了解你所使用的成熟的软件,用好它!3.一定程度的底层封装和隔离1.目的:使系统具有可扩展性4.简单=高效1.不要过于追求完美,够用就好!2.循序渐进的

6、开发过程,分阶段达成目标3.简单(结构设计+实现方法)=高效(开发过程+故障排查)4.简单是指:简单的体系结构、更少的系统单元、更少的处理流程、更少的代码编写经验分享-标准化配置1.标准化配置的好处1.使开发环境和生产环境分离2.系统环境配置变更后,系统管理员更新资源配置文件即可2.运行环境配置1.软件包、版本、路径、用户2.常用配置文件统一管理:httpd.conf,php.ini,hosts3.Apache和Squid日志记录每个请求执行时长,MySQL打开慢日志3.资源配置1.资源包括:数据库账户、存储路径、Memcached、数据目录等2.如数据库的IP和端口

7、的资源变量名:1.SINASRV_DB_HOST2.SINASRV_DB_PORT3.通过Apache环境变量取值:$dbPort = $_SERVER[“SINASRV_DB_PORT”]4.通过解析配置文件获取:$SINASRV_CFG=parse_ini_file($_SERVER[“DOCUMENT_ROOT“] . “/system/SINASRV_CONFIG”)经验分享-约定和限制1.基本的约定1.数据库读写分离2.程序不允许写磁盘文件Cache,尽量使用Memcached3.程序不允许使用绝对路径4.程序目录可执行不可写,数据目录可写

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。