SlideShare une entreprise Scribd logo
1  sur  18
Télécharger pour lire hors ligne
VinyStorage

网络游戏数据存储的终极解决方案



                     周迁 @ 葡萄藤


 Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
VinyStorage 的极 高性能


高     •比 Memcached 快上千倍
性     •比 MySQL 快十万倍
能
      •实时数据热备份

      •每服务器支持十万 IOPS

        Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
对 网游来说 ,好的存储层应该 怎样 ?


    • 实时数据访问

    • 安全性( safety )

    • 健壮性

    • 分布式

    • API 易用性
     Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
对 网游来说 ,好的存储层应该 怎样 ?


网页          • 实时数据访问?           差
架构          • 安全性?              好
MYSQL/CDB


            • 健壮性?              差

            • 分布式?              复杂 ( 分库分表)

            • API 易用性?          差
            Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
对 网游来说 ,好的存储层应该 怎样 ?


网页           • 实时数据访问? 以内存为代价
架构           • 安全性?             一般 ( 双机热备 )
REDIS/CMEM

             • 健壮性?             好

             • 分布式?             复杂 ( 需迁移数据 )

             • API 易用性?         一般

             Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
对 网游来说 ,好的存储层应该 怎样 ?


网游     • 实时数据访问?          好

架构     • 安全性?             差
梦幻西游

       • 健壮性?             一般

       • 分布式?             不支持

       • API 易用性?         一般

       Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
对 网游来说 ,好的存储层应该 怎样 ?


viny-    • 实时数据访问?
storge
         • 安全性?

         • 健壮性?

         • 分布式?
         • API 易用性?
         Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
viny-storage

       • key-value
       • 持久化
       • 为游戏定制




          Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
viny-storage

     底层技术
     Scala
     Java NIO.2
     Commons-continuations
     https://github.com/Atry/commons-continuations




          Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
viny-storage

     实时数据访问
     区分冷热数据
     数据以内存为中心辅以持久化的日志
       不是持久化的数据库辅以内存缓存
     与业务逻辑同进程
       90% 以上数据库操作是同进程的内存操作




          Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
viny-storage
       健壮性
       KEY,VALUE 均静态检查
         KEY
         trait Accessor[Value] extends Serializable {
           def read(inputStream: InputStream): Value
           def newInstance: Value
           def write(outputStream: OutputStream, value: Value);
           def key: Array[Byte]
         }
         VALUE
         message Player {
           required string nickname = 1;
           required bool is_male = 2 [default = false];
         }
          Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
viny-storage

     API 易用性
      Accessor
      final case class Player(id: UserId) extends BuilderAccessor[
         Storage.Player, Storage.Player.Builder] {
       override final def key: Array[Byte] = {
         (id.toHexString + ".Player").getBytes
       }
     }




              Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
viny-storage

     API 易用性
     Command
      final case object GetPlayerCommand
        extends Command[Storage.Player.Builder, Storage.Player] {
        def apply(origin: Storage.Player.Builder): Storage.Player = {
          origin.clone.build
        }
      }

      final case class UpdateSleepTimeCommand(sleepTime: Long)
        extends Command[Storage.Player.Builder, Unit] {
        override def apply(origin: Storage.Player.Builder): Unit = {
          origin.setSleepTime(sleepTime)
        }
      }

             Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
viny-storage

      API 易用性
      API
        open,release,add,delete,touch,read,update
        flushAll
         组合操作 (otrr,atur,otur)




          Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
viny-storage

      安全性
      实时写日志 ( 不包含读操作 )
         日志内容为 command, 可根据 command 恢复数
         据
         单独线程,顺序写
      提供日志查看和数据恢复工具




          Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
viny-storage

       分布式
       LocalStorage
       VspServer
       VspClient




          Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
对 网游来说 ,好的存储层应该 怎样 ?


viny-     • 实时数据访问?
storage
          • 安全性?

          • 健壮性?

          • 分布式?

          • API 易用性?

          Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
Thanks!




Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有

Contenu connexe

Tendances

Nginx深度開發與客制化
Nginx深度開發與客制化Nginx深度開發與客制化
Nginx深度開發與客制化Joshua Zhu
 
