Datadog Continuous Profiler活用事例: Goのiteratorの導入でCPU時間半減、メモリ確保量1/100を達成 🎉 はじめに こんにちは!ABEMAの広告配信システムの開発チームでバックエンドエンジニアとしてバイトをしている内定者の戸田朋花です。 本記事では、Datadog Continuous Profiler を用いてボトルネックを特定し、Go1.23 から追加された iterator を活用してコードをリファクタリングした結果、CPU 時間を 57%短縮し、メモリ確保量を 99.4%削減した取り組みについてご紹介します! 背景 ABEMA の広告配信システムは多数のマイクロサービスで構成されていますが、とあるコンポーネントにおいて、CPU使用率が定期的にスパイクしている課題がありました。 性能改善と今後の安定した機能追加を実現するため、原因の分析とリフ
Of the many data points this analysis reports, the most useful metrics to look at are the number of files and types, amount of memory used, and the amount of time spent doing I/O, parsing, and type-checking. If I/O times are high or the number of files/lines are high look at Validating Source Files Inclusion. Deeper Insights with Compiler Traces # If the compiler is spending a lot of time in the p
こんにちは、株式会社 PKSHA Technology ソフトウェアエンジニアの中西です。 1. はじめに Go 言語で MySQL を利用する場合、標準ライブラリの database/sql と、ドライバである go-sql-driver/mysql を組み合わせるのが一般的です。この構成は、事実上のデファクトスタンダードとして定着しています。[1] また、セキュリティ対策も重要です。特に SQL インジェクションを防ぐため、プレースホルダ ? を用いた Prepared Statement の利用はベストプラクティスと言えます。[2] しかし、この標準的で安全な構成でも、パフォーマンスが著しく劣化するケースはあります。本稿では Prepared Statement の 2 方式を整理し、Go のデフォルト設定で性能が落ちる原因をベンチマーク結果と合わせて示します。解決策と採用時のトレー
uv installs packages faster than pip by an order of magnitude. The usual explanation is “it’s written in Rust.” That’s true, but it doesn’t explain much. Plenty of tools are written in Rust without being notably fast. The interesting question is what design decisions made the difference. Charlie Marsh’s Jane Street talk and a Xebia engineering deep-dive cover the technical details well. The intere
Did you know that macOS has a secret setting that can make Rust builds faster? It can also make Rust tests faster (sometimes massively so). It probably even has similar effects for other compiled languages such as C, C++, Go, and Swift. It sounds crazy, but read on… The problem Isaac Asimov reportedly said: the most exciting phrase to hear in science… is not “Eureka” but “that’s funny…” I noticed
Posted on August 1, 2025 2x Performance, $300k Savings: A Case Study in Rewriting a Critical Service in Rust A Tale of Scale: When Your Service Hits a Wall In the world of high-traffic systems, success often brings its own set of challenges. During my internship at TikTok, one of our core payment services—a reliable workhorse built in Go—began showing signs of strain. As TikTok LIVE’s user base gr
For years, I’ve felt that writing lines of code was never the bottleneck in software engineering. The actual bottlenecks were, and still are, code reviews, knowledge transfer through mentoring and pairing, testing, debugging, and the human overhead of coordination and communication. All of this wrapped inside the labyrinth of tickets, planning meetings, and agile rituals. These processes, meant to
--- By offloading CPU-heavy operations to worker threads, you can keep your Node.js applications responsive, scalable, and performant—even under heavy load. Getting Started with Worker Threads The worker_threads module is built into Node.js, so you don’t need to install anything extra. To use it, you simply import the module and create a new instance of Worker to run code in a separate thread. Let
The Apache® Parquet™ Format Apache Parquet is a popular, free, open-source, column-oriented data storage format. Whereas database systems typically load data from formats such as CSV and JSON into database tables before analyzing them, Parquet is designed to be efficiently queried directly. Parquet considers that users often only want to read some of the data, not all of it. To accommodate this, P
Patterns and Techniques for Writing High-Performance Applications with Go¶ The Go App Optimization Guide is a long-form series about making Go services faster in ways that actually translate to production. No folklore. No “best practices” without numbers. The focus is on understanding what the runtime is doing, where the costs come from, and how to reduce them without turning your codebase into a
5 会社概要 Japan Region Mercari Group Fintech メルカリグループは、株式会社メルカリと、その連結子会社で構成されています。 Marketplace 株式会社メルカリ ◼設立 ◼事業内容 ◼所在地 ◼拠点 ◼代表取締役 CEO ◼CEO Marketplace 2013年2月1日 スマートフォン向けフリマアプリ 「メルカリ」の企画・開発・運営 〒106-6118 東京都港区六本木6-10-1 六本木ヒルズ森タワー 東京、福岡、大阪 山田進太郎 山本真人 ①2017年11月20日 ②金融事業 ③永沢岳志 株式会社メルペイ ①2014年1月 ②US版メルカリの企画・開発・運営 ③John Lagerling ④Palo Alto, California Mercari, Inc.(US) ①199
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く