写点什么

页游架构设计与云平台运行

  • 2014-07-04
  • 本文字数:1892 字

    阅读完需:约 6 分钟

在互联网游戏领域,新老游戏在各大平台每时每刻都更替着,如何命中游戏市场要害,并占据领先位置,游戏开发者们在其中起到了关键性作用。在今年 7 月 18 日 -19 日的 ArchSummit2014 大会上,多位讲师将针对如何快速开发游戏,避免技术陷阱等问题纷纷献计献策。

ArchSummit 开始之前,InfoQ 邀请上海江游技术总监刘其炎往期视频:网页游戏的云计算架构)和江游运维负责人许治坤,从游戏架构设计、OpenNebula 云平台运行这几个方面分享了一些自己的观点,采访内容如下:

InfoQ:请您介绍下 2014 年上海江游的规模,并请简单介绍一下您目前的工作和关注的领域。

刘其炎:江游现在有 300 左右的员工,一共有 9 个项目,其中 4 款手游,5 款页游。我目前的主要工作是负责我们事业部的技术,以及公司所有技术的整合,新人的培训等等。我比较关注的领域是 MySQL、PHP、Nginx、游戏服务器架构等。

InfoQ:今年,针对《街机三国》的服务器架构,以及升级自动化工作方面,是否遇到了新的问题,又是如何解决的?

刘其炎:主要是之前设计的比较稳定,再加上今年各平台对街机的推广已经没那么多了,所以基本上没有出现很多新问题。

InfoQ:针对游戏服务器开区、开服的问题,从架构设计角度是如何考虑的?是否有过负载过大导致宕机?

刘其炎:这个还是我讲座里说的,主要还是从产品,从客户的角度去设计架构,不要过度设计。因为我们开始的时候就考虑到了页游的生命周期,所以尽量的保证服务器的可平行扩展性,所以没有出现过负载过大而导致的宕机。

InfoQ:从事游戏服务器架构设计这些年,您最大的感悟是什么?

刘其炎:最大的感悟就是:一切以产品为中心,不要过度设计。没有最好的架构设计,只有最适合的设计。

除了游戏架构之外,关于上海江游云平台运行方面的问题,InfoQ 请江游负责运维工作的许治坤也谈了一些自己的体会,以下为采访实录:

InfoQ:游戏的特点是单服务器负载增高后直接用开新服来解决。这是否意味着游戏运维不需要考虑应用的扩展性问题?

许治坤:开新服就是扩展。开服合服是游戏的特性,开发阶段运维及早介入,共同讨论解决游戏服务端框架扩展性问题对后期运营会有很大帮助,否则很可能只能在下一个游戏里解决了。其炎在设计街机三国服务端框架就吸取了我们前一个游戏的很多惨痛教训而做的修改。

InfoQ:您在上次的分享中提到曾经尝试过 SSD Cache+SATA 盘的方案,但是因为写穿透的压力还是太大,所以后来换成了纯 SSD 的方案。能否用数据(比如写入的 IOPS、速度等)描述一下当时你们遇到的压力,以及当前方案的运行状态?

许治坤:具体数据现在有点忘了,游戏活动高峰写入 IOPS 大概有 3000-4000。Flashcache 技术对大量读的操作有很大作用,对大量写只能是缓冲一下,因为最终还是要写到后面的硬盘,我们当时 slave 用的是 SSD + SAS15k*6(Raid 10) ,还是跟不上,马上就放弃用独立 SSD。用独立 SSD 还经常出现 slave 滞后的问题,因为 MySQL 5.6 以前的 slave 不支持多线程写,记得当时的 MySQL 5.6 slave 多线程写还有内存泄漏的问题,给 MySQL 提交了 bug,前几个月刚解决。

InfoQ:有没有考虑过将 MySQL 换成 NoSQL 方案?

许治坤:没有,游戏上线后开发压力大的不可想象,因为每周都要出一个版本。关于上面 mysql 写压力大的问题,我们通过 splunk 采集回放 binlog 统计 SQL,发现游戏的一个刷战魂操作在每天 SQL 语句写操作中占了 50% 多,后来开发加了一个一键刷战魂的功能,一下子就降到 30%。所以找最简单的解决方案,能解决问题就行。

InfoQ:你们现在好像是 OpenNebula 私有云、腾讯云、AWS 都在用,是不是平时主要跑在自己的云上,量大的时候往腾讯云上开服,海外用户则使用 AWS?

许治坤:某些云平台厂商有一阶段老升级内核,更过分的是还把内核模块禁用掉,害的我们的 glusterfs 跑不起来。

InfoQ:您这套私有云环境自身的研发、升级过程是怎样做的?万一平台自己升级遇到故障了怎么办?