运维安全 抵抗黑客攻击_云络安全沙龙4月上海站主题分享
运维安全 抵抗黑客攻击_云络安全沙龙4月上海站主题分享运维安全 抵抗黑客攻击_云络安全沙龙4月上海站主题分享
运维安全 抵抗黑客攻击_云络安全沙龙4月上海站主题分享ChinaNetCloud
 
淘宝图片存储与Cdn系统
淘宝图片存储与Cdn系统淘宝图片存储与Cdn系统
淘宝图片存储与Cdn系统Dai Jun
 
.NET Security Application/Web Development - Part III
.NET Security Application/Web Development - Part III.NET Security Application/Web Development - Part III
.NET Security Application/Web Development - Part IIIChen-Tien Tsai
 
Artifacts management with CI and CD
Artifacts management with CI and CDArtifacts management with CI and CD
Artifacts management with CI and CDChen-Tien Tsai
 
Nodejs api server_implement
Nodejs api server_implementNodejs api server_implement
Nodejs api server_implementChi-wen Sun
 
阿里云技术实践
阿里云技术实践阿里云技术实践
阿里云技术实践drewz lin
 
.NET Security Application/Web Development - Part II
.NET Security Application/Web Development - Part II.NET Security Application/Web Development - Part II
.NET Security Application/Web Development - Part IIChen-Tien Tsai
 
網站系統安全及資料保護設計認知
網站系統安全及資料保護設計認知網站系統安全及資料保護設計認知
網站系統安全及資料保護設計認知Justin Lin
 
閱讀文章分享@若渴 2016.1.24
閱讀文章分享@若渴 2016.1.24閱讀文章分享@若渴 2016.1.24
閱讀文章分享@若渴 2016.1.24Aj MaChInE
 
美团技术沙龙04 美团下一代分布式存储系统
美团技术沙龙04   美团下一代分布式存储系统美团技术沙龙04   美团下一代分布式存储系统
美团技术沙龙04 美团下一代分布式存储系统美团点评技术团队
 
[SITCON2015] 自己的異質多核心平台自己幹
[SITCON2015] 自己的異質多核心平台自己幹[SITCON2015] 自己的異質多核心平台自己幹
[SITCON2015] 自己的異質多核心平台自己幹Aj MaChInE
 
美团点评技术沙龙14美团云-Docker平台
美团点评技术沙龙14美团云-Docker平台美团点评技术沙龙14美团云-Docker平台
美团点评技术沙龙14美团云-Docker平台美团点评技术团队
 
Web storage&web socket&canvas
Web storage&web socket&canvasWeb storage&web socket&canvas
Web storage&web socket&canvasmolice
 
基礎網頁程式攻擊檢驗
基礎網頁程式攻擊檢驗基礎網頁程式攻擊檢驗
基礎網頁程式攻擊檢驗Taien Wang
 
[MOSUT20150131] Linux Runs on SoCKit Board with the GPGPU
[MOSUT20150131] Linux Runs on SoCKit Board with the GPGPU[MOSUT20150131] Linux Runs on SoCKit Board with the GPGPU
[MOSUT20150131] Linux Runs on SoCKit Board with the GPGPUAj MaChInE
 
網站系統安全及資料保護設計認知 2019
網站系統安全及資料保護設計認知 2019網站系統安全及資料保護設計認知 2019
網站系統安全及資料保護設計認知 2019Justin Lin
 
SSD在淘宝的应用实践
SSD在淘宝的应用实践SSD在淘宝的应用实践
SSD在淘宝的应用实践Feng Yu
 
Android Taipei 2013 August - Android Apps Security
Android Taipei 2013 August - Android Apps SecurityAndroid Taipei 2013 August - Android Apps Security
Android Taipei 2013 August - Android Apps SecurityTaien Wang
 
Ceph中国社区9.19 Some Ceph Story-朱荣泽03
Ceph中国社区9.19 Some Ceph Story-朱荣泽03Ceph中国社区9.19 Some Ceph Story-朱荣泽03
Ceph中国社区9.19 Some Ceph Story-朱荣泽03Hang Geng
 

Tendances (20)

Nginx深度開發與客制化
Nginx深度開發與客制化Nginx深度開發與客制化
Nginx深度開發與客制化
 
