COLOPL Tech Blog

コロプラのエンジニアブログです

プレイヤーが分散しやすいマッチング環境におけるマッチング改善の試み

こんにちは。サーバーサイドエンジニアの佐藤です。今回は対戦や協力などで用いられるマッチングにおける工夫を共有します。プレイヤー同士が対戦や協力などを目的に一緒にプレイするゲームでは、同一のゲームにプレイヤー同士を引き合わせるマッチングが行…

再利用可能かつ効率的なデータ取得を持つ条件判定モジュールの開発

こんにちは。サーバーエンジニアの佐藤です。前回、データの遅延一括取得を可能とするLazyMapperについてお話いたしました。 blog.colopl.devこの記事の最後でLazyMapperを利用して再利用可能な条件判定モジュールについて触れさせていただきました。今回は…

「【Go Tech Talk】スケーラビリティのための3社合同LT」を実施しました!

こんにちは。バックエンドエンジニアのRyoです。 2022年11月30日、【Go Tech Talk】スケーラビリティのための3社合同LT というタイトルで「コロプラ」「Diarkis」「ミラティブ」3社合同でのイベントを実施いたしました。 アーカイブは YouTube でご覧いただ…

コロプラの PHP バージョンアップ事情と三種の神器

PHP

こんにちは。 SRE の工藤です。 普段は SRE としての活動の他、技術基盤本部として共通基盤やライブラリの開発、保守を行っていますが、コロプラにおける PHP バージョンアッププロジェクトが始まった時から関わっているということもあり、今でも多くのタイ…

PHPConference 2022 にて登壇させていただきました #phpcon2022

こんにちは。 SRE の工藤です。 9 月末に行われたプログラミング言語 PHP に関するカンファレンス PHP Conference 2022 に参加および登壇させていただきました。 登壇の振り返りや参加してみての感想、登壇内容の補足を行っていきたいと思います。

Git 2.38 で追加されたScalarってなに?

Git

