タグ

ブックマーク / tech.repro.io (6)

  • Kafka Streams はレコードをどのように処理しているのか - Repro Tech Blog

    Platform Team/Repro Core Unit の村上です。 Repro では Kafka を基盤としたストリーム処理のアプリケーションを構築する際に、Kafka Streams を積極的に活用しています。 Kafka Streams は、フォールトトレラントなステートフル処理を簡潔に実装でき、データパイプラインを Topology という表現で抽象化することで、複雑な処理でも管理しやすい形で組み立てていくことが可能です。 また、Apache Kafka 以外の外部依存がないことや Streams DSL によるシンプルな記述でストリーム処理を実装できることなども、ストリーム処理のアプリケーションをスムーズに構築する上で助かっています。 一方で、 なにかしらの問題が発生したときのトラブルシューティングや影響範囲調査の際には、Kafka Streams の内部処理を把握していない

    Kafka Streams はレコードをどのように処理しているのか - Repro Tech Blog
  • PerformanceResourceTiming API で HTTP Cache のヒット率を知る - Repro Tech Blog

    はじめに こんにちは、Repro Booster という製品の開発責任者/プロダクトマネジメントを担当しているEdward Fox(edwardkenfox)です。 WebサイトやWebアプリケーションの表示速度を考える上では、キャッシュの活用はとても大事なテーマです。一口にキャッシュといっても、Webの文脈だけで見ても様々なレイヤーや用途のキャッシュが存在します。今回は昔ながらのキャッシュ、いわゆる HTTP Cache に的を絞り、HTTP Cache のヒット率について考えてみたいと思います。 さまざまなキャッシュレイヤー 前述のように、Webにおけるキャッシュには用途やレイヤーの異なる様々な種類のものが存在します。Webサイト/Webアプリケーションを開発する上で気にかけるべきものは、おおよそ次のようなものが該当するでしょう。 HTTP Cache (ブラウザキャッシュ) Cach

    PerformanceResourceTiming API で HTTP Cache のヒット率を知る - Repro Tech Blog
  • Ruby の JSON ライブラリ Oj のパフォーマンス改善を行いました - Repro Tech Blog

    Development Division/Repro Team/Feature 1 UnitWatsonです。Feature 1 Unit は Repro Tool の機能開発と保守を担っています。 弊社でも利用している Oj gem のパフォーマンス改善 PR を送った話と、その PR の内容について共有します。 ことのはじまり 以前、同僚が Ruby on Rails で JSON を返す REST API を作成した際、JSON のエンコード部分のパフォーマンス計測をしていました。JSON のエンコード方法は JSON.generate、ActiveSupport::JSON.encode、Oj gem を利用する方法など色々ありますが、私としては Oj gemの ほうがパフォーマンス的にいいだろうからそちらを利用したほうが良いのではと思っておりました。 計測結果を拝見したら確

    Ruby の JSON ライブラリ Oj のパフォーマンス改善を行いました - Repro Tech Blog
  • プロダクトマネージャーと画家 - Repro Tech Blog

    はじめに こんにちは、Repro Booster という製品の開発責任者/プロダクトマネジメントを担当しているEdward Fox(edwardkenfox)です。 前回の記事「ServiceWorkerの落とし穴8選」では ServiceWorker という技術に的を絞ったテクニカルなトピックを扱いましたが、今回は少し趣を変えて「プロダクトマネジメント」に関する私の考えや想いを書いてみたいと思います。Repro Boosterの開発と運用を通して自分なりに「プロダクト開発」について考えたことや、得られた示唆をまとめています。Repro Boosterの開発チームが、どのような考え方を持ってプロダクトや技術に向き合い、そして製品を改善するべく日々の活動にあたっているかという点について、少しでもその温度感や熱量が伝わるような記事になれば幸いです。 Repro Booster とは 2022

    プロダクトマネージャーと画家 - Repro Tech Blog
  • SCRIPT 要素の変遷から触れる Web の進化 - Repro Tech Blog

    はじめに こんにちは。Repro で Booster の開発をしている杉浦と申します。 最近は JavaScript の盛り上がりが凄いですね。今ではブラウザ内にとどまらず、サーバサイドでも活用される様になりました。 これには、言語仕様が整理されたり機能が強化されたり、非常に大きな発展があったという点が大きいです。 実は、言語としての JavaScript だけではなく、最近 HTML との境界インタフェースとしての JavaScript の仕様も最近かなり明確化されてきています。 自分も HTML5 の最初のあたりまでは把握していたのですが、Booster の開発に携わる中で久しぶりに確認したところ、随分と仕様が進化し複雑になっていました。 今回はそんな HTML 規格の変化部分の紹介と、過去からの HTMLJavaScript の流れを振り返る簡単なまとめです。 HTML 仕様と

    SCRIPT 要素の変遷から触れる Web の進化 - Repro Tech Blog
  • pt-online-schema-change の実行が必要かどうか判断するタイミングをより早くした話 - Repro Tech Blog

    Repro では Aurora MySQL を使用しています。いくつか数千万行を越えるデータを持つ大規模なテーブルもあります。 大規模なテーブルのスキーマを変更するときは pt-online-schema-change1 を使用していますが、今回はその必要性を判断するタイミングを早めた話です。 pt-osc が必要になる理由等は次の記事が詳しいです。 - pt-online-schema-changeの導入時に検討したこと、およびRailsアプリとの併用について - freee Developers Hub 解決したい課題 Repro では Rails アプリケーションが管理画面や API を提供しています。これらについて、目的別に複数の環境を用意しています。 member: 主に管理画面の動作確認目的で開発者が自由に使ってよい環境 いくつかのミドルウェアは dev_staging と共用

    pt-online-schema-change の実行が必要かどうか判断するタイミングをより早くした話 - Repro Tech Blog
  • 1