运维安全 抵抗黑客攻击_云络安全沙龙4月上海站主题分享
运维安全 抵抗黑客攻击_云络安全沙龙4月上海站主题分享运维安全 抵抗黑客攻击_云络安全沙龙4月上海站主题分享
运维安全 抵抗黑客攻击_云络安全沙龙4月上海站主题分享
 
淘宝图片存储与Cdn系统
淘宝图片存储与Cdn系统淘宝图片存储与Cdn系统
淘宝图片存储与Cdn系统
 
.NET Security Application/Web Development - Part III
.NET Security Application/Web Development - Part III.NET Security Application/Web Development - Part III
.NET Security Application/Web Development - Part III
 
Artifacts management with CI and CD
Artifacts management with CI and CDArtifacts management with CI and CD
Artifacts management with CI and CD
 
Nodejs api server_implement
Nodejs api server_implementNodejs api server_implement
Nodejs api server_implement
 
阿里云技术实践
阿里云技术实践阿里云技术实践
阿里云技术实践
 
.NET Security Application/Web Development - Part II
.NET Security Application/Web Development - Part II.NET Security Application/Web Development - Part II
.NET Security Application/Web Development - Part II
 
網站系統安全及資料保護設計認知
網站系統安全及資料保護設計認知網站系統安全及資料保護設計認知
網站系統安全及資料保護設計認知
 
閱讀文章分享@若渴 2016.1.24
閱讀文章分享@若渴 2016.1.24閱讀文章分享@若渴 2016.1.24
閱讀文章分享@若渴 2016.1.24
 
美团技术沙龙04 美团下一代分布式存储系统
美团技术沙龙04   美团下一代分布式存储系统美团技术沙龙04   美团下一代分布式存储系统
美团技术沙龙04 美团下一代分布式存储系统
 
[SITCON2015] 自己的異質多核心平台自己幹
[SITCON2015] 自己的異質多核心平台自己幹[SITCON2015] 自己的異質多核心平台自己幹
[SITCON2015] 自己的異質多核心平台自己幹
 
美团点评技术沙龙14美团云-Docker平台
美团点评技术沙龙14美团云-Docker平台美团点评技术沙龙14美团云-Docker平台
美团点评技术沙龙14美团云-Docker平台
 
Web storage&web socket&canvas
Web storage&web socket&canvasWeb storage&web socket&canvas
Web storage&web socket&canvas
 
基礎網頁程式攻擊檢驗
基礎網頁程式攻擊檢驗基礎網頁程式攻擊檢驗
基礎網頁程式攻擊檢驗
 
[MOSUT20150131] Linux Runs on SoCKit Board with the GPGPU
[MOSUT20150131] Linux Runs on SoCKit Board with the GPGPU[MOSUT20150131] Linux Runs on SoCKit Board with the GPGPU
[MOSUT20150131] Linux Runs on SoCKit Board with the GPGPU
 
網站系統安全及資料保護設計認知 2019
網站系統安全及資料保護設計認知 2019網站系統安全及資料保護設計認知 2019
網站系統安全及資料保護設計認知 2019
 
SSD在淘宝的应用实践
SSD在淘宝的应用实践SSD在淘宝的应用实践
SSD在淘宝的应用实践
 
Android Taipei 2013 August - Android Apps Security
Android Taipei 2013 August - Android Apps SecurityAndroid Taipei 2013 August - Android Apps Security
Android Taipei 2013 August - Android Apps Security
 
Ceph中国社区9.19 Some Ceph Story-朱荣泽03
Ceph中国社区9.19 Some Ceph Story-朱荣泽03Ceph中国社区9.19 Some Ceph Story-朱荣泽03
Ceph中国社区9.19 Some Ceph Story-朱荣泽03
 

Similaire à Viny storage—网络游戏数据存储的终极解决方案

Divein ceph objectstorage-cephchinacommunity-meetup
Divein ceph objectstorage-cephchinacommunity-meetupDivein ceph objectstorage-cephchinacommunity-meetup
Divein ceph objectstorage-cephchinacommunity-meetupJiaying Ren
 