Scalar とは 大規模リポジトリを対象とした、リポジトリ容量最適化・コマンド高速化のための拡張機能の提供とgit configの自動設定を行うツールです。元々 Microsoft によって開発されていました (https://github.com/microsoft/scalar) が、Git 2.38よりメ…

リモートワーク環境における社内コミュニケーションを活性化させてみた

こんにちは。サーバーサイドエンジニアのKevinです。 コロナ禍でリモートワークが導入されて以降、出社時に自然と入ってきた情報や会話が減り、コミュニケーションが所属部署やプロジェクト内で完結することが多くなっていました。 今回はこの「エンジニア間…

DataMapperにおけるデータの遅延一括取得の試み

こんにちは。サーバーエンジニアの佐藤です。前回、N+1問題の解決と処理の分離にまつわる問題点についてこちらの記事で説明させていただきました。blog.colopl.dev今回はその続きとして、問題を解決するデータ取得を遅延させた上で一括で行う機能について解…

COLOPL Tech 勉強会 「開発を支える社内システムの進化」を実施しました!

こんにちは。バックエンドエンジニアのH.Iです。 2022年8月9日、開発を支える社内システムの進化 〜変化する環境への適応〜という題目で社内システムエンジニア向けの発表を行いました。 アーカイブは YouTube でご覧いただけます。 www.youtube.com 勉強会…

DataMapperを利用した場合におけるN+1問題の解決と処理の分離

こんにちは。サーバーエンジニアの佐藤です。今回は、DataMapperを利用するプロジェクトが抱えていた「N+1問題の解決と処理の分離」に関連する問題についてお話させていただきます。対象プロジェクトでは、N+1問題によりパフォーマンスが落ちるのを防ぐため…

PHPConference 2022 登壇・協賛のお知らせ

こんにちは。 SRE の工藤です。 9/24 (土)、 25 (日) に開催される PHPConference 2022 にて "いちユーザーが PHP に新機能を追加するまで - Random Extension 5.x" という内容で登壇させていただくこととなりました。 今回はプロポーザルを行うまでの経緯、…

ISUCON12予選に参加しました

こんにちは。2019年新卒サーバーサイドエンジニアの薮です。 7/23 (土) に開催された ISUCON12 予選 1に同期とチーム「無限にカレーを食べる会」で参加しました! 参加メンバー taro 同じく2019年新卒同期のサーバーサイドエンジニア 今回が ISUCON 初参加 …

Google Cloud の Arm インスタンスで Apple Silicon Mac 用イメージビルドを 30 倍速くしてみた

サーバー基盤グループで SRE として活動している工藤です。つい先日、 Google Cloud 上で念願の Arm インスタンス T2A が利用可能になりました。まだプレビュー扱いで限られたリージョンでしか利用できませんが、既に Kubernetes Engine も動作します。cloud…

TiDB Cloud で実現するマスターデータの最適運用

こんにちは。サーバー基盤グループでサーバーエンジニアをやっている尾山です。 コロプラ社の最新タイトルでは TiDB Cloud という分散型データベースをマスターデータの運用に使っています。TiDB Cloud とは PingCAP 社が提供する OSS、TiDB をベースとした…

COLOPL Tech 勉強会 「ゲームバックエンドを支えるノーメンテナンス運用」を実施しました!

こんにちは。サーバーエンジニアの佐藤です。2022年6月16日、ゲームバックエンドを支えるノーメンテナンス運用という題目でサーバーエンジニア・インフラエンジニア向けの発表を行いました。当日の放送内容は YouTube でご覧いただけます。www.youtube.com …

コロプラのゲーム開発/運用におけるツール/機能の一部を紹介(管理ツール編)

コロプラでは、日々のタイトル運用を円滑に行うため、ゲームアプリケーションを支える多くのツール群を用意しています。 以前「コロプラのゲーム開発/運用におけるツール/機能の一部を紹介」という記事で開発を支援するツール・機能を紹介しました。 前回は…

社内でエンジニアのリモート読書会を始めました

こんにちは。サーバーサイドエンジニアの薮です。2019年に新卒入社し、現在は新規タイトルの開発に携わっています。 今年2月に社内で出社/在宅環境を交えたエンジニアのリモート読書会を立ち上げ、ある程度形が出来上がってきたため、立ち上げた背景、工夫し…

アセットのメタファイルのコミット漏れを防ぐGitフック開発

こんにちは。サーバーサイドエンジニアの佐藤です。前回はDataMapperにおけるメソッドの再実装に関してお話させていただきました。blog.colopl.dev今回は大きく話題を変えまして、ゲームエンジンにより生成されるアセットのメタファイルのコミット漏れをGit…

COLOPL Tech 勉強会 「ゲームバックエンドを支える基盤技術」を実施しました

こんにちは。株式会社コロプラ サーバー基盤グループ SRE チームの工藤です。 2022年4月27日、 ゲームバックエンドを支える基盤技術 という名目でサーバーエンジニア・インフラエンジニア向けの発表を行いました。 当日の放送内容は YouTube でご覧いただけ…

N部グラフに着想を得たデータ取得メソッドの再実装

こんにちは。サーバーサイドエンジニアの佐藤です。普段は長期運用タイトルにおいて、機能開発や開発の効率化を促進するツールやモジュールの開発を行っております。今回は、担当するタイトルで行なった、Where句からキャッシュキーを生成、管理を可能とする…

COLOPL Tech 勉強会 「ゲーム開発におけるリアルタイム通信基盤とKubernetes/Agones」を実施しました!

こんにちは。コロプラのインフラストラクチャ部 の杉浦です。 2022年3月17日に、 ゲーム開発におけるリアルタイム通信基盤とKubernetes/Agones というサーバエンジニア、インフラエンジニア向け勉強会をconnpassで実施させていただきました。 当日のYouTube…

新卒サーバーエンジニアがコロプラで約1年働いて感じたこと

はじめまして、21卒サーバーサイドエンジニアのS.Aです。 コロプラのサーバーサイドエンジニアにはインフラや社内ツールの開発などいくつか役割がありますが、私はサーバーサイドエンジニアの中でもアプリケーションの開発を担当しており、現在は新作ゲーム…

COLOPL Tech 勉強会 「Cloud Spanner への挑戦と今」を実施しました!

こんにちは。コロプラのバックエンドエンジニア部の山田です。 2022年2月16日に、『Cloud Spanner への挑戦と今』というエンジニア向け勉強会をconnpassで実施させていただきました。 当日のYouTube配信はこちらからご視聴いただけます。 www.youtube.com 勉…

長期間の運用でもレスポンスタイムを悪化させないマスターデータ管理方法

はじめに コロプラには長期間運用しているゲームタイトルが複数存在します。 何も対策を行わないと長期運用タイトルではマスターデータの量が多くなり、次第にレスポンスタイムが悪化していきます。 その上コロプラではなるべくノーメンテナンスで運用するポ…

第1回 COLOPL Tech 勉強会 「高負荷/トラフィックなゲームの運用を支えるSRE」を実施しました

はじめまして。サーバー基盤グループの松野といいます。 先日、connpassでエンジニア向けに第1回 COLOPL Tech 勉強会 「高負荷/トラフィックなゲームの運用を支えるSRE」を実施させていただきました。 www.youtube.com 今回の勉強会では次のような議題でお話…

コロプラのゲーム開発/運用におけるツール/機能の一部を紹介

コロプラではジャンルを問わず様々なゲームの開発/運用をしています。 開発を便利にするためにいろいろなツールや機能を開発していますが、複数のタイトルで使われているものでシンプルなツール/機能で汎用的なのではないか、というものをいくつか紹介させて…

コロプラ技術勉強会の紹介

今回はコロプラが技術共有・発信を目的として取り組んでいる、社内および社外に向けての技術勉強会について紹介させていただきます。 COLOPL Tech コミュニティについて これまで外部講演での登壇などが主な情報発信の手段でしたが、2022年よりコロプラのcon…

水平/垂直分割されたRDBMSを便利に検索するためのツールを内製した話

コロプラでは現在新規開発のDBとしてGoogle Cloud Spannerの採用を積極的に行っていますが、それ以前はMySQLを採用し新規サービスを提供してきました。現在も運用中の多くのタイトルでMySQLが利用されています。 MySQLを利用しているサービスは規模によって…

技術ブログはじめました

こんにちは。 光栄にも1エントリ目を書かせていただくことになったコロプラの菅井です。 この度、コロプラの “COLOPL Tech” を立ち上げさせていただきました。 コロプラはスマホ向けゲームを中心とした開発を行なっていますので、ゲームを支える技術や組織に…