Slide 1

Slide 1 text

CONFIDENTIAL ©2021 Synamon Inc. 
 ネットワーク同期システムの置き換えで直面した課題
 2021年12月3日 


Slide 2

Slide 2 text

CONFIDENTIAL ©2021 Synamon Inc. 
 会社紹介
 2 ToB向けのXR(VR/AR)のソリューションを提供している企業になります VR(非現実空間を構成) AR(現実空間に投影)

Slide 3

Slide 3 text

CONFIDENTIAL ©2021 Synamon Inc. 
 会社紹介
 3 VR/AR/MR企画・開発のSynamonと三 井住友海上が「VR事故車損害調査研 修」を共同開発 運営しているプラットフォームのNEUTRANSを 使用して事故車損害調査研修をVR空間で提 供しました。

Slide 4

Slide 4 text

CONFIDENTIAL ©2021 Synamon Inc. 
 会社紹介
 4 現在ではNEUTRANSにこだわらずXR全般 (VR/AR)のソリューションを提供しています。 案件は紹介できませんがVarjoという高性能 VR/AR機器を使った体験会もやっていますの で興味有る方はご来社頂ければ体験できま す。 Synamon、フィンランドの高性能 VR/XRハードウェアVarjoの「Software Partner Program」に参画

Slide 5

Slide 5 text

CONFIDENTIAL ©2021 Synamon Inc. 
 自己紹介
 うぃすきー(@whisky_shusuky) 文系大学 ↓ オンプレインフラエンジニア データセンターに行って結線とかしてた ↓ ブログのプラットフォームの会社(Perl/Rails/Go) 2018年頃VRで遊ぶ動画をYoutubeで見かけてハマる ↓ SYNAMON 2021年1月入社 NEUTRANSがRailsを使っていたため応募した インフラ・バックエンド・フロントエンドとWeb周り全般を対応 5

Slide 6

Slide 6 text

CONFIDENTIAL ©2021 Synamon Inc. 
 ネットワーク機能を置き換えられないか実験
 NEUTRANSではネットワーク同期エンジンとしてPhotoCloudを使用し ている。アバターの手の動作などをクライアント間で同期するために使 用している。 ↓ 入社したら別のエンジンのDiarkisに置き換えられないか実験していた。 6

Slide 7

Slide 7 text

CONFIDENTIAL ©2021 Synamon Inc. 
 ネットワーク機能を置き換えられないか実験
 サーバーの開発言語がGoで社内で Goを書けるのが私だけだったので入 社直後だったけど急遽対応した 7

Slide 8

Slide 8 text

CONFIDENTIAL ©2021 Synamon Inc. 
 - 30人→100人接続人数増加させることができ るとのことでDiarkisの検証を行った - デフォルトでhttpサーバー経由でルーム作成 ができる - 既存のバックエンドとマイクロサービス的 に連携できた - カスタム実装も可能でルーム内の人数を 確認するAPIなどを自前で作成できた - UDPサーバーも自前で実装できる - クライアント間での同期用途でunixtime を返す機能を実装した - k8sでオートスケール設定できる Diarkis Diarkisの使用感
 8 HTTP UDP 既存バックエンド (AWS Fargate) Unityクライ アント

Slide 9

Slide 9 text

CONFIDENTIAL ©2021 Synamon Inc. 
 だが、、、
 要件の問題でk8sを使えなかった 9

Slide 10

Slide 10 text

CONFIDENTIAL ©2021 Synamon Inc. 
 - Unityクライアントからはルームが有るUDP サーバーのpublic ipに接続する - Diarkisの仕様でk8sを使用するとipやportが変 動する - これは通常のオンラインゲーム開発などで家庭 からつなぐのであれば特に問題ない Diarkis k8sで問題が有った業務要件
 10 UDP UDP Unityクライ アント ルーム 家庭

Slide 11

Slide 11 text

CONFIDENTIAL ©2021 Synamon Inc. 
 - 弊社の顧客は大企業が多い - そのため社外への接続にはホワイトリストを設 定しているところが多い - そのため全てのipやportに関するホワイトリスト をかけて欲しいと顧客に依頼することになって しまいマズイという話になった - 一般的なオンラインゲーム開発などのC向けの 製品では問題にならない部分でトラブルが発生 した Diarkis k8sで問題が有った業務要件
 11 UDP UDP Unityクライ アント 企業NW ホワイトリスト ルーム

Slide 12

Slide 12 text

CONFIDENTIAL ©2021 Synamon Inc. 
 - k8sは使わない - スケールアウトする度にEC2インスタン スを増やす形で対応 - UDPサーバーが増加する度にRoute53 にてudp-*.sample.com:8000の形式で UDPサーバーへ接続されるAレコードを 追加する Diarkis 対応策
 12 UDP2 Route53 udp-1.sample.com:8000 A UDP1のIP udp-2.sample.com:8000 A UDP2のIP UDP1

Slide 13

Slide 13 text

CONFIDENTIAL ©2021 Synamon Inc. 
 企業NW - 顧客にはudp-*.sample.com:8000のホ ワイトリストのみ追加で開けるように依頼 する Diarkis 対応策
 13 UDP2 Unityクライ アント ホワイトリスト udp-1.sample.com:8000へのUDPを許可 Route53 udp-1.sample.com:8000 A UDP1のIP udp-2.sample.com:8000 A UDP2のIP UDP1

Slide 14

Slide 14 text

CONFIDENTIAL ©2021 Synamon Inc. 
 まとめ
 - Diarkis自体は自由度高く開発できる - NEUTRANS以外のToC案件があればk8sを使ってオートス ケールするようにも対応できるであろう 14

Slide 15

Slide 15 text

CONFIDENTIAL ©2021 Synamon Inc. 
 採用
 採用募集中です! WantedlyでSYNAMONで検索! 15 Meetyで質問・相談も受け付けてま す!

Slide 16

Slide 16 text

No content