3.android 应用程序通用自动脱壳方法研究
3.android 应用程序通用自动脱壳方法研究3.android 应用程序通用自动脱壳方法研究
3.android 应用程序通用自动脱壳方法研究Hsiao Tim
 
深入浅出 V cloud director
深入浅出 V cloud director深入浅出 V cloud director
深入浅出 V cloud directorITband
 
七牛云存储详解
七牛云存储详解七牛云存储详解
七牛云存储详解niuer7
 
美丽说的架构发展与变迁 New
美丽说的架构发展与变迁 New美丽说的架构发展与变迁 New
美丽说的架构发展与变迁 New翀 刘
 
稳定、高效、低碳 -淘宝软件基础设施构建实践
稳定、高效、低碳  -淘宝软件基础设施构建实践稳定、高效、低碳  -淘宝软件基础设施构建实践
稳定、高效、低碳 -淘宝软件基础设施构建实践Wensong Zhang
 
阿里巴巴运维自动化的探索与规划
阿里巴巴运维自动化的探索与规划阿里巴巴运维自动化的探索与规划
阿里巴巴运维自动化的探索与规划mysqlops
 
阿里巴巴 肖劲青 阿里巴巴运维自动化的探索与规划
阿里巴巴 肖劲青 阿里巴巴运维自动化的探索与规划阿里巴巴 肖劲青 阿里巴巴运维自动化的探索与规划
阿里巴巴 肖劲青 阿里巴巴运维自动化的探索与规划colderboy17
 
Q con成都主题演讲【弹性计算】by马介悦
Q con成都主题演讲【弹性计算】by马介悦Q con成都主题演讲【弹性计算】by马介悦
Q con成都主题演讲【弹性计算】by马介悦drewz lin
 
Pegasus KV Storage, Let the Users focus on their work (2018/07)
Pegasus KV Storage, Let the Users focus on their work (2018/07)Pegasus KV Storage, Let the Users focus on their work (2018/07)
Pegasus KV Storage, Let the Users focus on their work (2018/07)涛 吴
 
淘宝软件基础设施构建实践
淘宝软件基础设施构建实践淘宝软件基础设施构建实践
淘宝软件基础设施构建实践Wensong Zhang
 
淘宝软件基础设施构建实践
淘宝软件基础设施构建实践淘宝软件基础设施构建实践
淘宝软件基础设施构建实践drewz lin
 
淘宝软件基础设施构建实践
淘宝软件基础设施构建实践淘宝软件基础设施构建实践
淘宝软件基础设施构建实践lovingprince58
 
Internet System Security Overview
Internet System Security OverviewInternet System Security Overview
Internet System Security OverviewChinaNetCloud
 
Oracle 全方位云解决方案概要
Oracle 全方位云解决方案概要Oracle 全方位云解决方案概要
Oracle 全方位云解决方案概要Ethan M. Liu
 
易思捷云操作系统概述
易思捷云操作系统概述易思捷云操作系统概述
易思捷云操作系统概述炳富 杨
 
IDC大会:新浪SAE架构与设计
IDC大会:新浪SAE架构与设计IDC大会:新浪SAE架构与设计
IDC大会:新浪SAE架构与设计Xi Zeng
 
轻量级Flash服务器开发框架(刘恒)
轻量级Flash服务器开发框架(刘恒)轻量级Flash服务器开发框架(刘恒)
轻量级Flash服务器开发框架(刘恒)FLASH开发者交流会
 

Similaire à Viny storage—网络游戏数据存储的终极解决方案 (20)

Divein ceph objectstorage-cephchinacommunity-meetup
Divein ceph objectstorage-cephchinacommunity-meetupDivein ceph objectstorage-cephchinacommunity-meetup
Divein ceph objectstorage-cephchinacommunity-meetup
 
3.android 应用程序通用自动脱壳方法研究
3.android 应用程序通用自动脱壳方法研究3.android 应用程序通用自动脱壳方法研究
3.android 应用程序通用自动脱壳方法研究
 
深入浅出 V cloud director
深入浅出 V cloud director深入浅出 V cloud director
深入浅出 V cloud director
 
七牛云存储详解
七牛云存储详解七牛云存储详解
七牛云存储详解
 
