タグ

ブックマーク / hori-ryota.com (6)

  • Go の channel 処理パターン集 | Hori Blog

    Hori Blogフリーランスでバックエンドエンジニアとして活動している Ryota Hori のブログです。 最近はテック系記事より雑記ブログ気味。 この記事は Go Advent Calendar 2017 の 1 日目の記事です。 Go の長所に goroutine による非同期処理がありますが、どうしても channel の取り回しで黒魔術化しがちです。少しでも闇を減らしていきたいので、 channel らへんの取り回しについてパターンをまとめました。チートシート的に使えれば嬉しいです。 Go の channel の基礎 入門資料として使いたいので、題に入る前にざっくり基礎を。 定義のパターン channel には capacity という概念があります。 capacity は channel 内でバッファリングしておける容量のことで、 capacity に空きが無い場合は送信側

    Go の channel 処理パターン集 | Hori Blog
  • 社内勉強会で HLS と Key frame について改めて解説した | Hori Blog

    チーム全体のスキルアップのため、ネット生放送において超重要な HLS と Key frame について改めて解説してみました。 非エンジニア職を対象とした資料なのでそれなりに入門編としてわかりやすくできたんじゃないかなーと思っております。 内容 10 分(ちょい)でわかる FRESH! 動画の勘所 と題し、 HLS とは何か、なぜ使うのかの解説と、遅延などへの影響が大きい Key frame とはなんぞや、について解説しました。 非エンジニア職でも概要がつかめるよう意識しました。 なぜやったのか 生放送サービスを運営するにあたって、やはり動画に対する基礎的な知識は非エンジニア職でも必要になってきます。 特に遅延が起きたり画質が乱れたり、現場での対応はもちろんですが営業などする際の説得力にも違いが出てくると思います。 幸いにも、普段から何かと積極的にこれってどういうことなの?と質問してくれる

    社内勉強会で HLS と Key frame について改めて解説した | Hori Blog
    upamune
    upamune 2017/08/09
  • golang で汎用的な任意数のオプションを取るメソッドの作り方 | Hori Blog

    grpc の DialOption のオプション設定方法が上手いなーと感心したのですが、初見で理解するのが難しかったので備忘録がてら解説してみます。 やりたいこと golang にはオーバーロード(同名メソッドでも引数によって呼び出されるメソッドが変わるやつ)がないので、任意のオプションを取るメソッドを作るのに工夫が必要です。 可変引数の仕組みはあるので任意数の値をメソッドに渡したり、オプション用の struct を引数に取ることで実装できなくはないのですがデメリットがあります(後述)。 DialOption がそのへんの葛藤を上手いこと解決していたのでご紹介。 ダメだった例 はじめに検討したのですがよろしく無かった例です。 可変引数でオプションを渡す オプション用の struct を渡す 可変引数でオプションを渡す golang では可変引数の仕組みがあるので、任意数のオプションを渡すこ

    golang で汎用的な任意数のオプションを取るメソッドの作り方 | Hori Blog
  • TypeScript で Google Apps Script を書く環境を整備する | Hori Blog

    無料で自動化環境を整備できることで有名な Google Apps Script ですが、以前はブラウザで JavaScript を用いて開発する必要があったため辛い部分もありました(人による)。 現在は公式からローカル開発をするための公式 CLI ツールが提供されているので、静的型付けの恩恵を受けるべく TypeScript を用いて開発できるようにしてみました。 公式の CLI ツール G Suite Developers Blog: Advanced Development Process with Apps Script danthareja/node-google-apps-script: The easiest way to develop Google Apps Script projects インストール自体は Node.js が入っている環境であれば npm install

    TypeScript で Google Apps Script を書く環境を整備する | Hori Blog
    upamune
    upamune 2017/03/20
  • Amazon Aurora 事例祭り(20170307)に行ってきたメモ | Hori Blog

    Hori Blogフリーランスでバックエンドエンジニアとして活動している Ryota Hori のブログです。 最近はテック系記事より雑記ブログ気味。 Amazon Aurora 事例祭り に行ってきたので、メモを公開します。 社内共有で Slack に貼ろうと思っていたメモなのですが、長くなったのでブログに公開します。 概要 Amazon Aurora 事例祭り (2017 年 3 月 7 日開催) | AWS セッション内容 Amazon Aurora を使いこなすためのベストプラクティスと最新アップデート @con_mame さん データベースソリューションアーキテクト 登壇資料: [Aurora 事例祭り]Amazon Aurora を使いこなすためのベストプラクティス 開発サイドからの知見と今後の展望 PostgreSQL For Aurora でるよ! 9.6.4 と互換 My

    Amazon Aurora 事例祭り(20170307)に行ってきたメモ | Hori Blog
    upamune
    upamune 2017/03/07
    丁寧なメモでありがたい
  • CloudFrontのawscliでjson管理できる環境を整備した | Hori Blog

    CloudFront をマネジメントコンソールでぽちぽち管理するのつらい!! ということで、awscli と jq を使用して json 管理できる環境を整備して GitHub に公開しました。 CloudFront Manager 個人使用のために作成したので、細かいアレコレはご容赦ください。レビューは大歓迎です。 以下、記事公開時点の README.md と同内容です。 コマンドによって json のプロパティ順が違うようなので、作業後は fetchall.sh でお掃除することを推奨。 CloudFront の設定は失敗するとサービスにとって致命傷となるので、使用は自己責任でお願いします。 下準備 依存ツール awscli jq cloudfront コマンドは preview 版なので有効にする

    CloudFrontのawscliでjson管理できる環境を整備した | Hori Blog
  • 1