许治坤:如果没有严重安全问题、没有特别性能提升或特需功能,为什么要升级?运维最重要的是稳定。

InfoQ:还有什么其他的技术话题可以分享?

许治坤:我们正在测试 docker,后续游戏产品会转到 docker 上来。

ArchSummit 全球架构师峰会即将于 7 月 18-19 日在深圳举行,此次会议重点解析九个当前最受关注的领域,包括:SNS、移动互联网、金融、大数据、智能硬件、游戏、云计算、自动化运维、电商等专题。目前正在火热报名中,感兴趣的读者可以访问网站主页了解更多信息。


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-07-04 02:302734

评论

发布
暂无评论
发现更多内容

大厂面试难?对标大厂“Java系统性能优化实战”二面阿里轻松搞定

Java你猿哥

面试 性能优化 SSM框架 Java性能优化

微服务 Spring Boot 整合Redis分布式锁 实现优惠卷秒杀 一人一单

Bug终结者

redis 底层原理 三周年连更

搭建一站式OpenHarmony设备开发Windows开发环境。

坚果

OpenHarmony 三周年连更

震撼!阿里架构师全新产出Java面试突击宝典。Github标星疯涨!

Java你猿哥

spring Spring Boot JVM mybatis java面试

行业分析| 新的学习方式——在线自习室

anyRTC开发者

音视频 在线教育 视频直播 直播连麦 在线自习室

从原理聊JVM(一):染色标记和垃圾回收算法

小小怪下士

Java 程序员 后端 JVM

MySQL的varchar字段最大长度真的是65535吗?

Java你猿哥

MySQL 后端 SSM框架 varchar

一次「找回」TraceId的问题分析与过程思考

Java 中间件 raceId

BSN-DDC基础网络详解(九):跨链机制

BSN研习社

解决90%的面试!GitHub新兴“java面试手册 2023” 一网打尽BAT大厂

Java你猿哥

Java MySQL Spring Boot JVM MySQL面试

进击的 Java !

OpenAnolis小助手

Java 开源 云原生 GOTC 龙蜥技术

【4.14-4.21】写作社区优秀技术博文一览

InfoQ写作社区官方

热门活动 优质创作周报

大数据Hadoop之——HDFS小文件问题与处理实战操作

Openlab_cosmoplat

hdfs 开源社区 大数据Hadoop

深度学习基础入门篇[六(1)]:模型调优:注意力机制[多头注意力、自注意力],正则化【L1、L2,Dropout,Drop Connect】等

汀丶人工智能

人工智能 机器学习 深度学习

Spring Boot过滤器实现项目内接口过滤

Java你猿哥

Java Spring Boot SSM框架

css实现瀑布流效果

格斗家不爱在外太空沉思

CSS 三周年连更

中移链合约常用开发介绍(三)工程化开发智能合约

BSN研习社

海通证券与易观千帆达成合作,构建优质客户生态圈

易观分析

金融 证券 经济

第二届中国国际软件发展大会|华为:构筑坚实软件根基,赋能数字经济高质量发展

极客天地

DataEase 对接明道云展示表格应用数据

搞大屏的小北

数据可视化 明道云 对接api 展示明道云

薪资结构重铸: Zebec将业务范围扩大到Web2薪资管理领域

鳄鱼视界

某程序员:被裁了要求公司足额补缴全部公积金,一次补二十多万!

Java你猿哥

Java 程序员 SSM框架

和 if else说再见,SpringBoot 这样做参数校验才足够优雅!

Java你猿哥

Java spring Spring Boot ssm if-else

右键助手:MouseBoost PRO mac激活版

真大的脸盆

Mac Mac 软件 鼠标增强工具 鼠标辅助软件

从原理聊JVM(一):染色标记和垃圾回收算法

京东科技开发者

Java JVM 三色标记 垃圾回收器 企业号 4 月 PK 榜

破防了!阿里用17个真实企业级项目阐述Java系统分析与架构设计

Java你猿哥

微服务架构 架构设计 Java系统性能 Redis开发与运维 MySQl部署

数智融合,生态链接丨 亚信科技“信伙伴”交流会(成都站)成功举办

亚信AntDB数据库

AntDB AntDB数据库 企业号 4 月 PK 榜

等级保护5个级别详细说明-行云管家

行云管家

网络安全 等保 等级保护

Spring Boot如何使用Undertow容器?超级详细,建议收藏

bug菌

Spring Boot 三周年连更 Undertow

校企共建|阿里云与重庆大学人才培养交流会顺利举行

云布道师

阿里云

页游架构设计与云平台运行_数据库_景琦_InfoQ精选文章