美丽说的架构发展与变迁 New
美丽说的架构发展与变迁 New美丽说的架构发展与变迁 New
美丽说的架构发展与变迁 New
 
稳定、高效、低碳 -淘宝软件基础设施构建实践
稳定、高效、低碳  -淘宝软件基础设施构建实践稳定、高效、低碳  -淘宝软件基础设施构建实践
稳定、高效、低碳 -淘宝软件基础设施构建实践
 
阿里巴巴运维自动化的探索与规划
阿里巴巴运维自动化的探索与规划阿里巴巴运维自动化的探索与规划
阿里巴巴运维自动化的探索与规划
 
阿里巴巴 肖劲青 阿里巴巴运维自动化的探索与规划
阿里巴巴 肖劲青 阿里巴巴运维自动化的探索与规划阿里巴巴 肖劲青 阿里巴巴运维自动化的探索与规划
阿里巴巴 肖劲青 阿里巴巴运维自动化的探索与规划
 
Q con成都主题演讲【弹性计算】by马介悦
Q con成都主题演讲【弹性计算】by马介悦Q con成都主题演讲【弹性计算】by马介悦
Q con成都主题演讲【弹性计算】by马介悦
 
Pegasus KV Storage, Let the Users focus on their work (2018/07)
Pegasus KV Storage, Let the Users focus on their work (2018/07)Pegasus KV Storage, Let the Users focus on their work (2018/07)
Pegasus KV Storage, Let the Users focus on their work (2018/07)
 
淘宝软件基础设施构建实践
淘宝软件基础设施构建实践淘宝软件基础设施构建实践
淘宝软件基础设施构建实践
 
Taobao base
Taobao baseTaobao base
Taobao base
 
淘宝软件基础设施构建实践
淘宝软件基础设施构建实践淘宝软件基础设施构建实践
淘宝软件基础设施构建实践
 
淘宝软件基础设施构建实践
淘宝软件基础设施构建实践淘宝软件基础设施构建实践
淘宝软件基础设施构建实践
 
Internet System Security Overview
Internet System Security OverviewInternet System Security Overview
Internet System Security Overview
 
Oracle 全方位云解决方案概要
Oracle 全方位云解决方案概要Oracle 全方位云解决方案概要
Oracle 全方位云解决方案概要
 
易思捷云操作系统概述
易思捷云操作系统概述易思捷云操作系统概述
易思捷云操作系统概述
 
IDC大会:新浪SAE架构与设计
IDC大会:新浪SAE架构与设计IDC大会:新浪SAE架构与设计
IDC大会:新浪SAE架构与设计
 
轻量级Flash服务器开发框架(刘恒)
轻量级Flash服务器开发框架(刘恒)轻量级Flash服务器开发框架(刘恒)
轻量级Flash服务器开发框架(刘恒)
 
Dell
DellDell
Dell
 

Plus de Tencent

Flask With Server-Sent Event
Flask With Server-Sent EventFlask With Server-Sent Event
Flask With Server-Sent EventTencent
 
Hxhsm——取代mvc的状态机框架
Hxhsm——取代mvc的状态机框架Hxhsm——取代mvc的状态机框架
Hxhsm——取代mvc的状态机框架Tencent
 
Web开发人员之路
Web开发人员之路Web开发人员之路
Web开发人员之路Tencent
 
Qt 基础
Qt 基础Qt 基础
Qt 基础Tencent
 
Twitter bootstrap2.0 taste
Twitter bootstrap2.0 tasteTwitter bootstrap2.0 taste
Twitter bootstrap2.0 tasteTencent
 
Introduction to hubot
Introduction to hubotIntroduction to hubot
Introduction to hubotTencent
 

Plus de Tencent (7)

Flask With Server-Sent Event
Flask With Server-Sent EventFlask With Server-Sent Event
Flask With Server-Sent Event
 
Hxhsm——取代mvc的状态机框架
Hxhsm——取代mvc的状态机框架Hxhsm——取代mvc的状态机框架
Hxhsm——取代mvc的状态机框架
 
Web开发人员之路
Web开发人员之路Web开发人员之路
Web开发人员之路
 
