タグ

ブックマーク / labs.gree.jp (13)

  • スマホゲームの API サーバにおける EKS の運用事例 | GREE Engineering

    *1 デフォルトでは Pod に割り当て可能なセカンダリ IP アドレスを ENI 1個分(その ENI に割り当てできる最大数)確保する設定ですが、実際には DaemonSet などがありすぐに ENI 1個分の空きという条件は満たさなくなるので、ワーカーノード起動時に ENI 2個分(「そのインスタンスタイプが ENI ごとに割り当てできる IP アドレス数」の2倍)が確保されるということになります。ドキュメントとしては次のリンクをご参照ください。 参考: https://docs.aws.amazon.com/ja_jp/eks/latest/userguide/cni-env-vars.html 参考: https://github.com/aws/amazon-vpc-cni-k8s/blob/master/docs/cni-proposal.md 例えば、ピーク時に c5.4x

    スマホゲームの API サーバにおける EKS の運用事例 | GREE Engineering
  • グリーを支える通知システム | GREE Engineering

    はじめに このエントリは GREE Advent Calendar 2014 24日目の記事です。 こんにちは、インフラストラクチャ部の高野(@takano32)です。 いつも社内では GitHub:Enterprise の運用、 デプロイの改善、 大規模なインフラを操作するためのツール作成、 レガシーなサーバのセキュリティ対策、 コミュニケーションツール向けシステムの構築・運用、 などの仕事をしています。節操がありませんね。はい。 そのうち、今回は「コミュニケーションツール向けシステムの構築・運用」のうち「グリーを支える通知システム」という題目について書きたいと思います。 グリーとリアルタイムコミュニケーションツール まず、通知システムについてお話する前に、グリーでどのようなリアルタイムコミュニケーションツールが利用されてきたかを簡単に説明したいと思います。 リアルタイムコミュニケーシ

    グリーを支える通知システム | GREE Engineering
  • よくわかるLinux帯域制限 | GREE Engineering

    矢口です。 みなさんはLinuxのtcという機能をご存知でしょうか。送信するパケットの帯域制御を行うことができる大変強力な機能で、グリーでもいくつかの用途で使用されています。 具体的な事例の一つはRedisです。Redisではreplicationを新規に開始する際やfailoverが発生しmasterが切り替わった際(特に2.6系)にストアされている全データが転送されます。しかし帯域制限をかける機能がないため、ネットワーク帯域を圧迫してしまう危険性があります。また通常のクライアントとの通信でも大量のクエリにより予想以上の帯域を使用してしまう可能性があります。このような場合にtcを用いることでRedisの使用する帯域をコントロールできます。 このように有用なtcですが残念なことに日語/英語ともにわかりやすい解説や詳細な情報は多くありません。 私も社内において使われていたtcの設定に問題が

    よくわかるLinux帯域制限 | GREE Engineering
  • グリーのインフラに Chef を導入した話 | GREE Engineering

    類似のソフトウェアとして、Puppet や Ansible といったものもあります。こういったインフラ自動化まわりのソフトウェアについてはペパボの宮下さんの インフラ系技術の流れ が参考になります。 Chef in グリー さて、グリーでのChefまわりの構成をご紹介します。下図が全体の構成です。 開発環境 開発は各個人のマシン上で仮想マシンを立ち上げて行なっています。クックブックの開発では、クックブックを開発する人が serverspec でテストを書くようにしていて、構築後のサーバが期待通り動くことをテストしています。一つのクックブックでも設定値などの条件によって動作が変わってくるため、test-kitchen を用いて複数の条件(ランリストやノードのアトリビュート(以下、「アトリビュート」)などの組み合わせ)でテストを行っています。 また、一部仮想マシンを使う必要がないテスト(att

    グリーのインフラに Chef を導入した話 | GREE Engineering
  • git による分散作業パターン | GREE Engineering

    分散バージョン管理を華麗に扱いたい堀口です。 GREE Advent calendar 2013 の 14 日目として参加させていただきます。 お二人に続き Haskell の話をしようかと思ったのですが、急遽無難な開発の話に変更しました :o JavaC++ には OOP の概念が必要であったように、分散作業の認識が薄いまま git や Mercurial を使うことは長期的に不幸をもたらします。 とあるプロジェクトにて、その一部を副産物のミドルウェアとして抽出すべく、アプリケーションと分離したい 不具合があったので原因を探りたいが、依存関係が複雑すぎるのでコードを読む量を減らしたい テストやレビュー、提案、リファクタの運用を強化したい よそのプロジェクトに迷惑を掛けないように、そこのツールを改良して使いたい。 いままで何気なく「こんなもんだろう」と思って手間をかけていませんでした

    git による分散作業パターン | GREE Engineering
  • Git で日々の共同作業やリリース作業をサポートする git-daily を作りました | GREE Engineering

    こんにちは。インフラの sotarok です。 先日から Git 関連の話をしている通りですが、社内で Git を使い始めています。 今日は、Git を使った日々の開発〜リリースまでのフローや、そうしたものの運用と、それをサポートするために作ったツール git-daily の紹介をしたいと思います。 ソフトウェア開発とウェブ開発の違い いやウェブ開発も広義のソフトウェア開発なのですが、ここでいうソフトウェア開発とは、クライアントアプリケーションやライブラリのようなものを指すと思ってください。 実際、ウェブ開発をしている方は感じていることだとは思いますが、両者の開発フローはかなり異なるものです。もちろん社風や開発の方針等によって色々あるとは思いますが、主に次のような特徴が挙げられると思います: ソフトウェア開発 アプリケーションはクライアントで動作する リリース間隔は比較的長く、次のバージョ

    Git で日々の共同作業やリリース作業をサポートする git-daily を作りました | GREE Engineering
  • 多人数開発で Git を使う場合の環境構築 | GREE Engineering

    こんにちは、インフラやってる sotarok です。最近、社内でも「sotarok は そーたろっくと読む」という誤解が広がっていましたので改めて自己紹介しますと、sotarok と書いて「そーたろー」または「そーたろー・けー」と読みます。ロックしてないのでよろしくお願いします。 今日は、Git の話です。 GREE ではずっと Subversion を使っているという話を、以前開発環境の話をしたときに少し触れたことがあります。Subversion での運用方法も、GREE では割と面白い運用をしているのでその話もどこかでしたいのですが、まあ、それは今回は置いておきましょう。どこかで聞いてください。 GREE もその昔 CVS から Subversion に移ったのですが、時代は流れるもので、いよいよ Git 化という流れがきています。Subversion と Git の違いを今更あえて挙

    多人数開発で Git を使う場合の環境構築 | GREE Engineering
  • GREE Engineering

    404 お探しのページは見つかりません GREE Engineering トップへ戻る

    GREE Engineering
  • 「スマートフォン版GREE HTML5+JavaScript & Android」講演資料公開いたしました | GREE Engineering

    こんにちは。グリーの田尻です。 先日1月9日(日)東京大学で行われたAndroid Bazaar and Conference 2011 Winterにて、弊社エンジニア@kuが登壇させて頂きました。テーマは「スマートフォン版GREE HTML5+JavaScript & Android」です。 当日の会場は満員で、お越しくださったみなさま、当にありがとうございました! 好評につき日は講演当日の資料を公開いたしましたので、当日参加できなかった方にもぜひご参考にして頂ければと思っております。 Android Bazaar and Conference 2011 Winter

    「スマートフォン版GREE HTML5+JavaScript & Android」講演資料公開いたしました | GREE Engineering
  • Rubyのすゝめ #01 - ベンチマークテストとプロセス管理編 | GREE Engineering

    いつもエンジニアブログをチェックしていただいてありがとうございます。グリー株式会社でエンジニアをしている takano32 です。 読者の方々にはプログラマやエンジニアをしている方々も多いと思いますが、みなさんは何か手に馴染んだ道具を持っていますか? グリーについて言えば「グリーといえば、PHPMySQL」というイメージをお持ちの方も多いと思いますし、実際にシステムの核心部はPHPMySQLによって機能しています。PHPMySQLはグリーに欠かせない道具となっています。 ただ、グリーで働くエンジニアひとりひとりにはやはり個性があり、手に馴染んでいる道具も人それぞれです。 Pythonで社内システム向けのクローラを作成して情報を収集している方、C言語でグリーのシステムに適合するDNSサーバやMySQLプロキシ(g2proxy)を作成している方々などさまざまなエンジニアがグリーでは働いて

    Rubyのすゝめ #01 - ベンチマークテストとプロセス管理編 | GREE Engineering
  • 第23回 InfoTalk 分散ストレージの資料を公開いたしました | GREE Engineers' Blog

    はじめまして。グリーの田尻です。 先日、10月15日に産業技術大学院大学で行われた第23回 InfoTalk 分散ストレージにて、弊社kgwsが登壇させていただきました。 第23回 InfoTalk 分散ストレージ 講演資料を公開して欲しいとのご意見をいただきましたのでグリーエンジニアブログにて公開させていただきますね。 Gree大規模分散ストレージ戦略 ご意見・ご感想は公式ハッシュタグまでお願いいたします。#nanofs グリーの大規模分散ストレージ戦略(nanofs) グリーの大規模分散ストレージ戦略(nanofs) Vol.1 グリーの大規模分散ストレージ戦略(nanofs) Vol.2

    第23回 InfoTalk 分散ストレージの資料を公開いたしました | GREE Engineers' Blog
  • エンジニア長期インターン GREE Studio 2010 5日目 | GREE Engineering

    前回に引き続き、井上が書かせていただきます。 GREE Studio 2010 5日目の講義内容はデータマイニングエンジニア、moritaさんによる「データマイニング」。業務のログ解析において用いられるデータマイニングの内容です。前回はレポート形式でしたが、今回はもう少しエンジニアリングブログに近い形で書こうと思って頑張りました。宜しくお願いします。今回のブログの内容は、 データマイニングの基礎知識 大規模データへの挑戦 になります。後で定義しますが、ここでの「データマイニング」とはデータを取得し、集計する作業も含めてこの言葉を指すことにしています。また、解析者とはデータマイニングを行う人のことを指します。(GREEではデータマイニングエンジニアと呼ばれています。)moritaさんの講義で学んだことを自分なりに膨らましてみました。色々誤りがあると思いますが、そういった部分は(優しく)指摘し

    エンジニア長期インターン GREE Studio 2010 5日目 | GREE Engineering
  • Gree Fast Processor: PHPを3倍(くらい)速く | GREE Engineering

    ごあいさつエントリだけというのもなんなので、引き続きfujimotoです。実質上1つめのような気がするこのエントリでは、PHPが3倍くらい(少なくとも2倍くらいは...)速くなるGree Fast Processorというのを先月作ってみたのでご紹介です。 すぐわかるまとめ Gree Fast Processorというのを使ってみると、シンプルなsymfonyのプロジェクト(xav.ccで試しました)でも2倍弱、結構複雑なアプリケーションだと7倍くらい速くなったりします。いくつかの制約がありますが、パフォーマンスに飢えているかたはお試しください。 こちらはなんかすごい速くなっている感じのグラフ(一番上が速くなった版のRequests per Second、赤が通常版のRequests per Second): これはさすがにbest caseすぎる気がしますが、普通にやっても2倍弱くらいは

    Gree Fast Processor: PHPを3倍(くらい)速く | GREE Engineering
  • 1