Social Game 的技术挑战
—— 支持千万级 DAU 的 Social Game 技术构
            架
目录

1     Five Minutes 简介

2   《开心农场》技术构架

3   Social Game 的技术挑战

4       加入我们吧!
我们的愿景
• 五分钟致力于成为世界领先的 Social
  Game 开发和运营商!

• Five Minutes was established to
  become a leading Social Game
  Publisher ...
我们的游戏理念
• Our games are designed for NON-
  GAMERS.
• Playing with REAL-FRIENDS is more
  fun than playing alone.
• Lower ...
《开心农场》运营成绩
     平台         当前 DAU     上线时间
   Facebook      56 万      09 年 4 月
 QQ 校友 &Qzone   1000 万   09 年 4 月到 5 月
    ...
目录
1    Five Minutes 简介

2
1   《开心农场》技术构架

3   Social Game 的技术挑战

4      加入我们吧!
《开心农场》的主要难点
• 如何存储大规模的用户数据(千万级的
  用户量)
• 如何应对大量的访问   (每天数亿次
  的请求量)
• 如何应对数据的频繁修改   (每秒数万
  次数据修改)
负载均衡
• Web 服务器平行扩展
 –   LVS 或者 DNS 轮询来负责流量分发
 –    共享 Session
服务器性能优化
• 请求操作处理异步化
• 缓存接口数据
• Linux 内核参数优化
• 挖掘 PHP 的效率
  – 用 fastcgi 模式来运行 php
  – 用 EAccelerator 来加速
  – 固定不变的数据做成 php ...
数据库性能优化
• 数据库分库分表
• 所有的数据全部设计成 KEY->VALUE 的形式
  ,不使用 JOIN
• 使用 Innodb
• 经常操作的数据表中的所有字段尽量设计成数
  值型的
• 用 UPDATE 替代 INSERT 和 ...
异步处理

• 原则
 – 把客户端暂时不需要的数据进行异步处理
• 实例
 – 将非核心数据先写入 Memcached ,异步
  更新到数据库
 – 合并数据库更新操作
 – Feed 和 Notification 的异步发送
利用客户端资源
• Flash 屏蔽重复操作和不必要的请求
• Flash 进行一些计算来减轻服务器的负
  担,例如好友排序等
• Flash 缓存一些数据
目录
1    Five Minutes 简介

2   《开心农场》技术构架

3
1   Social Game 的技术挑战

4      加入我们吧!
Social Game 的挑战
Social Game = Social Network +    Game



 实时互动           非实时互动             实时互动
                非实时互动
   ...
Blue Whale 蓝鲸
目录
1     Five Minutes 简介

2   《开心农场》技术构架

3   Social Game 的技术挑战

4
1       加入我们吧!
加入我们吧!
• C++ Programmer (Linux/Unix)
• Python Programmer
• Flash AS3 Programmer
请发送简历到: jobs@fminutes.com


          让我们一...
Upcoming SlideShare
Loading in …5
×

Social Game

1,593 views

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,593
On SlideShare
0
From Embeds
0
Number of Embeds
232
Actions
Shares
0
Downloads
27
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Social Game

  1. 1. Social Game 的技术挑战 —— 支持千万级 DAU 的 Social Game 技术构 架
  2. 2. 目录 1 Five Minutes 简介 2 《开心农场》技术构架 3 Social Game 的技术挑战 4 加入我们吧!
  3. 3. 我们的愿景 • 五分钟致力于成为世界领先的 Social Game 开发和运营商! • Five Minutes was established to become a leading Social Game Publisher in the world !
  4. 4. 我们的游戏理念 • Our games are designed for NON- GAMERS. • Playing with REAL-FRIENDS is more fun than playing alone. • Lower participation cost: people can play a FIVE-MINUTES game daily.
  5. 5. 《开心农场》运营成绩 平台 当前 DAU 上线时间 Facebook 56 万 09 年 4 月 QQ 校友 &Qzone 1000 万 09 年 4 月到 5 月 校内 378 万 08 年 11 月 漫游 60 万 09 年 02 月 51 70 万 09 年 03 月 总计 1564 万 从 DAU 来看《开心农场》是世界最大的 Social Game !
  6. 6. 目录 1 Five Minutes 简介 2 1 《开心农场》技术构架 3 Social Game 的技术挑战 4 加入我们吧!
  7. 7. 《开心农场》的主要难点 • 如何存储大规模的用户数据(千万级的 用户量) • 如何应对大量的访问 (每天数亿次 的请求量) • 如何应对数据的频繁修改 (每秒数万 次数据修改)
  8. 8. 负载均衡 • Web 服务器平行扩展 – LVS 或者 DNS 轮询来负责流量分发 – 共享 Session
  9. 9. 服务器性能优化 • 请求操作处理异步化 • 缓存接口数据 • Linux 内核参数优化 • 挖掘 PHP 的效率 – 用 fastcgi 模式来运行 php – 用 EAccelerator 来加速 – 固定不变的数据做成 php 配置文件 – 用 C 来开发 php 扩展
  10. 10. 数据库性能优化 • 数据库分库分表 • 所有的数据全部设计成 KEY->VALUE 的形式 ,不使用 JOIN • 使用 Innodb • 经常操作的数据表中的所有字段尽量设计成数 值型的 • 用 UPDATE 替代 INSERT 和 DELETE 操作
  11. 11. 异步处理 • 原则 – 把客户端暂时不需要的数据进行异步处理 • 实例 – 将非核心数据先写入 Memcached ,异步 更新到数据库 – 合并数据库更新操作 – Feed 和 Notification 的异步发送
  12. 12. 利用客户端资源 • Flash 屏蔽重复操作和不必要的请求 • Flash 进行一些计算来减轻服务器的负 担,例如好友排序等 • Flash 缓存一些数据
  13. 13. 目录 1 Five Minutes 简介 2 《开心农场》技术构架 3 1 Social Game 的技术挑战 4 加入我们吧!
  14. 14. Social Game 的挑战 Social Game = Social Network + Game 实时互动 非实时互动 实时互动 非实时互动 + + + + 大负载 大负载 大负载 小负载 ( 分服 )
  15. 15. Blue Whale 蓝鲸
  16. 16. 目录 1 Five Minutes 简介 2 《开心农场》技术构架 3 Social Game 的技术挑战 4 1 加入我们吧!
  17. 17. 加入我们吧! • C++ Programmer (Linux/Unix) • Python Programmer • Flash AS3 Programmer 请发送简历到: jobs@fminutes.com 让我们一起 引领 Social Game 的技术潮流!

×