Qt 基础
Qt 基础Qt 基础
Qt 基础
 
Twitter bootstrap2.0 taste
Twitter bootstrap2.0 tasteTwitter bootstrap2.0 taste
Twitter bootstrap2.0 taste
 
Meteor
MeteorMeteor
Meteor
 
Introduction to hubot
Introduction to hubotIntroduction to hubot
Introduction to hubot
 

Viny storage—网络游戏数据存储的终极解决方案

  • 1. VinyStorage 网络游戏数据存储的终极解决方案 周迁 @ 葡萄藤 Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
  • 2. VinyStorage 的极 高性能 高 •比 Memcached 快上千倍 性 •比 MySQL 快十万倍 能 •实时数据热备份 •每服务器支持十万 IOPS Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
  • 3. 对 网游来说 ,好的存储层应该 怎样 ? • 实时数据访问 • 安全性( safety ) • 健壮性 • 分布式 • API 易用性 Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
  • 4. 对 网游来说 ,好的存储层应该 怎样 ? 网页 • 实时数据访问? 差 架构 • 安全性? 好 MYSQL/CDB • 健壮性? 差 • 分布式? 复杂 ( 分库分表) • API 易用性? 差 Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
  • 5. 对 网游来说 ,好的存储层应该 怎样 ? 网页 • 实时数据访问? 以内存为代价 架构 • 安全性? 一般 ( 双机热备 ) REDIS/CMEM • 健壮性? 好 • 分布式? 复杂 ( 需迁移数据 ) • API 易用性? 一般 Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
  • 6. 对 网游来说 ,好的存储层应该 怎样 ? 网游 • 实时数据访问? 好 架构 • 安全性? 差 梦幻西游 • 健壮性? 一般 • 分布式? 不支持 • API 易用性? 一般 Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
  • 7. 对 网游来说 ,好的存储层应该 怎样 ? viny- • 实时数据访问? storge • 安全性? • 健壮性? • 分布式? • API 易用性? Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
  • 8. viny-storage • key-value • 持久化 • 为游戏定制 Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
  • 9. viny-storage 底层技术 Scala Java NIO.2 Commons-continuations https://github.com/Atry/commons-continuations Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
  • 10. viny-storage 实时数据访问 区分冷热数据 数据以内存为中心辅以持久化的日志 不是持久化的数据库辅以内存缓存 与业务逻辑同进程 90% 以上数据库操作是同进程的内存操作 Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
  • 11. viny-storage 健壮性 KEY,VALUE 均静态检查 KEY trait Accessor[Value] extends Serializable { def read(inputStream: InputStream): Value def newInstance: Value def write(outputStream: OutputStream, value: Value); def key: Array[Byte] } VALUE message Player { required string nickname = 1; required bool is_male = 2 [default = false]; } Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
  • 12. viny-storage API 易用性  Accessor final case class Player(id: UserId) extends BuilderAccessor[ Storage.Player, Storage.Player.Builder] { override final def key: Array[Byte] = { (id.toHexString + ".Player").getBytes } } Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
  • 13. viny-storage API 易用性 Command final case object GetPlayerCommand extends Command[Storage.Player.Builder, Storage.Player] { def apply(origin: Storage.Player.Builder): Storage.Player = { origin.clone.build } } final case class UpdateSleepTimeCommand(sleepTime: Long) extends Command[Storage.Player.Builder, Unit] { override def apply(origin: Storage.Player.Builder): Unit = { origin.setSleepTime(sleepTime) } } Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
  • 14. viny-storage API 易用性 API open,release,add,delete,touch,read,update flushAll 组合操作 (otrr,atur,otur) Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
  • 15. viny-storage 安全性 实时写日志 ( 不包含读操作 )  日志内容为 command, 可根据 command 恢复数 据  单独线程,顺序写 提供日志查看和数据恢复工具 Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
  • 16. viny-storage 分布式 LocalStorage VspServer VspClient Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
  • 17. 对 网游来说 ,好的存储层应该 怎样 ? viny- • 实时数据访问? storage • 安全性? • 健壮性? • 分布式? • API 易用性? Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有
  • 18. Thanks! Copyright © 2013 深圳市葡萄藤网络科技有限公司 版权所有