タグ

ブックマーク / engineering.dena.com (30)

  • 1ヶ月で負荷テストの基礎から学んで実際にやってみた知見 | BLOG - DeNA Engineering

    はじめに こんにちは。DeSCヘルスケアシステム部でインターンをしている中島です。記事では開発に関わった2つのサービス「ハレトケ」「カラダモ」の負荷テストで得た知見について紹介したいと思います。 負荷テストをこれからやる方や、システムのパフォーマンスチューニングに興味のある方などの参考になると嬉しいです。 負荷テストの目的 まず、負荷テストをどのような目的でやるのかについて抑えておきます。一般的にクラウド環境での負荷テストの目的は以下の5つが挙げられます。(出典:Amazon Web Services負荷試験入門 ――クラウドの性能の引き出し方がわかる Software Design plusシリーズ) 各種ユースケースの応答性能を推測する 高負荷時の性能改善を行う 目的の性能を提供することができるハードウェアをあらかじめ選定する システムがスケール性を持つことを確認する システムのスケ

    1ヶ月で負荷テストの基礎から学んで実際にやってみた知見 | BLOG - DeNA Engineering
  • DeNA 本社移転でネットワーク構築・移行作業を実施しました | BLOG - DeNA Engineering

    はじめに こんにちは、IT 基盤部ネットワークグループの片桐です。 DeNA グループ全体のネットワークの管理、運用等を行っています。 今年8月、DeNAは社拠点を渋谷ヒカリエから、WeWork渋谷スクランブルスクエアに移転しました。 この移転は我々としても、大きなプロジェクトでした。せっかくなので、オフィスネットワークにおける移転の裏側を紹介致します。 DeNAオフィス移転におけるネットワーク WeWorkへの移転であれば、ネットワークもWeWorkの設備を使うのでは、と考えられた読者もおられるのではないかと思います。 最初に移転プロジェクトメンバーと新オフィスのネットワークについて議論しましたが、 渋谷ヒカリエで運用していたネットワークと同じレベルの帯域・ネットワークの安定性・クラウドとの内部通信・ネットワークセキュリティ・ネットワーク運用体制の維持、 これら全てが必須要件でした。

    DeNA 本社移転でネットワーク構築・移行作業を実施しました | BLOG - DeNA Engineering
    alcus
    alcus 2021/11/25
  • 大規模Email配信システムのクラウドジャーニー | BLOG - DeNA Engineering

    こんにちは、AI 基盤部の大谷です。 最近は兼務で MLOps 以外にも様々なシステムを構築しています。 弊社では全社的にオンプレミスからクラウドに、よりマネージドに寄せていこうという大きな指針が定められています。 (参考: フルスイングの記事 ) しかし、古くから運用されているサービスなどでは、未だにオンプレミスで構築されているものも少なくありません。 また、クラウドにホストされている場合でも、マネージドサービスを完全に活用しきれていない場合もあり、EC2 ベースの IaaS な構成はまだまだ多く存在しています。 とあるサービスでも、クラウド化はされているものの、マネージドサービスを活用しきれていないメール配信システムが運用されていました。 一般にメール配信システムは、挙動の違う複数のメールプロバイダにスムーズに配信するために多くのことを気にする必要があり、その分管理コストも高くなりがち

    大規模Email配信システムのクラウドジャーニー | BLOG - DeNA Engineering
  • 七声ニーナを支えるバックエンド技術 | BLOG - DeNA Engineering

    データ統括部AI基盤部の竹村( @stakemura )です。記事では、このたびリリースされた、自分の声をキャラクターの声に変換できるWebサービス VOICE AVATAR 七声ニーナ を支えるバックエンド技術についてお話しします。 サービスはDelight Boardという部署横断型のプロジェクトにて、1000人を超える社員投票により自分の案がまさかの採択となったことがきっかけとなります。幸運にも、百戦錬磨のプロジェクトメンバーに助けられ今日のリリースを迎えましたが、採択当時は人脈も信用貯金も何もない入社一年目の思いつきにすぎず、言い出しっぺである自分の力不足によりタイトなスケジュールでの開発となってしまいました。記事では、その限られた開発期間の中で、自分が何を考えて実装したかを中心にお伝えします。 サービングに求められる要件 七声ニーナの音声変換はブラウザから受け取った入力音声

    七声ニーナを支えるバックエンド技術 | BLOG - DeNA Engineering
  • 若手から見たリモートワーク時代のチームビルディング | BLOG - DeNA Engineering

    2020 年 4 月にコロナの影響による緊急事態宣言が発令されて久しい今日この頃ですが、多くの会社でリモートワークが余儀なくされ働き方が大きく変わりました。 DeNA がリモートワーク可能な体制へと迅速に切り替えていく中で、私自身リモートワークによる業務が9割以上を占めました。私や私の所属するチームだけでなく日中でも働くことに対する考え方が大きく変わるタイミングだったのではないでしょうか。(DeNAでは緊急事態宣言が発令される前には全社的にリモートワークがすでに可能なレベルにまで整備され、とてもスピーディーにリモートワークへと移行できました。制度や勤務体制など様々な整備をしてくださったことにとても感謝しています。) その中で、私たちがチームのコミュニケーションや課題を改善するためにどう工夫したのかをお伝えすることで読んでくださる方のチームのチームビルディングの一助にして欲しいと願っていま

    若手から見たリモートワーク時代のチームビルディング | BLOG - DeNA Engineering
  • Python - クラス理解への道(罠にはまらないために) | BLOG - DeNA Engineering

    システム部CTO室のeveresです。 今年は、とあるインタビュー記事でディスクリプターについて触れてから、remote.py、PyConJP 2020 Onlineと、続けてPythonの属性について話してきました。 締めくくり…と気合を入れたいところですがAdvent Calendarですので、エントリーではあまり踏み込まずさわりだけを紹介します。 読んでみて動作を理解していなかった人やクラス生成のカスタマイズなど踏み込んで知りたい方は、PyConJP 2020 Onlineの資料をたどってみてください。末尾にリンクを記載しておきます。 このエントリーは DeNA Advent Calendar 2020 の5日目のエントリーです。 では、始めましょう。 動作環境など エントリに登場するサンプルのコードは次の環境で動作を確認しています。 macOS: 11.0.1 Python:

    Python - クラス理解への道(罠にはまらないために) | BLOG - DeNA Engineering
  • AWSのセキュリティインシデントを捕捉する | BLOG - DeNA Engineering

    こんにちは、 IT 基盤部第一グループの山です。 今回は AWSセキュリティインシデント通知のエスカレーションの仕組みについて紹介したいと思います。 概要 AWS 上のリソースで不審な動きをしているものが検知された場合、AWS はメールまたはサポートケースによって利用者へ通知を行います。セキュリティグループの設定不備によって EC2 インスタンスに侵入されたり、IAM の credential の漏洩によってリソースに対する操作が不正になされたりした際に送られる Abuse Report がその代表例です。このような不正利用はセキュリティインシデントにつながりうるため、即座に検知し対応する必要があります。 一方、DeNA は数百個の AWS アカウントを管理しているため、これらすべてのアカウントの通知を日々目視で確認することには限界があり、前述の通知を見落としたり初動が遅れたりする可

    AWSのセキュリティインシデントを捕捉する | BLOG - DeNA Engineering
  • 【組合せ最適化はいいぞ】デッキ編成を最適化問題として解く【逆転オセロニア】 | BLOG - DeNA Engineering

    1行で 遷移を工夫した山登り法によって、強いデッキを高速に編成するアルゴリズムを構築しました。 はじめに はじめまして。9月の上旬に2週間、データサイエンティストコースのインターンに参加した長沢です。普段はKaggleや競技プログラミングうつつを抜かしており、企業のインターンに参加したのは今回が初めてです。 この記事では、インターン中に私が取り組んだ内容について書きます。機械学習が流行ってるけど組み合わせ最適化も良いぞということが伝われば良いなと思います。 記事の概要 デッキの良さを示す指標を作り、制約を整理して問題の定式化を行います。解の発見にMIPソルバが有効か確認をした後、山登り法を使って最適化を行い、現行手法と編成デッキの比較を行います。 取り組んだ課題 逆転オセロニア 逆転オセロニア 「逆転オセロニア(以下オセロニア)」というタイトルはどなたも聞いたことがあるのではないでしょ

    【組合せ最適化はいいぞ】デッキ編成を最適化問題として解く【逆転オセロニア】 | BLOG - DeNA Engineering
  • 【承認リードタイムが1/5】Slack ワークフロー承認機能の紹介! | BLOG - DeNA Engineering

    3行で マネージャーが喜ぶ承認システム、 CTO いわく「マジ便利すぎて鼻血出る」 5時間かかっていた承認リードタイムが58分に短縮 コストは月当たり1ドル未満 はじめに はじめまして、 IT 戦略部システム開発グループの長谷川です。入社以来一貫して社内システムの内製開発に携わっています。今では当部署のマネージャーを務める身ですが、基的には開発大好きアプリケーションエンジニアであり、メンバーとああでもないこうでもないと意見交換しながらコーディングに没頭する日々を過ごしています。 社内システムの内製開発? 社内システムは会計、人事、総務、法務…と多領域にわたり、担当者あたりのシステム数が必然的に嵩むため、それぞれの運用効率というものが強く求められます。その意味で、社内の主軸となるシステムは原則 SaaS で賄うべしというのが世の流れです。しかしながら SaaS が提供してくれる機能はあくま

    【承認リードタイムが1/5】Slack ワークフロー承認機能の紹介! | BLOG - DeNA Engineering
  • 強化学習等による『逆転オセロニア』対戦環境バランス設計支援 | BLOG - DeNA Engineering

    こんにちは。 ゲーム事業部ディベロップメント統括部AI推進部の吉村です。 先日オンライン開催されたCEDEC2020にて、システムAIシステム部の甲野と共に「『逆転オセロニア』における,バンディットアルゴリズムおよび強化学習を用いた対戦環境のバランス設計支援」という講演をさせていただきました。 聴講にお越し下さった皆様、ならびに運営の皆様、誠にありがとうございました。 講演では、『逆転オセロニア』における対戦環境のバランス調整を強化学習AIでサポートする取り組みについてお話ししました。 今回のフォローアップ記事では 講演の題材となった取り組みの概要 今回のプロジェクトにおいて重要と感じた"三柱" 講演時にいただいたいくつかのご質問とそれに対する回答 についてご紹介したいと思います。 取り組みの概要 我々は強化学習AIを用いて、『逆転オセロニア』における対戦環境のバランス調整をサポー

    強化学習等による『逆転オセロニア』対戦環境バランス設計支援 | BLOG - DeNA Engineering
  • Cloud Functions をローカル環境で統合テスト可能にした話 | BLOG - DeNA Engineering

    はじめまして。AIシステム部MLエンジニアリンググループ で学生インターンをしている 早坂( @takemioIO ) です。 普段はパケット処理などをやっているのですが、縁あってここでは MLOps の通常業務に携わっております。 私は二ヶ月間インターンとして開発に取り組んでいました。ここではその実装物の一つを紹介します。 この AI システム部 のとあるプロジェクトでは、 Cloud Functions と Cloud Pub/Sub を利用したデータパイプライン を構築しております。 そのプロジェクトは毎日のように変更が取り込まれ、非常に開発が盛んですが一方それゆえに破壊的な変更で足を撃ち抜いてしまいそれによって悩まされることがありました。 さらにはクラウドサービスを利用してるという部分からローカルでの検証環境がありませんでしたので、毎回 GCP に デプロイするしかなく、トライアン

    Cloud Functions をローカル環境で統合テスト可能にした話 | BLOG - DeNA Engineering
  • 実行時間を約90%削減する Ansible パフォーマンスチューニング 基礎 | BLOG - DeNA Engineering

    はじめに IT 基盤部の佐藤です。 社内システムのインフラを担当しています。 前回は、 Ansible で始める Linux 管理 と題しまして、構成管理ツールの Ansible について、基的な特徴と簡単なサンプルを紹介いたしました。 Ansible のパフォーマンスチューニングは、デプロイする対象(ネットワーク機器、仮想化ソフトウェア)によって様々な方法がありますが、今回は次の2つの観点でのパフォーマンスチューニングの方法を簡単にご紹介したいと思います。 タスク並列実行 情報量の削減( Dyanmic Inventory) Dyanmic Inventory とは、構成管理の対象となるサーバを動的に取得する機能です。 詳細は Ansible のマニュアル「 Working with dynamic inventory 」を参照してください。 Ansible の環境情報 パフォーマンス

    実行時間を約90%削減する Ansible パフォーマンスチューニング 基礎 | BLOG - DeNA Engineering
  • 研修生が開催したTech Talk「今後の業務で皆に役立ちそうな技術」ベスト4を紹介します! | BLOG - DeNA Engineering

    2020.07.21 新卒研修振り返りレポート 研修生が開催したTech Talk「今後の業務で皆に役立ちそうな技術」ベスト4を紹介します! by Naoto Ishida Kenichi Ebinuma Takuto Sato Yuto Teruya Yaya Watanabe 20新卒エンジニア研修を終えた渡部椰也です。 この記事では、先日まで行われていたエンジニア研修にて行った Tech Talk と呼ばれる勉強会についてご紹介します! 今後の業務で皆にとって役立ちそうな話題であること 縦横のエンジニア社員とのつながりを作るという目的のもと、各現場のエンジニアに事例をヒアリングしながら資料を作ること Tech Talk では、これらを条件にトークの内容を考え、新卒エンジニア24名がプレゼンを行いました。 テーマ一覧をみてみると、多種多様なテーマが集まっていることが分かると思います。

    研修生が開催したTech Talk「今後の業務で皆に役立ちそうな技術」ベスト4を紹介します! | BLOG - DeNA Engineering
  • 安心・安全・安価な日中間接続~Alibaba Cloud CEN~ | BLOG - DeNA Engineering

    こんにちは、IT基盤部第三グループのジュンヤと申します。DeNAに入社してちょうどこの9月で丸9年になります。 入社当初はネットワークエンジニアとして着任しましたが、それから、金融系・EC系システムのインフラに携わり、現在は社内システムのインフラエンジニアのマネージャをしています。ちなみに、FirstNameを名乗っている理由は、同じ部署に同じ名字のメンバーがいるためであり、様々な事故防止が理由であって、それ以上でも以下でもありません。 社内システムのインフラエンジニアとは? 当たり前ですが、インフラエンジニアと一口に言っても、担当しているシステムによって必要なスキルセットは異なります。その中でも、社内システムのインフラエンジニアというポジションは、雑多な幅広いテクノロジーに触れることができます。 管理しているサーバOSという面ではLinuxはもちろん、WindowsServerOS(いま

    安心・安全・安価な日中間接続~Alibaba Cloud CEN~ | BLOG - DeNA Engineering
  • VPN との終わりなき戦い 〜怒濤の全社テレワーク編〜

    こんにちは、IT 基盤部第三グループのジュンヤと申します。 前回 は、日中国の間の VPN 接続に発生した問題とその解決について紹介しました。あれから約1年が経とうとしていますが、今回も VPN がテーマです。そうです、偶然にもまたも VPN です。 DeNA の テレワーク状況 DeNA は6月19日現在、出社率がなんと5%!という、ほぼ全社テレワーク状態で稼働を続けています。この背景には、ごく短期間で、VPN 接続数が150から2500へと約16倍に急増した、という事実がありこの記事はその戦いの記録を綴ったものになります。(なお、5月の出社率は2%でした) DeNA の VPN 構成 VPN とは Virtual Private Network の名の通り、仮想的な専用線(プライベートネットワーク)を構成する技術です。この VPN を使うことで自宅や外出先であっても安全に社内 LA

    VPN との終わりなき戦い 〜怒濤の全社テレワーク編〜
    alcus
    alcus 2020/06/24
  • WEB+DB PRESS Vol.117 の特集「AWS/GCP コスト削減」を執筆しました | BLOG - DeNA Engineering

    はじめに システムIT 統括部 IT 基盤部 副部長の土屋です。 現在は DeNA のインフラ基盤全体の管理を行うと同時に,ゲーム・エンタメ・動画配信・ヘルスケア・スポーツなど様々なサービスのインフラ運用を担うグループのマネージャを兼任しています。 この度,「 WEB+DB PRESS Vol.117 」の特集 2「AWS/GCP コスト削減」を執筆させて頂きました。発売日は 2020 年 6 月 24 日 (水) です。このブログでは特集の概要と見どころをご紹介します。 特集の概要 特集では,AWSGCP のコストコントロールについて解説します。目次は以下の通りです。 第 1 章 コストコントロールの重要性 第 2 章 オートスケーリングの導入 第 3 章 在庫インスタンスの活用 第 4 章 インスタンスの集約 第 5 章 オブジェクトストレージの最適化 第 6 章 確約

    WEB+DB PRESS Vol.117 の特集「AWS/GCP コスト削減」を執筆しました | BLOG - DeNA Engineering
  • DeNAのマシンラーニングをささえるアノテーションシステム | BLOG - DeNA Engineering

    この記事では、DeNAでのコンピュータービジョン関連の機械学習のためのデータ生成処理方法について説明します。 主に、内製のアノテーションシステム「Nota」の開発とそのシステムと全体のMLワークフローに統合する方法について取り上げます。現在のソリューションに到達するため、私たちが行ったいくつかの決断、および解決しなければならなかった課題について説明します。 はじめまして、アラマ・ジョナタンです。現在DeNAのシステム部で、分析推進部ソリューションエンジニアリンググループとAIシステム部MLエンジニアリンググループを兼務しているメンバーです。小さいチームでデータ関連の課題を解決するためのアプリケーションやツールの開発と運用をしています。 正確なデータを取得する問題 近年、AIには多くの進歩があり、それらの多くはコンピュータビジョンに関連しています。コンピュータは画像や動画にある内容を理解で

    DeNAのマシンラーニングをささえるアノテーションシステム | BLOG - DeNA Engineering
  • ゲーム事業における、効率よくAIを活用し成果につなげるための取り組み | BLOG - DeNA Engineering

    はじめに はじめまして、分析部の喜久里と申します。様々なゲームサービスや関係部署の課題解決に向けた分析を担当しています。 AIに関連した技術がホットなトピックの1つになって久しいですが、既存の手法やツールと比べてフィージビリティが読みにくい部分があり、様々な場所で適用が試行錯誤されているのが現状です。私たちもこれまで何件もAI関連技術の業務適用を試みており、上手く進められたケースもあればそうでないケースもありました。この記事では、AIを効率よく活用しようという試行錯誤の過程で行った取り組みと工夫を紹介します。 なお、記事全体を通して “AI” という表記を使っていますが、主に機械学習(予測タスクとその周辺技術)やデータサイエンス(施策等の効果検証や説明に関係する技術)のことを指しています。 この記事で扱う内容 この記事で紹介する内容を図1にまとめました。 図1 紹介する内容のサマリ 以下の

    ゲーム事業における、効率よくAIを活用し成果につなげるための取り組み | BLOG - DeNA Engineering
  • GCP プロジェクトにおけるコスト監視 | BLOG - DeNA Engineering

    はじめに こんにちは、IT基盤部のヨハンです。 担当の業務内容は、ゲームタイトル及びプラットフォーム、オートモーティブ事業のインフラを運用をメインとしておりますが、兼任で DeNA が持つパブリッククラウドについて横断で管理及び運用する業務も担当しております。 パブリッククラウドには AWS, GCP を含め様々なサービスを利用しており、数でいうと1000以上存在しますが、それらのアカウントの作成/解約フローや、セキュリティなど運用するにあたって、生じる様々な問題や課題を改善していくことで効率よくより良い形で利用者に提供ができて、管理者にとっても大きな負担なく多数のアカウントを管理できることをミッションとしています。 今回は多数のパブリッククラウドを管理する業務の中で、GCP プロジェクトに対しどのような方法でコスト監視を行っているのか、その仕組みと設定について焦点をあて紹介させていただき

    GCP プロジェクトにおけるコスト監視 | BLOG - DeNA Engineering
  • MySQLサーバのMulti Instance化によるコスト最適化方法 | BLOG - DeNA Engineering

    IT 基盤部の石川です。 IT 基盤部ではオンプレ、パブリッククラウド問わず多くのインスタンスを管理していますが、その中で “Multi Instance” と呼んでいる独自のインスタンス管理方法があります。今回は、その Multi Instance とは何か、Multi Instance を使った MySQL サーバのコスト最適化方法を話します。ちなみに、この原稿は re:Invent 2019 へ行く飛行機の中で書いています。 Multi Instance とは Multi Instance とは、1 つのインスタンスに複数の IP アドレスを紐付け、あたかも複数のインスタンスのように振る舞うインスタンスのことを部内ではそう呼んでいます。Multi Instance の起源はオンプレ時代にさかのぼります。オンプレをメインで使用していた頃は、用途ごとに適切なスペックの機材をその都度調達す

    MySQLサーバのMulti Instance化によるコスト最適化方法 | BLOG - DeNA Engineering