並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 3265件

新着順 人気順

パフォーマンスの検索結果1 - 40 件 / 3265件

  • TypeScriptのパフォーマンス改善

    2024/05/11に行われたTSKaigiで発表したLTの資料です! ◎概要 TypeScriptはJavaScriptのスーパーセットとして、静的型付けと高度な型システムを提供し、大規模なプロジェクトの開発を助けています。しかし、これらの利点を最大限に活用するためには、コンパイルパフォーマンスの最適化が不可欠です。コンパイル速度を上げることでビルド時間やテスト実行時間の削減を行うことができます。今回の発表では、TypeScriptのコンパイルパフォーマンスを改善するための具体的な手法とその背後にある理論をいくつか紹介します。 ◎内容 1. TypeScriptのパフォーマンスとは何か、そしてなぜそれが重要なのか 2. コンパイル速度を改善するための具体的な手法とその背後にある理論

      TypeScriptのパフォーマンス改善
    • A 100x speedup with unsafe Python

      We're going to speed up some numpy code by 100x using "unsafe Python." Which is not quite the same as unsafe Rust, but it's a bit similar, and I'm not sure what else to call it... you'll see. It's not something you'd use in most Python code, but it's handy on occasion, and I think it shows "the nature of Python” from an interesting angle. So let's say you use pygame to write a simple game in Pytho

      • クエリのパフォーマンスチューニングの第一歩。実行計画や統計情報について入門する

        SQL実行の流れ まずはSQLがどのような流れで実行されるのかを見ていきます。 SQL実行の流れは大まかに捉えると以下のようになります。 パーサ パーサでは、ユーザーから送信されたクエリを受け取り、その文法的な正確さを検証します。SQLクエリが正しくフォーマットされているか、必要な構文要素が全て含まれているかをチェックし、例えばFROM句で指定されたテーブルが存在するかどうかも確認します。 文法的なエラーがある場合、例えばカンマの欠落や存在しないテーブルの参照など、クエリはエラーとして返されます。 エラーがない場合は、クエリは「抽象構文木」というデータ構造に変換されます。これにより、データベースはクエリをより効率的に解析し、次の処理ステップに進めることができます。 オプティマイザ SQLクエリがパーサを通過した後、次にクエリの最適化を行うのが「オプティマイザ」です。オプティマイザの主な役割

          クエリのパフォーマンスチューニングの第一歩。実行計画や統計情報について入門する
        • サブクエリの書き方を2万文字弱かけてすべて解説する

          これはなに ども、レバテック開発部のもりたです。 今回はSQLのサブクエリについてまとめます。仕事でクエリを書く際、サブクエリは頻出の構文だと思うんですが、同時にサブクエリの書き方を完全に理解しているよという人は案外少ないのではないでしょうか?[1] 実際、MySQLの公式ドキュメントを見ると12ページくらいを割かれており、意外と奥深いのがサブクエリです。使いこなせると便利ですし、何よりちょっとSQLのコツみたいなのがわかって面白いよ、ということで記事にしてみました。 前提 この記事は以下の前提を含んでいます。 環境 MySQL8.0系 読者の知識 なんとなくサブクエリが書ける けど相関サブクエリとかになると「あーっ」つってGoogle meetを閉じてしまうくらいのレベル感 記事のボリューム 18,000文字 おれの卒論が20,000文字だった マサカリ 間違ってたら投げてくれ〜〜 それ

            サブクエリの書き方を2万文字弱かけてすべて解説する
          • Python 3.12で増えた並列処理と、これまでの並列処理の挙動を比べてみる - Qiita

            この記事ですることを3行で Pythonの標準ライブラリでできる並列実行を、あらためて総当たりで速度比較しよう ウォーターフォールチャートで、それぞれの並列処理の処理時間の特徴を可視化しよう boto3の実行をモデルケースにして、どの並列処理が一番早いのかを調べよう この記事の結論を先に Python 3.12から本格的に使えるようになったサブインタープリターは、CPUで実行する処理について言えば、従来のサブプロセスよりも高速 boto3の実行は、サブインタープリターよりも署名付きURLの非同期実行のほうが速い → S3からの10ファイルの取得であれば、実行時間を90%削減できます → Bedrockの3回実行であれば、実行時間を60%削減できます 今回使ったソースコードはこちらに置いています。 お手持ちの環境で再実行できるようにしていますので、気になる方はぜひ。 どうしてこの記事を書くの

              Python 3.12で増えた並列処理と、これまでの並列処理の挙動を比べてみる - Qiita
            • 『呪術廻戦 ファントムパレード』の大規模アクセスを支えるインフラ構成と最適化 - Sumzap Engineering Blog

              この記事は、2024年3月7日に開催された「CyberAgent Game Conference 2024(CAGC 2024)」のセッション内容をAIによる自動文字起こしをベースに加筆修正したものになります。 セッション概要 TVアニメ『呪術廻戦』初のスマホゲーム『呪術廻戦 ファントムパレード(ファンパレ)』は、多くのユーザーに遊ばれ大量のアクセスが来ることが予想されていました。 本セッションでは、高負荷が予想される中、どのようにインフラを構築し負荷対策を行ったのか、実際のインフラ構成図をお見せしながらお話しします。 また、アプリリリース前に行った負荷試験の流れや、リリース後の負荷状況について、具体的なメトリクスの数字をお見せしながらご紹介します。 ※セッションのアーカイブ動画 登壇内容 タイトル 『呪術廻戦 ファントムパレード』の大規模アクセスを支えるインフラ構成と最適化というタイトル

                『呪術廻戦 ファントムパレード』の大規模アクセスを支えるインフラ構成と最適化 - Sumzap Engineering Blog
              • 今更聞けないDBMSのメモリ管理について

                DBMSのメモリ管理について データベース管理システム(DBMS)の設計では、大量のデータと複雑なクエリを処理するために、ハードウェアの特性を最大限引き出すことが求められます。 この記事では、DBMSがどのようにメモリを使ってデータアクセスの速度を向上させ、同時にデータの安全性を確保しているのかを解説します。 DBMSと記憶装置の関係について DBMSが使う記憶装置は次の2つです。 HDD HDDは磁気ディスクを使用してデータを記録・読み取りする記憶装置です。その主な特徴は大容量であり、コスト効率が良いことです。DBMSでは、データの永続的な保存にHDDが用いられます。これにより、システムがシャットダウンされた後もデータが保持され、必要に応じて再びアクセス可能となります。 しかし、HDDのデータアクセス速度はメモリに比べて遅いため、リアルタイム処理や高速なトランザクションが求められるアプリ

                  今更聞けないDBMSのメモリ管理について
                • R3のコードから見る実践LINQ実装最適化・コンカレントプログラミング実例

                  C#パフォーマンス勉強会 https://cs-reading.connpass.com/event/309714/

                    R3のコードから見る実践LINQ実装最適化・コンカレントプログラミング実例
                  • 今日からできる!簡単 .NET 高速化 Tips -2024 edition-

                    C# / .NET における、パフォーマンス改善の Tips をお届けします。 これを見れば、効率良く 80 点を取ることができるようになるはずです!

                      今日からできる!簡単 .NET 高速化 Tips -2024 edition-
                    • PerlからGoへのシステム移行のアシスト 〜Perl XSとUnix Domain Socketを活用〜 - Mirrativ Tech Blog

                      こんにちは ハタ です。 Mirrativ では 2020年頃から サーバサイドの技術をPerlからGoへのシステム移行 を行っており、2024年現在でもサグラダファミリアのように移行作業は継続しています PerlとGoという2つの環境を同時に運用していますが、 基本的には 新機能は Go で実装 し、 Perlでは積極的に新規実装を行わない というスタイルで進めていました しかし、既存の機能の一部に手を加えたいとなった場合、まだまだ Perl の実装に手を加えることが一定あり、Perl から Go の機能を呼び出したいというニーズが出てきました (配信やギフトといったビジネスの根幹を支えるレガシーな実装においては顕著) そこで PerlXS を利用することで Perl から Go を直接呼び出せるようにできないかと考え検証を進めることにしました Goの -buildmode=c-shar

                        PerlからGoへのシステム移行のアシスト 〜Perl XSとUnix Domain Socketを活用〜 - Mirrativ Tech Blog
                      • WindowsユーザーはiPerf3を避けるべき、Microsoftが否定的見解示す

                        Microsoftは4月18日(米国時間)、「Three Reasons Why You Should Not Use iPerf3 on Windows - Microsoft Community Hub」において、Windowsでネットワークパフォーマンスの測定にiPerf3を使用すべきではないと主張した。同社は利用すべきではない理由を挙げるとともに、iPerf3の代わりとなる代替ツールを紹介している。 Three Reasons Why You Should Not Use iPerf3 on Windows - Microsoft Community Hub WindowsでiPerf3を使用すべきではない3つの理由 Windows環境でのネットワークベンチマーキングにおいて、使いやすさと高いカスタマイズ性からiPerf3が使われることがある。しかしながら、MicrosoftはWi

                          WindowsユーザーはiPerf3を避けるべき、Microsoftが否定的見解示す
                        • 【元半導体設計屋 筑秋 景のシリコン解体新書】 ファウンダリ事業で最強プロセス技術の座を取り戻すIntel

                            【元半導体設計屋 筑秋 景のシリコン解体新書】 ファウンダリ事業で最強プロセス技術の座を取り戻すIntel
                          • MySQLのSQLクエリチューニングの要所を掴む勉強会を開催しました! - ANDPAD Tech Blog

                            こんにちは!DBREの福間(fkm_y)です。先月、弊社でデータベースの技術顧問をして頂いてる三谷(mita2)さんに開発本部向けの「MySQL SQLチューニング」勉強会を実施していただきました。 今回はMySQLの得意不得意なことの説明やSQLチューニングの流れ、具体的な事例を元にした対応例、また最近話題のHTAPな製品も紹介していただきとても参考になったのでポイントをおさえてレポートをお伝えします! 開催背景 本編 MySQL の得意なこと、苦手なこと データベースのチューニング手段と特徴 SQLチューニングの流れ インデックス SQLチューニング例 インデックスフルスキャンとカバーリングインデックス ソート まとめ 当日の資料 さいごに 過去開催されたデータベース勉強会レポート 開催背景 弊社では三谷さんによるデータベース勉強会を定期的に開催しています。数年前にも同じテーマで勉強会

                              MySQLのSQLクエリチューニングの要所を掴む勉強会を開催しました! - ANDPAD Tech Blog
                            • 入社4ヶ月でBigQueryの課金額を減らすために考えたこと - 弁護士ドットコム株式会社 Creators’ blog

                              データ分析基盤室の otobe(𝕏@UC_DBengineer) です。 事業規模が拡大し、大規模なデータの管理が必要になるにつれて、SnowFlake や BigQuery のようなハイパワーな DWH サービスでデータを加工するケースは多いです。 その際、想定外な高額請求が起こる原因のひとつに、クエリが最適化されておらずスキャン量が増大しているケースがあります。 そのため、クエリのスキャン量を監視・管理することが課金額を減らすうえで有効な手段となることがあります。 本記事では、前半で BigQuery で課金されるスキャン量を監視・管理するまでのプロセスを振り返り、 後半で BigQuery の課金額を減らすために簡単にチェックできることについてお話しします。 BigQuery クエリにおけるスキャン量を監視・管理するに至った理由 BigQuery の課金額が想定より大幅に増加してい

                                入社4ヶ月でBigQueryの課金額を減らすために考えたこと - 弁護士ドットコム株式会社 Creators’ blog
                              • Choreographing a dance with the GHC specializer (Part 1)

                                Specialization is an optimization technique used by GHC to eliminate the performance overhead of ad-hoc polymorphism and enable other powerful optimizations. However, specialization is not free, since it requires more work by GHC during compilation and leads to larger executables. In fact, excessive specialization can result in significant increases in compilation cost and executable size with min

                                  Choreographing a dance with the GHC specializer (Part 1)
                                • Ten years of improvements in PostgreSQL's optimizer · Ryan Marcus

                                  As a query optimization researcher, I’ve spent the last 10 years of my life playing with, learning from, and building on top of the most sophisticated open source query optimizer out there, PostgreSQL. I recently wondered how much PostgreSQL had improved over the decade since I started working on databases. While changelogs and opinion pieces were plentiful, I couldn’t find any strong empirical co

                                  • 本気か?Apple幹部が「Macのメモリは8GBでOK」と主張。 - すまほん!!

                                    海外サイト「IT之家」は4月12日(現地時間)、Appleのエンジニアリング担当副社長Kate Bergeron氏とMac製品マーケティングチームのEvan Buyze氏の独占インタビューを公開しました。そのなかでEvan Buyze氏は、Macの実行メモリ容量について興味深い発言をしています。 Macでは2015年以降、全モデルが最低でも8GBの実行メモリを搭載してきました。2020年以降に登場したApple Silicon搭載モデルでは、CPU、GPU、実行メモリを1つのチップに収めたユニファイドメモリとすることで、各チップが分離していた従来モデル(Intel Mac)と比べ、全体的な処理能力も向上しています。 一方、複数のチップをまとめた結果、購入後に実行メモリの容量を増やすという、Intel MacのハイエンドモデルやWindowsマシンではお馴染みのテクニックは使えなくなりました

                                      本気か?Apple幹部が「Macのメモリは8GBでOK」と主張。 - すまほん!!
                                    • CSS Containmentの仕組みを理解してレンダリングパフォーマンスをアップする3 検証 | フロントエンドBlog | ミツエーリンクス

                                      containプロパティにlayoutやpaintを指定した場合やcontent-visibilityプロパティを設定した場合のCSS Containmentの検証をご紹介します。 これまでの関連Blogについては「CSS Containmentの仕組みを理解してレンダリングパフォーマンスをアップする1 概要」「CSS Containmentの仕組みを理解してレンダリングパフォーマンスをアップする2 検証」でご確認いただけます。 layoutの検証 contain: layout;の設定の有無による要素の配置の違いからLayoutの封じ込めを検証します。 containプロパティがない場合 containプロパティの設定がないブロックを用意します。 ブロック内に3つの要素を設置します。 1つ目の要素は、position: fixed;を設定して相対的な配置にします。 2つ目の要素は、flo

                                        CSS Containmentの仕組みを理解してレンダリングパフォーマンスをアップする3 検証 | フロントエンドBlog | ミツエーリンクス
                                      • 小さく始めるパフォーマンス改善

                                        はじめに こんにちは!株式会社 COMPASS でエンジニアをしているやじはむです。私はシステム開発部というエンジニアリングの組織に所属をしており、現在はフロントエンドエンジニアとして先生向けのアプリケーション開発を行っています。 今回は、最近の業務の中で小さく始めていたパフォーマンス改善方法について紹介したいと思います。 この記事はこんな方におすすめ Webパフォーマンスの具体的な改善方法を知りたい人 Core Web Vitalsの改善方法を知りたい人 ちょっと良いコードを少ないエネルギーで書きたい人 筆者は最近Web Speed Hackathon 2024に参加したのですが、そこで学んだ知見も踏まえて記事を書きました。 パフォーマンスについて興味がある人もない人もこの記事を見れば、根拠を持って「ちょっと良いコード」を書けるようになるかも知れません。書いてある内容はどれも小さく始めら

                                          小さく始めるパフォーマンス改善
                                        • Improve performance of you Rust functions by const currying

                                          Currying is a functional programming technique that allows you to partially apply a function’s arguments and return a new function that takes the remaining arguments. This is widely used in functional programming languages like Haskell, as a fundamental tool for many design patterns. However, today we use the technique in Rust to improve the performance of our functions. TL;DR: You can also take a

                                          • Ruby 3.3.0+YJIT本番運用カンパニーになりました - Timee Product Team Blog

                                            こんにちは。バックエンドエンジニアの須貝(@sugaishun)です。 今回はタイミーが本番運用しているRailsアプリケーションに対してRuby3.3.0へのアップデートを行った(YJITは引き続き有効なまま)のでその結果をご紹介したいと思います。 昨年弊社のid:euglena1215が書いたエントリーのRuby3.3.0版です。 tech.timee.co.jp 前提 タイミーのWebアプリケーションとしての特性は基本的には昨年と変わりありません。ですので、昨年の内容をそのまま引用させてもらいます。 タイミーを支えるバックエンドの Web API は多くのケースで Ruby の実行よりも DB がボトルネックの一般的な Rails アプリケーションです。JSON への serialize は active_model_serializers を利用しています。 今回の集計では API

                                              Ruby 3.3.0+YJIT本番運用カンパニーになりました - Timee Product Team Blog
                                            • Optimizing WebKit & Safari for Speedometer 3.0

                                              The introduction of Speedometer 3.0 is a major step forward in making the web faster for all, and allowing Web developers to make websites and web apps that were not previously possible. In this article, we explore ways the WebKit team made performance optimizations in WebKit and Safari based on the Speedometer 3.0 benchmark. In order to make these improvements, we made an extensive use of our per

                                              • Object structure in JavaScript engines

                                                Object structure in JavaScript enginesFrom a developer's perspective, objects in JavaScript are quite flexible and understandable. We can add, remove, and modify object properties on our own. However, few people think about how objects are stored in memory and processed by JS engines. Can a developer's actions, directly or indirectly, impact performance and memory consumption? Let's try to delve i

                                                  Object structure in JavaScript engines
                                                • MicrosoftやAmazonに続き、Googleも生成AI向け独自CPU投入

                                                    MicrosoftやAmazonに続き、Googleも生成AI向け独自CPU投入
                                                  • Rust製の負荷テストフレームワークGoose入門

                                                    はじめに Rustを使っているとすべてをRustで書きたい欲に駆られることがあります。 たとえば負荷試験ツールもRustで書きたい、みたいなことがあったりします。 ありがたいことにRustではGooseという負荷テストフレームワークがあり、これを使えば負荷テストをRustで実装できます。 ちなみに、GooseはRust Foundationのメンバーであるtag1が開発しているので安心感があります。[1] 本記事はGooseについて基本的・応用的な使い方などについて紹介していきます。 Gooseとは GooseはPython製の負荷テストツールであるLocustにインスパイアされたRust製の負荷テストフレームワークです。 Locustと比べて、約11倍ほどのトラフィックを生成でき、CPUコアを可能な限り使用してくれます。[2] またLocustと違い、フレームワークなのでビルドしたバイナ

                                                      Rust製の負荷テストフレームワークGoose入門
                                                    • TestProfでワースト5のspec実行時間を8割削減していった話 - Findy Tech Blog

                                                      Findyでエンジニアをしている松村(@shakemurasan)です。 以前、弊社の栁沢が「RailsのCIのテスト実行時間を10分から5分に高速化した話」という記事を投稿しました。 tech.findy.co.jp 本記事ではその少し前のお話、そもそもRSpecの実行時間自体にまだまだあった伸びしろ、特にFactory周りの問題をTestProfというgemを活用して解消していった話となります。 当時のRSpecの実行時間状況 TestProfとは TestProfでの分析結果 改善1. 関連したレコードを複数件作成しているFactoryを1レコードに減らす 改善2. テストで必要最小限なレコードのみを作成する RSpecの実行時間の改善結果 考察 当時のRSpecの実行時間状況 これまでにもテスト実行時間の短縮のための取り組み(CI側でのマシンの並列起動および並列実行)はしており、そ

                                                        TestProfでワースト5のspec実行時間を8割削減していった話 - Findy Tech Blog
                                                      • CPU・GPU・ストレージの性能をワンクリックで測定できるフリーソフト「CrystalMark Retro」レビュー、CrystalDiskMark作者の新作で簡単操作でPCの性能を測定可能

                                                        CPUやGPU、ストレージの性能を簡単に測定できるベンチマークソフト「CrystalMark Retro」が2024年3月31日にリリースされました。CrystalMark Retroはストレージベンチマークソフト「CrystalDiskMark」やストレージ管理ソフト「CrystalDiskInfo」といった定番ソフトの作者であるhiyohiyo氏の新作ということで、CrystalMark Retroも定番ソフトに仲間入りしそうな気配を感じます。そんなCrystalMark RetroをダウンロードしてPCの性能を測定するまでの手順を確認してみました。 CrystalMark Retro - Crystal Dew World [ja] https://crystalmark.info/ja/software/crystalmarkretro/ CrystalMark Retroをダウン

                                                          CPU・GPU・ストレージの性能をワンクリックで測定できるフリーソフト「CrystalMark Retro」レビュー、CrystalDiskMark作者の新作で簡単操作でPCの性能を測定可能
                                                        • スロークエリを改善したらECSの負荷が爆下がりした話(TypeORM)

                                                          TL;DR TypeORMで発生していたスロークエリを改善 スロークエリを改善したらECSの負荷も減少 はじめに スロークエリを改善したら、ECSコンテナ側の負荷も下がってなんでだろ?と思ったので記事にしようと思います。 環境 TypeORM v0.3.20 Node.js v18.x バックエンドインフラ ECS on Fargate => Amazon Aurora MySQL 負荷改善の前と後 まずはどのくらい改善したのかを示します。 この時ECSコンテナ8台動いてました。(4vCPU 8GBMem) 改善前 改善後 改善前と改善後は一日前の同じ時間帯のものです。 ちゃんと動いてるのか不安になるくらい下がってました笑 どのような対応をしたのか スロークエリの出ていたクエリでMySQLの実行計画を確認しました。 TypeALL,index, Using Filesort等はなかったので

                                                            スロークエリを改善したらECSの負荷が爆下がりした話(TypeORM)
                                                          • 日本だけ実質賃金が横ばい…「もっと労働生産性を上げろ!」と主張する人たちに見てもらいたい国際比較グラフがこちら

                                                            nichinichi🏳️‍⚧️🏳️‍🌈 @nichinichibijou こんな悲しいグラフがあるかよ…情け容赦ない搾取が可視化されててシンドイ 日本だけ実質賃金が上がってない(どころか若干下がってる)のに労働生産性だけ右肩上がり…お給料が上がらない(どころか若干下がってる)のに必死こいて働いて生産性を上げることないよ。今こそサボタージュが必要なのでは x.com/shirakawa_love… 2024-04-04 10:08:50 黄色異人/とし雪 @yellowman_a 日本じゃ運用改善で業務効率化、時短にした場合、空いた時間に別の仕事を突っ込まれ給料は上げてくれないという労働者側の感覚が、業務改善は定額プラン(隠語的に)内という経営側の感覚が…という実感はあります。 x.com/shirakawa_love… 2024-04-04 13:24:18

                                                              日本だけ実質賃金が横ばい…「もっと労働生産性を上げろ!」と主張する人たちに見てもらいたい国際比較グラフがこちら
                                                            • 重い「Excel」ファイルを最適化してスリムにする機能、Web版だけでなくWindows版にも/不要なメタデータを検出・削除する「パフォーマンスをチェック」(Check Performance)

                                                                重い「Excel」ファイルを最適化してスリムにする機能、Web版だけでなくWindows版にも/不要なメタデータを検出・削除する「パフォーマンスをチェック」(Check Performance)
                                                              • Kubernetesでアプリの安定稼働と高頻度のアップデートを両立するためのプラクティス / Best Practices for Applications on Kubernetes�to Achieve Both Frequent Updates and Stability

                                                                Kubernetesでアプリの安定稼働と高頻度のアップデートを両立するためのプラクティス / Best Practices for Applications on Kubernetes�to Achieve Both Frequent Updates and Stability

                                                                  Kubernetesでアプリの安定稼働と高頻度のアップデートを両立するためのプラクティス / Best Practices for Applications on Kubernetes�to Achieve Both Frequent Updates and Stability
                                                                • ARMはx86より効率がいいというのは過去の神話

                                                                  従来から、「ARMはx86より(電力的に)効率的だ」という言説があります。これは単純に「ARMは省電力なスマホ向けで、x86は電力を食うPC向け」程度のアバウトなイメージのこともありますし、前世紀のRISC vs CISC論争のころからある「ARMはx86 (x64を含む)に比べ命令セットがシンプルなので、命令デコードにかかる電力が少なくて済んで効率的」という議論の形をとることもあります。 この議論については、半導体エンジニアの多くは「ARMがx86 より効率が良いというのは、もはや過去の神話」(in today’s age it is a very dead argument)という認識を共有していると言っていいでしょう。有名なところではApple CPU (ARM)とZen (x86)の両方を開発したジム・ケラー氏のインタビューでも言われていますし、Chips and Cheeseとい

                                                                    ARMはx86より効率がいいというのは過去の神話
                                                                  • Introducing Jpegli: A New JPEG Coding Library

                                                                    The latest news from Google on open source releases, major projects, events, and student outreach programs. The internet has changed the way we live, work, and communicate. However, it can turn into a source of frustration when pages load slowly. At the heart of this issue lies the encoding of images. To improve on this, we are introducing Jpegli, an advanced JPEG coding library that maintains hig

                                                                      Introducing Jpegli: A New JPEG Coding Library
                                                                    • 非同期処理で45%のレイテンシ削減を実現#Nature - Nature Engineering Blog

                                                                      Natureエンジニアインターン生の後藤です。この記事では、インターン期間中に取り組んだfirequeueの改修についてお話します。 背景 NatureのバックエンドにはNature Remoからメッセージを受け取るエンドポイントがあるのですが、このエンドポイントはメッセージが来るたびに叩かれるので、NatureのAPIサービスの中で最も合計レイテンシとリクエスト数が大きいものとなっています。 エンドポイント毎のリクエスト数と累積時間 詳しくこのAPIのレイテンシの内訳を見てみると、その中でもFirehoseが占有している時間が40%と最も長くなっていました。 APIのレイテンシの内訳 また、Natureではfirehoseへの送信にfirequeueというGo言語のpackageを使用しています。firequeueは、Amazon Kinesis Data Firehoseへのアイテムの

                                                                        非同期処理で45%のレイテンシ削減を実現#Nature - Nature Engineering Blog
                                                                      • スタディサプリ最大のRailsアプリケーションにYJIT+pitchforkを導入してメモリ使用量を劇的に削減するまで - スタディサプリ Product Team Blog

                                                                        こんにちは。SREのkyontanです。Rubyが大好きなのでRubyの話をします。ちなみにリクルートはRubyKaigi 2024へGold Sponsorとして協賛しています! *1。ぜひ沖縄でお会いしましょう。 これはあるアプリケーションのメモリ消費量を示すグラフなのですが、まさかgemを入れ替えるだけでこんなに嬉しい変化が見られるとは思っていませんでした。今日はそんなgemの話をします。 話は遡って2023年4月のある日、インターネットを眺めていたところ、ShopifyがpitchforkというOSSを公開したという情報が目に留まりました。 調べてみると、どうやら著名なRackサーバー実装の1つであるunicornの派生版であり、メモリ使用量の削減に特化しているらしいのです。 github.com これはスタディサプリ小中高のあのリソースドカ食いマイクロサービス第一位である api

                                                                          スタディサプリ最大のRailsアプリケーションにYJIT+pitchforkを導入してメモリ使用量を劇的に削減するまで - スタディサプリ Product Team Blog
                                                                        • グループ会社支援を目的とした開発支援専門会社|エムスリーテクノロジーズ株式会社を設立

                                                                          エムスリー株式会社(所在地:東京都港区、代表取締役:谷村 格、以下エムスリー)は、グループ会社の開発支援を行うエムスリーテクノロジーズ株式会社(代表取締役:山崎 聡(エムスリー取締役CTO / VPoP)、以下エムスリーテクノロジーズ)を2024年4月1日に設立します。 エムスリーは「インターネットを活用し、健康で楽しく長生きする人を1人でも増やし、不必要な医療コストを1円でも減らすこと」をミッションに掲げ、様々な事業を展開しています。国内では2009年頃より積極的にM&Aを実施しており、2023年3月時点で、132社のグループ会社を有しています。エムスリー本体以外の売上が連結売上に占める割合も、2023年3月時点で76%にのぼり、エムスリーグループの企業価値向上に寄与する大きなアセットとなっています。 これまでもエムスリーではエンジニアリンググループに所属するグループ会社支援チームを中心

                                                                            グループ会社支援を目的とした開発支援専門会社|エムスリーテクノロジーズ株式会社を設立
                                                                          • 【終了しました】はてな匿名ダイアリーに「ビッグ検索」機能をリリースしました - はてラボ 開発者ブログ

                                                                            4月2日 追記:はてな匿名ダイアリーの「ビッグ検索」機能を終了します 2024年4月1日にリリースした「ビッグ検索」機能の提供を終了します。 「ビッグ検索」は24時間の長きにわたり、ご利用の皆様のビッグな疑問に答えてまいりましたが、あまりにも巨大な検索フォームを維持・運用することが困難となってまいりました。空間効率の有効利用、また持続可能性の観点からサービス提供を終了させていただくことになりました。 ご利用の皆様には申し訳ありませんがご理解、ご了承のほどよろしくお願いいたします。 なお、「ビッグ検索」と同時に実装されました「はてな匿名ダイアリー全文検索機能」は引き続きご利用いただけます。 本文 本日2024年4月1日、はてな匿名ダイアリーに「ビッグ検索」機能をリリースしました。 はてな匿名ダイアリーは、2006年から「名前を隠して楽しく日記。」をモットーに運営してまいりました。匿名という敷

                                                                              【終了しました】はてな匿名ダイアリーに「ビッグ検索」機能をリリースしました - はてラボ 開発者ブログ
                                                                            • AWS ECS Fargateは1分間にいくつまで数えられるか-Linux/ARM64とLinux/X86_64の性能比較

                                                                              AWS Graviton2 プロセッサは、64 ビットの Arm Neoverse コアを使用してアマゾンウェブサービスがカスタムビルドしたもので、Graviton2 を搭載した Fargate は、同等のインテル x86 ベースの Fargate に比べて、最大 40% の料金性能向上と 20% の低コストを実現し、

                                                                                AWS ECS Fargateは1分間にいくつまで数えられるか-Linux/ARM64とLinux/X86_64の性能比較
                                                                              • DBセキュリティ性能検証「検証と結果」編 - RAKUS Developers Blog | ラクス エンジニアブログ

                                                                                ※注意:本記事内での計測結果は記載の条件下によるものとなります。異なる環境においては異なる結果が予想されますのでご認識ください。 こんにちは。 株式会社ラクスにて、主に先行技術検証を担当している「技術推進課」という部署に所属している鈴木(@moomooya)です。 ラクスの開発部ではこれまで社内で利用していなかった技術要素を自社の開発に適合するか検証し、ビジネス要求に対して迅速に応えられるようにそなえる 「技術推進プロジェクト」というプロジェクトがあります。 このプロジェクトで「DBセキュリティ」にまつわる検証を行なったので、その報告を共有しようかと思います。 今回はDBセキュリティの中でも、DBデータの暗号化の話が中心となります。 ちなみに中間報告時点で公開した記事はこちらになります。 tech-blog.rakus.co.jp DBセキュリティについて 本記事におけるDBセキュリティ

                                                                                  DBセキュリティ性能検証「検証と結果」編 - RAKUS Developers Blog | ラクス エンジニアブログ
                                                                                • チーム内勉強会はじめました。 - エムスリーテックブログ

                                                                                  こんにちは、エムスリーエンジニアリンググループ/ BIR(Business Intelligence and Research) チーム の遠藤(@en_ken)です。 エムスリーでは、隔週LT大会であるところのTach Talkや、自発的なチーム横断勉強会など、技術交流の取り組みが活発です*1。 私たちのチームでは、そこに加えて新たな取り組みとして「チーム内勉強会」を今年の1月から始めました。今回はこちらの取り組みについて紹介します。 「エムスリーエンジニアリンググループのチーム内勉強会」のAI生成画像です 勉強会の枠組み 勉強会というと、テーマとなる書籍を決めてみんなで読み進めていく輪読会のようなものが一般的かもしれませんが、この勉強会は全員で1つのテーマを進めていく形式は取っていません。 各メンバーが順番に担当します。 各メンバーがやりたい内容を自由に発表します。 毎週1時間の枠を設

                                                                                    チーム内勉強会はじめました。 - エムスリーテックブログ