並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 2488件

新着順 人気順

benchmarkの検索結果1 - 40 件 / 2488件

  • 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クエリがパーサを通過した後、次にクエリの最適化を行うのが「オプティマイザ」です。オプティマイザの主な役割

        クエリのパフォーマンスチューニングの第一歩。実行計画や統計情報について入門する
      • Goで作ったシステムをRubyでリプレイスすることを検討してみた

        はじめに 弊社にはGoで作ったシステムが存在しますが、作られてから数年が経過して、メンテナンスも十分にできていない状況でした。 そこで、このシステムをリファクタリングして生産性を上げようという結論になりました。 リファクタリングにあたり、Goのままで行くのか、弊社でよく使われているRubyで行くのかを検討してみましたので、その過程を紹介したいと思います。 Rubyでリプレイスしようと思った理由 Goで動いてて言語やライブラリのバージョンアップなどメンテナンスがされてない部分はありますが、 そこを解消すればGoのままで行った方が良いのでは?と思うかもしれません。 しかし、あえてRubyでリプレイスしようと思うに至ったのは以下の点があります。 Rubyの方が開発速度があがりそう Goのリファクタリングをするのに時間がかかりそう Goのリファクタリングと機能追加でコード修正箇所が被るとスケジュー

          Goで作ったシステムをRubyでリプレイスすることを検討してみた
        • 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
            • 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
                  • Ruby might be faster than you think - John Hawthorn

                    I saw a project a couple weeks back which allows writing and running Crystal methods inline inside a Ruby file. It’s a neat project, and I don’t want to take away from it but something in the README example looked off to me. require 'crystalruby' require 'benchmark' module Fibonnaci crystalize [n: :int32] => :int32 def fib_cr(n) a = 0 b = 1 n.times { a, b = b, a + b } a end module_function def fib

                    • 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
                          • 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

                              • HEDTからエントリーCPUまで28製品を一斉比較!基本性能からゲーム/エンコード/電力効率もチェック【PCパーツ100選 2024 CPU編・CPU定点観測所 特別編】 DOS/V POWER REPORT 2024年冬号の記事を丸ごと掲載!

                                  HEDTからエントリーCPUまで28製品を一斉比較!基本性能からゲーム/エンコード/電力効率もチェック【PCパーツ100選 2024 CPU編・CPU定点観測所 特別編】 DOS/V POWER REPORT 2024年冬号の記事を丸ごと掲載!
                                • 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

                                      • 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の性能を測定可能
                                                  • 日本だけ実質賃金が横ばい…「もっと労働生産性を上げろ!」と主張する人たちに見てもらいたい国際比較グラフがこちら

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

                                                      日本だけ実質賃金が横ばい…「もっと労働生産性を上げろ!」と主張する人たちに見てもらいたい国際比較グラフがこちら
                                                    • 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
                                                              • 【終了しました】はてな匿名ダイアリーに「ビッグ検索」機能をリリースしました - はてラボ 開発者ブログ

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

                                                                  【終了しました】はてな匿名ダイアリーに「ビッグ検索」機能をリリースしました - はてラボ 開発者ブログ
                                                                • DBセキュリティ性能検証「検証と結果」編 - RAKUS Developers Blog | ラクス エンジニアブログ

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

                                                                    DBセキュリティ性能検証「検証と結果」編 - RAKUS Developers Blog | ラクス エンジニアブログ
                                                                  • 次に来るのはモチパ

                                                                    風呂でふと思いついたんだが、これまでのなんたらパフォーマンスって、自分が使えるなんたらの節約じゃないか? コストパフォーマンスって可処分資産の節約だろ。 タイムパフォーマンスって可処分時間の節約だろ。 それで考えると、あと節約したくなるものってあれしかないだろ。自分の心の余裕、可処分精神しかないだろ。(どうでもいいけど、マインドシェアって言う奴マジで居なくなったよな) それで考え直すと、上の2つは可処分精神の節約に内包されてるんじゃないのか。 コスパがいい→「値段高!ただでさえ金がないのに、こんなに金掛かるのかよ!」というイライラに思考を取られない タイパがいい→「動画長い!ただでさえ時間がないのに、こんなに待たされるのかよ!」というイライラに思考を取られない どっちも、イライラに思考を取られないのが良いんだろう。ならそれが主体だ。 ということでキャッチーな略称にしたいが、いい単語が全然見

                                                                      次に来るのはモチパ
                                                                    • フルスクラッチして理解するOpenID Connect (4) stateとnonce編 - エムスリーテックブログ

                                                                      こんにちは。デジカルチームの末永(asmsuechan)です。この記事は「フルスクラッチして理解するOpenID Connect」の4記事目です。前回はこちら。 www.m3tech.blog 13 state の実装 14 nonce の実装 15 まとめ 16 参考 Wre're hiring! 今回は全4回中の第4回目です。 (1) 認可エンドポイント編 (2) トークンエンドポイント編 (3) JWT編 (4) stateとnonce編 13 state の実装 https://openid-foundation-japan.github.io/rfc6819.ja.html#anchor15 https://openid-foundation-japan.github.io/rfc6749.ja.html#CSRF state は OAuth 由来の仕様です。つまりアクセストーク

                                                                        フルスクラッチして理解するOpenID Connect (4) stateとnonce編 - エムスリーテックブログ
                                                                      • Aurora MySQL におけるロック競合(ブロッキング)の原因を事後調査できる仕組みを作った話

                                                                        こんにちは。 DBRE チーム所属の @p2sk です。 DBRE(Database Reliability Engineering)チームでは、横断組織としてデータベースに関する課題解決や、組織のアジリティとガバナンスのバランスを取るためのプラットフォーム開発などを行なっております。DBRE は比較的新しい概念で、DBRE という組織がある会社も少なく、あったとしても取り組んでいる内容や考え方が異なるような、発展途上の非常に面白い領域です。 弊社における DBRE チーム発足の背景やチームの役割については「KTC における DBRE の必要性」というテックブログをご覧ください。 本記事では、Aurora MySQL でロック競合(ブロッキング)起因のタイムアウトエラーが発生した際に根本原因を特定することができなかったので、原因を後追いするために必要な情報を定期的に収集する仕組みを構築した

                                                                        • romgrk

                                                                          I often feel like javascript code in general runs much slower than it could, simply because it’s not optimized properly. Here is a summary of common optimization techniques I’ve found useful. Note that the tradeoff for performance is often readability, so the question of when to go for performance versus readability is a question left to the reader. I’ll also note that talking about optimization n

                                                                          • インデックスを理解したい - Qiita

                                                                            はじめに みなさんはDBのインデックスを正しく使えていますか? 私はなんとなく「DBのパフォーマンスを向上するためのもの」という認識はあったのですが、 どのような場面で使うものなのか、逆にどのような場面では使うべきでないのかなど 明確に理解できていませんでした。 今回はそんなインデックスについての理解を深めたいと思います。 インデックスとは インデックスとは、その名の通り「索引」です。 表現の仕方と変えると、(x, a)という形式の配列であるとも言えます。 xというキー値とそれに結びつくaというデータ情報があり、 これを利用することですべてのデータを網羅して見ることなく、 まさに本の索引のように目的のデータにたどり着くことができます。 インデックスはSQLのパフォーマンスを改善するための非常にポピュラーな手段であり、 理由としては下記の3点が挙げられます。 アプリケーションのコードに影響を

                                                                              インデックスを理解したい - Qiita
                                                                            • NVIDIA、1パッケージに2ダイの新型GPU「Blackwell」。AI性能は学習4倍、推論30倍に

                                                                                NVIDIA、1パッケージに2ダイの新型GPU「Blackwell」。AI性能は学習4倍、推論30倍に
                                                                              • Rails 7.1 + Ruby 3.3 で YJIT を有効化してパフォーマンス改善を行った結果

                                                                                この記事の概要 こんにちは。PharmaX でエンジニアをしている諸岡(@hakoten)です。 この記事では、薬局DX事業部のバックエンドで採用しているRuby on Railsのアプリケーションについて、Rubyバージョンを3.3にアップグレードし、YJITを有効化した結果、どのようにパフォーマンスが向上したかをご紹介します。 現在のRuby on Railsのバージョンは、「7.1.3」になります。 YJITについての簡単な説明 YJITとは、CRuby内部に組み込まれた軽量のJIT機能で、遅延コード生成を行い、必要なメソッドを部分的にコンパイルすることで高速化を図る仕組みです。 (処理系は詳しくないため、ざっくりになってしまいすみません。。) Ruby 3系列の主要な機能の一つであり、3.1で導入され、3.2で正式にサポートされ、3.3においてさらに安定化が行われています。 詳しい

                                                                                  Rails 7.1 + Ruby 3.3 で YJIT を有効化してパフォーマンス改善を行った結果
                                                                                • MySQL(InnoDB)のSQLパフォーマンスチューニングのエッセンス

                                                                                  はじめに MySQL(InnoDB)でSQLのパフォーマンスチューニングをするときに役に立つ知識をエッセンスとしてまとめました。結合(JOIN)やB-treeインデックスの探索の仕組み、実行計画の基本的な見方を紹介します。 想定する読者は、SQLのパフォーマンスを改善する必要があるが実行計画をみてもいまいちピンと来ない方です。インデックスの作成の経験や、複合インデックスやカーディナリティの知識があることを前提にしています。目標は、実行計画の内容がよく分からない読者が、実行計画をみただけでクエリが実行される様子をイメージでき、自信を持ってクエリの改善にあたることができるようにすることです。 ストレージエンジンはInnoDBを前提としています。また、インデックスはB-treeインデックスを想定しています。全文検索の転置インデックスや空間検索のR-treeインデックスについては触れません。 イン

                                                                                    MySQL(InnoDB)のSQLパフォーマンスチューニングのエッセンス