タグ

ブックマーク / tech.gunosy.io (12)

  • グノシーのプッシュ通知基盤を紹介します - Gunosy Tech Blog

    こんにちは, プロダクト開発部の今村です. ここ一年ほど, 主にグノシーのプッシュ通知基盤の部分的なリプレイスや機能追加をしていました. この記事ではプッシュ基盤の構成を紹介したいと思います. 概要 FCMのAPIを呼び出す部分 サーバーのスケーリング 送信対象の読み込み 送信の流れ その他の工夫 重複配信の防止 パフォーマンス調整 おわりに 概要 まずはプッシュ通知の種類を整理します. 今回扱うのは, 多数のユーザーに同じ内容を送るような通知です. 重要なニュースが発生したときに送る速報や, キャンペーン情報の通知などが該当します. 対照的に, ユーザーごとに異なる内容を送る通知もあります. 例えば社内で定時プッシュと呼ばれている機能では, ユーザーごとにパーソナライズされた記事を毎日決まった時間に送ります. このような通知はこの記事では (ほぼ) 扱いません. プッシュ通知基盤に求めら

    グノシーのプッシュ通知基盤を紹介します - Gunosy Tech Blog
    Nyoho
    Nyoho 2023/06/30
  • S3のコストを大幅に削減した話 - Gunosy Tech Blog

    広告技術部のUTです。 最近はカービィディスカバリーをゆっくりやってます 概要 過去の失敗 どうやったか 仕組み 結果 まとめ 概要 昨今ではデータドリブンな意思決定を重視する企業がどんどん増えており、データを活用することにより事業成長へのインパクトを出そうとしています。 データを事業へと活用するためには、蓄積されるデータを分析するために保管しておく必要があります。 弊社も創業時からデータを蓄積し事業に活用することに力を入れてきた企業の一つであり、日々大量のログが収集されています。 またAWSアカウントを複数運用していますが、一番データ量の多い広告アカウントのS3にはペタバイトレベルのデータが保管されています。 普段何気なく使っているデータレイクとしてのS3ですが、少量であれば無視できるくらい小さいので、コストを気にせず使っておられる方も多いのではないでしょうか? そのようなS3でも巨大な

    S3のコストを大幅に削減した話 - Gunosy Tech Blog
    Nyoho
    Nyoho 2022/04/13
    “容量制限の5GBまで溜まったらGlacierにCOPYすることでGlacierへのリクエストを最後のコピーの1回だけに抑えることができます。”
  • iTerm2 から kitty に移行した話 〜Hammerspoon で快適ターミナルライフ〜 - Gunosy Tech Blog

    こんにちは、 Gunosy Tech Lab AdsML チームで広告のロジック改善をしている m-hamashita です。昨年 FlexiSpot E6 と ErgoDox EZ を導入してからひどかった肩こりが改善したのでおすすめです。 FlexiSpot は最近 Black Friday で安くなっていたので、購入した人も少なくないのではないでしょうか。 こちらの記事は Gunosy Advent Calendar 2021 の 8 日目の記事です。昨日の記事は 吉岡(@rikusouda) さんの『2021年にSwiftUIを部分利用しつつ新規のiOSアプリを作った 』でした。 記事ではターミナルエミュレータを iTerm2 から kitty に移行し、Hammerspoon で Hotkey 周りをいい感じにした話を紹介します。 はじめに kitty kitty について k

    iTerm2 から kitty に移行した話 〜Hammerspoon で快適ターミナルライフ〜 - Gunosy Tech Blog
    Nyoho
    Nyoho 2021/12/22
    kittyのhints便利そう!
  • 今すぐ始められるOSS活動 - Gunosy Tech Blog

    はじめに Github Help Wantedでissueを選ぶ OSSのコントリビュート方法を確認する 実装 既存コードの動作確認 機能実装 プルリクを出す マージされる 最後に はじめに こんにちは。広告技術部のjohnmanjiroです。普段は広告配信のAPIや管理画面を作っています。 今回は最近自分が始めたOSS活動のやり方について紹介しようと思います。 issueを見つけたその日にプルリクを出し、約1週間後にマージされました。 「OSS活動始めたいけど、別に普段使ってる中でバグを見つけたりもしてないし、貢献したい明確なOSSもない、どうしよう🤔」そんなOSS活動未経験者の参考になれば幸いです。 ちなみに自分自身、活動を始めたばかりのペーペーです。 Github Help Wantedでissueを選ぶ OSS活動を始めるにあたって、まずは貢献するissueを選びましょう。iss

    今すぐ始められるOSS活動 - Gunosy Tech Blog
    Nyoho
    Nyoho 2020/08/13
    「そんな場合におすすめなのが、Github Help Wantedです。このサービスでは、実装されている言語とラベルでGithub上のissueを検索することができます」
  • 突撃!隣のキーボード Gunosy 2019 - Gunosy Tech Blog

    こんにちは. Gunosy Tech Lab 所属のエンジニアの id:tmotegi です.現世で初のアドベントカレンダーなので緊張します. この記事は Gunosy Advent Calendar 2019,6日目の記事です. 昨日の記事は @rikusouda さんによる「【再入門】UICollectionViewとUITableViewのセルを選択したときに見た目を変える方法 - Gunosy Tech Blog」でした. qiita.com はじめに 近年,エンジニアの自作キーボードへの熱は高まり続けています. つい先日もキーボード沼にハマった人達の3回目のゆるふわ交流会である「天下一キーボードわいわい会」が開催されました. この天キーですが告知後すぐに枠が埋まっていたのが印象的です. tenkey.connpass.com 今年のアドベントカレンダーでもキーボード人気は衰えてお

    突撃!隣のキーボード Gunosy 2019 - Gunosy Tech Blog
  • EC2上のPythonバッチをECSのDigdagに置き換えた話 - Gunosy Tech Blog

    広告技術部のUT@mocyutoです。 ついに桜が開花し、やっと春の訪れを感じはじめましたね。 外で気持ちよく飲みたい季節になってきました。 はじめに システム概要 なぜ移行するのか Celeryをやめたい LevelDBをやめたい 移行計画 アーキテクチャ ECS Athena CI/CDフロー Pluginか自前実装か 移行後 よかったこと まとめ はじめに 今回はEC2上のPythonのバッチをECSのDigdagに置き換えた話をします。 システム概要 今回の移行対象は広告配信に関するバッチ処理を行うシステムでした。 役割としては以下のようなものがあります。 広告の配信候補を作成 広告の枠情報を作成 クリックなどのイベントの集計 なぜ移行するのか 大きく分けて以下の2つの理由がありました。 Celeryをやめたい LevelDBをやめたい Celeryをやめたい 今まではバッチにはP

    EC2上のPythonバッチをECSのDigdagに置き換えた話 - Gunosy Tech Blog
    Nyoho
    Nyoho 2019/03/26
  • 新しい技術の導入時に大切にしていること - Gunosy Tech Blog

    こんにちは、koidです。こちらは Gunosy Advent Calendar 2018 、25日目の記事です。昨日の記事は @hoshitocat さんの Swaggerでインタフェースの共有をしつつ社内管理画面を作る でした。 早いもので、Advent Calendarもあっという間に最終回となりました。この記事を持って、今年も無事(?)完走となります。 さて、題です。 今年も弊社では、様々な技術*1や手法にトライし、プロダクションへの導入を行ってきました。 そんな中で、そういった新しい技術を導入していくにあたり、どんなことを大切に考えているのか、先日 IVS CTO Night というイベントでLTをする機会があったので、その際にお話ししたことを書きたいと思います。 技術は目的ではなく、課題解決のための手段である どんな課題を解決したいのかを明確にする 良くない例(課題が明確にな

    新しい技術の導入時に大切にしていること - Gunosy Tech Blog
    Nyoho
    Nyoho 2018/12/26
    “アセット化・横展開を意識する”
  • まだログイン認証で消耗してるの? ~ALBで簡単認証機構~ - Gunosy Tech Blog

    こんにちは!広告技術部のUT@mocyutoです! 最近はスマブラでなんのキャラを使おうか迷っています この記事はGunosy Advent Calender 19日目の記事です。 昨日の記事は@mathetakeのpeer-to-peerはGoogleの夢を見るかでした。 はじめに OIDC ALBの認証機能 一般的な認証機構 ALBを利用した認証 データフローの説明 実際の導入 APIでjwtから認証情報を取得する例 まとめ はじめに みなさんユーザ認証はどうやって作っていますか? フレームワークを使って実装していますか? それともイチから自前で作っていますか? SSOのシステムとかはどうでしょう? OIDCとAWSのALBを使えば簡単にユーザのログイン管理を作ることができます。 (少し煽り気味のタイトルですいません ;) OIDC OpenID Connect と言って、OAuth2

    まだログイン認証で消耗してるの? ~ALBで簡単認証機構~ - Gunosy Tech Blog
    Nyoho
    Nyoho 2018/12/21
  • Elm ファーストインプレッション - Gunosy Tech Blog

    こんにちは、広告技術部のくらさわです! この記事は Gunosy Advent Calendar 2018、16日目の記事です。 昨日の記事は山さんの Gradleモジュール分割とレイヤードアーキテクチャ でした。 はじめに Elm とは ぼくの Elm の始め方 ぼくにとっての Pros / Cons Pros Cons (というかはまった箇所) Pros 環境構築が簡単 The Elm Architecture がシンプル エラーメッセージが丁寧でわかりやすい JavasSriptとの連携もできる Cons (というかはまった箇所) 型が決まらないJSONを扱いずらい 文法に慣れが必要 まとめ はじめに 年末です。 年末なので今年の締め的な記事を書くのがいいのかもと思ったのですが、そんな守りに入るよりも、年末でも、いや年末だからこそ新しいことを始めて新年へのスタートダッシュをキメてや

    Elm ファーストインプレッション - Gunosy Tech Blog
    Nyoho
    Nyoho 2018/12/16
    「自分の感じた長所短所」が言語化されているのが尊い。素晴らしい。
  • AppSyncベースのフルサーバーレスアーキテクチャ【グノスポ連載第四回】 - Gunosy Tech Blog

    はじめに サーバーレスにした動機 AppSyncベースでいくと決めたこと リソースが限られていたこと 新しい技術投資しておきたかった 実際のアーキテクチャ Step Functionsについて サーバーサイドkotlinについて 所感 良かった点 課題 おわりに はじめに グノシー事業部でサーバーサイドの開発を担当している吉澤です。好きなスポーツは釣りです🎣 今回第4回目のグノスポ記事は、サーバーサイドのアーキテクチャについてです。グノスポではサーバーレスアーキテクチャを採用しています。言語はほぼkotlinです。 それぞれ採用した理由や技術要素について説明したいと思います。 その他のグノスポ記事はこちら tech.gunosy.io tech.gunosy.io tech.gunosy.io サーバーレスにした動機 AppSyncベースでいくと決めたこと 第二回で紹介したようにApp

    AppSyncベースのフルサーバーレスアーキテクチャ【グノスポ連載第四回】 - Gunosy Tech Blog
    Nyoho
    Nyoho 2018/11/27
    iOS版ってなかなか出ないですね。
  • グノシースポーツ (グノスポ) とは? 【グノスポ連載第一回】 - Gunosy Tech Blog

    はじめに アプリ概要 開発合宿 技術について はじめに グノシー事業部の大曽根です。好きなチームは鹿島アントラーズです。 日プレスリリースがありました、グノシースポーツで使われている技術に関して テックブログでは何回かに分けてお伝えします。 今回はアプリの概要と初期の開発の進め方についてお話しします。 アプリ概要 まず、グノシースポーツはプレスリリースにある通り、 ニュースアプリの「グノシー」から生まれたスポーツ専門のアプリです。 gunosy-sports.com アプリでできることとしては、 【グノシースポーツ(グノスポ)でできること】 お気に入りのチームをマイチームに登録することで、マイチームのニュースを受け取ることができます。 試合結果や経過の通知を受け取ることもできます。 オールジャンルのスポーツニュースを毎日読むことができます。 があります。 UIは、できるだけスムーズにお

    グノシースポーツ (グノスポ) とは? 【グノスポ連載第一回】 - Gunosy Tech Blog
    Nyoho
    Nyoho 2018/11/15
  • Gunosyのパーソナライズを支える技術 -ワークフロー編- - Gunosy Tech Blog

    この記事は Gunosy Advent Calendar 2017 4日目の記事です qiita.com はじめに こんにちは、データ分析部のy-abeです。 パーソナライズシリーズの続きになります。 tech.gunosy.io tech.gunosy.io 今回はワークフロー編です。 パーソナライズにおいてユーザーや記事の素性抽出や、モデル作成をするコンポーネントや記事リストを生成するAPIが必要です。 それらのコンポーネント間でうまくデータを取り回すためにはワークフローが重要です。 ワークフローは、いわばシステム上における兵站といってもいいでしょう。 「戦争のプロは兵站を語り、戦争の素人は戦略を語る」という名言もあるくらいです。 さて、パーソナライズ記事配信のタスクの流れをざっくりいうと、 ユーザーと記事の素性を集めて整形(ベクトル化) -> 機械学習でモデルを作成 -> 素性とモデ

    Gunosyのパーソナライズを支える技術 -ワークフロー編- - Gunosy Tech Blog
    Nyoho
    Nyoho 2017/12/16
    “ワークフローは、いわばシステム上における兵站といってもいいでしょう。 「戦争のプロは兵站を語り、戦争の素人は戦略を語る」という名言もあるくらいです。”
  • 1