orangeitems’s diary

クラウドではたらくエンジニアの日々の感想です。

「ドラゴンクエストXを支える技術」という本が出たらしいのでご紹介

f:id:orangeitems:20181116072359j:plain

 

ドラゴンクエストXを支える技術

面白そうな本が出ていますのでご紹介。

 

ドラゴンクエストXを支える技術 ── 大規模オンラインRPGの舞台裏 (WEB+DB PRESSプラスシリーズ) 単行本(ソフトカバー) – 2018/11/14

 

私はWii Uでバージョン3までクリアして放置しています。バージョン4が完結したらNintendo Switchで一気にやってみようかなあと思っています。

 

興味をそそられる目次

インフラ周りをやっている私としては、この目次はそそられる。

 

『ドラゴンクエストX』は、ドラゴンクエストシリーズ初のオンラインRPGです。

本書は、ドラゴンクエストXの開発・運営の舞台裏を、現在はプロデューサーとして全体の責任者を務め、以前は技術責任者でもあった著者自らが徹底公開していきます。

著者のこだわりによりプログラミングやドラゴンクエストXの事前知識がなくても読み進められるよう丁寧に解説していますので、技術者やドラゴンクエストXのプレイヤーでなくても、幅広い方々に参考にしていただけます。

第1章 ドラゴンクエストXとは何か ── ドラゴンクエストかオンラインゲームか
第2章 開発・運営体制 ── ドラゴンクエストXを支える人々
第3章 アーキテクチャ ── クロスプラットフォームMMORPGの基本構成
第4章 開発と検証 ── 並走する追加と保守のサイクル
第5章 メモリ管理 ── MMORPGのボトルネック
第6章 ゲームクライアントグラフィックス ── 魅力的な絵を描画する工夫
第7章 ゲームサーバプロセス ── 機能ごとに分離して負荷分散
第8章 キャラクター移動 ── 移動干渉による押し合いへの挑戦
第9章 ゲームDB ── ワールド間の自由移動を実現する一元管理
第10章 ゲーム連動サービス ── ゲーム内とつなげるための工夫と力技
第11章 運営と運用 ── リリースしてからが本番!
第12章 不正行為との闘い ── いたちごっこ覚悟で継続対応

 

多分にKindleで買うより、単行本で買ったほうが良さそうだなという雰囲気なので、今日本屋に行って手に入れて見ようかなと思っています。

ドラクエXの実装というより、どのように運用し6年もの間運用してきたかに重点が置かれています。あの国民的素材を安定運用し続けているわけで、興味津々です。

しかも、Wii(現在は終了)、3DS、Wii Uと来て、PC、PS4、Nintendo Switchとマルチプラットフォームで運用。3DSはクラウドゲームでした。

おそらくは、この本の内容を知りたい人の範囲はそこまで広くないと思うのですが、私のブログを開く人には結構ピッタリではないかなと思い紹介しました。

 

周辺の本もなかなか良さそう

本屋でこちらも確認してみたい。

 

[24時間365日] サーバ/インフラを支える技術 ‾スケーラビリティ、ハイパフォーマンス、省力運用 (WEB+DB PRESS plusシリーズ)2008/8/7

 

もう10年も前の本で、陳腐化しているかと思いきや。

 

1章 サーバ/インフラ構築入門 ……冗長化/負荷分散の基本
1.1 冗長化の基本
1.2 Webサーバを冗長化する ……DNSラウンドロビン
1.3 Webサーバを冗長化する ……IPVSでロードバランサ
1.4 ルータやロードバランサの冗長化
2章 ワンランク上のサーバ/インフラの構築 ……冗長化、負荷分散、高性能の追求
2.1 リバースプロキシの導入 ……Apacheモジュール
2.2 キャッシュサーバの導入 ……Squid、memcached
2.3 MySQLのレプリケーション ……障害から短時間で復旧する
2.4 MySQLのスレーブ+内部ロードバランサの活用例
2.5 高速で軽量なストレージサーバの選択
3章 止まらないインフラを目指すさらなる工夫 ……DNSサーバ、ストレージサーバ、ネットワーク
3.1 DNSサーバの冗長化
3.2 ストレージサーバの冗長化 ……DRBDでミラーリング
3.3 ネットワークの冗長化 ……Bondingドライバ、RSTP
3.4 VLANの導入 ……ネットワークを柔軟にする
4章 性能向上、チューニング ……Linux単一ホスト、Apache、MySQL
4.1 Linux単一ホストの負荷を見極める
4.2 Apacheのチューニング
4.3 MySQLのチューニングのツボ
5章 省力運用 ……安定したサービスへ向けて
5.1 サービスの稼働監視 ……Nagios
5.2 サーバリソースのモニタリング ……Ganglia
5.3 サーバ管理の効率化 ……Puppet
5.4 デーモンの稼働管理 ……daemontools
5.5 ネットワークブートの活用 ……PXE、initramfs
5.6 リモートメンテナンス ……メンテナンス回線、シリアルコンソール、IPMI
5.7 Webサーバのログの扱い ……syslog、syslog-ng、cron、rotatelogs
6章 あのサービスの舞台裏 ……自律的なインフラへ、ダイナミックなシステムへ
6.1 はてなのなかみ
6.2 DSASのなかみ
Appendix
mymemcheck(4.3節)
apache-status(5.2節)
ganglia.patch(5.2節)

 

ソフトウェアはさすがにもっといいものが出ているのですが、項目は充実しているなあという印象です。私がここ10年に経験したものが凝縮している感じ・・。

 

最近思うこと

端的な技術を積み重ねるならWebの情報で十分なのですが、生産性高く構造的に学習するためには、こういった本を読んだりベンダーのイベントに参加したりと、インプットを多次元化する必要性を感じますね・・。

自分の評価は、基本的に他人が決めるものなので、他人に対してユニークな情報をアウトプットし続けないと評価は上がりません。

ということは、ユニークな情報のインプットこそ評価を上げるわけで、ネットの情報以外にも積極的に関与していくべきだよなあと思います。

 

ちなみにすぐ買いました

www.orangeitems.com