並び順

ブックマーク数

期間指定

  • から
  • まで

241 - 280 件 / 3320件

新着順 人気順

performanceの検索結果241 - 280 件 / 3320件

  • 高効率なSQLクエリの書き方 - Qiita

    概要 この記事では、SQLクエリをより効率的に記述するためのベストプラクティスとテクニックに焦点を当てています。データベースのクエリはシステム全体のパフォーマンスに直結するため、最適な書き方を知ることは重要です。インデックスの効果的な活用方法、適切な結合の選択、そして条件の効果的な書き方など、SQLの最適化に関する具体的な手法を解説します。各SQL文に関する実行計画の結果も掲載していますので、ぜひご確認ください。 なお、Oracle19cとOracle12cでの利用実績がありますが、他のデータベースやバージョンにおいての検証は行っておりません。 新しい情報は随時追加されますので、お楽しみにしてください。 SQLの最適化に関連する基本的なアイデア 以下の通りと考えています。 1.インデックスの利用 2.正しいJOINの選択 INNER JOIN、LEFT JOIN、RIGHT JOINなど、

      高効率なSQLクエリの書き方 - Qiita
    • Mojo 🔥

      先日プログラミング言語 Mojo と呼ばれるもののアナウンスメントがあった。この言語のデザインが私のスイートスポットに刺さる感じだったので、今のうちから注目している。使いたいなというか、将来使うことになりそうな言語なので簡単に何ができそうかを調査してまとめておきたい。 ウリとしては「C 並のパフォーマンスが出る Python」といったところだろうか。 k0kubun さんからコメントを裏でもらって、これって要するに並列化とか SIMD 化とか入れたら35,000倍のパフォーマンスが出るようだけど、これは Python の部分とは呼べなくて、素の Python 動かして本当にそういえるかは怪しくない?とのことで、判断保留します 🙇🏻‍♀️ k0kubun さんありがとう 言語のデザインとしては、AI 開発に向けたプログラミングを提供できるよう設計されていると感じる。表側は Python

        Mojo 🔥
      • 目標から逆算し、先回りされると意欲を奪われる|shinshinohara

        私の塾は基本、成績のあまりよろしくない生徒が来ていたのだけれど、たまに勘違い(?)した親が、ものすごく成績の良い子を連れてきて「お願いします」と言ってくる場合があった。中学受験に失敗し、高校受験で挽回したい、という熱意を母親が持っていた。面接のとき、母親は子どもに語りかけた。 「あなた、同級生の○○ちゃんが合格して、泣いて悔しがったでしょう?高校受験で挽回する、って誓ったじゃない!?○○ちゃんは今頃頑張っているよ。負けていられないわよ」子どもはうなづきつつも、またその話か、といった、辟易とした顔をした。 不合格だった時は、本人も口にしてその通りのことを言ったのだろう。けれど、それを言質に取られて、母親からヤイノヤイノと急き立てられる毎日に、ほとほと疲れ切った様子だった。塾以外の時間も勉強漬けにされ、中学1年なのに眉間に険が走っていた。大の勉強嫌いになってしまっていた。 自分の親とはいえ、他

          目標から逆算し、先回りされると意欲を奪われる|shinshinohara
        • 実録パフォーマンス改善 - 高速化のためアーキテクチャやアルゴリズム選択から見直すSansanの事例 - エンジニアHub|Webエンジニアのキャリアを考える!

          実録パフォーマンス改善 - 高速化のためアーキテクチャやアルゴリズム選択から見直すSansanの事例 インフラの特性をふまえ、ミドルウェアの挙動を理解し、プロファイリングによってボトルネックを把握し、要求に合ったアーキテクチャを選択する。そういった工夫を重ねることでアプリケーションのパフォーマンスを改善する事例を、Sansanの千田智己さんに聞きました。 アプリケーションの設計・実装方法を変えることで、性能が格段に向上するケースは数多くあります。有名IT企業のエンジニアは、どのような方針のもとでアーキテクチャあるいはアルゴリズム選択などでパフォーマンスを改善しているのでしょうか? 法人向けクラウド名刺管理サービス「Sansan」や個人向け名刺アプリ「Eight」を提供するSansan株式会社の千田智己さんに、これまで取り組んできた事例と、そのノウハウを教えていただきました。 千田 智己(せ

            実録パフォーマンス改善 - 高速化のためアーキテクチャやアルゴリズム選択から見直すSansanの事例 - エンジニアHub|Webエンジニアのキャリアを考える!
          • 「Web 技術解体新書」執筆について

            「Web 技術解体新書」執筆について Intro 「Web 技術解体新書(Web Anatomia)」という書籍の執筆と、 zenn 上での販売についてアナウンスします。 各章を分割して執筆し公開していく予定です。 第一章: Origin 解体新書 Web 技術解体新書とは Web というものを正しく理解するために必要な知識や技術は日増しに増え、それに従い学ぶためのコストもかなり上がってきています。 一方で、多くの書籍や雑誌、 Web 上の記事、動画や音声コンテンツは充実しており、学ぶための手段もかなり広がっています。 しかし、 Web に関わる技術書籍の多くは、何らかのフレームワークの解説や、 JS/CSS などの特定技術、特定の非機能要件に特化したものが多く、(その括りの曖昧さ故) Web という括りで書かれたものはあまりありません。 あったとしても、多くは初心者向けなものが多く、ある

              「Web 技術解体新書」執筆について
            • 「結局HDDは何年間壊れずに動いてくれるのか?」をHDD故障率レポートで知られるBackblazeが解説

              例年「HDD/SSD故障率レポート」を公開していることでも知られるBackblazeが、同社が運用するHDDの総容量から、「そもそも故障率とは何なのか?」「バスタブ曲線とは何なのか?」「HDDは何年間使えるものなのか?」について解説しています。 How Long Do Disk Drives Last? https://www.backblaze.com/blog/how-long-do-disk-drives-last/ Backblazeは堅牢(けんろう)でスケーラブルながらも低コストというクラウドバックアップおよびストレージサービスを提供する企業で、その公式ページを見ると、50億個のファイルを900ペタバイト(90万テラバイト)も保存しているとアピールされています。 最高の無制限オンラインバックアップおよびクラウドストレージサービス https://www.backblaze.com

                「結局HDDは何年間壊れずに動いてくれるのか?」をHDD故障率レポートで知られるBackblazeが解説
              • node_modulesの問題点とその歴史 npm, yarnとpnpm

                皆さんnpmパッケージのバージョンを上げるときにハマって依存地獄から抜けられなかったことはありませんか? 私はあります。 複雑怪奇な依存関係を調べてみようとnode_modulesを覗いてみて、そのカオスっぷりに臭いものに蓋をしたことはありませんか? 私はあります。 そこでnode_modules以下について調べてみたのですが、node_modulesにどんな問題点があって、npmやyarn, pnpmは何を目指していたのか時系列順に紐解いた方がわかりやすいことに気づきました。 ここでは初期のnpmが抱えていた問題から今に至るまでを順を追って説明します。 するとnode_modulesの仕組みの他に、各パッケージマネージャの方針の違いが見えてくるはずです。 初期の頃のnpm (~2015年以前) この頃はシンプルで、依存関係はそのままnode_modulesのディレクトリ構造に反映されてい

                  node_modulesの問題点とその歴史 npm, yarnとpnpm
                • はじめに|図解 DB インデックス

                    はじめに|図解 DB インデックス
                  • CSSの新しいプロパティ「content-visibility」レンダリングのパフォーマンスが向上する

                    Webページのパフォーマンスを向上させることは、CSSでも可能です。去年の暮れからChromeで利用できるようになったCSSの新しいプロパティで、2021年現在Edge, Operaにもサポートされています。 読み込みパフォーマンスを向上させるために最も効果があるCSSの新しいプロパティcontent-visibilityについて紹介します。 content-visibility: the new CSS property that boosts your rendering performance by Una Kravets, Vladimir Levin 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに content-visibilityのサポート状況 CSS Containmentとは content-visi

                      CSSの新しいプロパティ「content-visibility」レンダリングのパフォーマンスが向上する
                    • BPF Performance Toolsを読んだ感想 - go_vargoのブログ

                      BPF Performance Toolsを読んだので、感想ブログです。 先に感想を言っておくと「最高」でした。 BPF Performance Toolsとは? NetflixでKernel・パフォーマンスにかかわるチューニング・アーキテクチャを専門にしているBrendan Greggさんが書いた本です。BPFのiovisorというTracing分野の第一人者でもあります。 www.brendangregg.com 2019年12月に発売したばかりなので、BPFの分野では最新の本でしょう。他の著書に有名な本として(日本語版の)「詳解システム・パフォーマンス」があります。 BPF Performance Toolsは「詳解システム・パフォーマンス」第二弾と言えるかもしれません。ちなみにページ数は880Pあり、Kindleで表示される読み終わるための平均的な時間は「27時間30分」で、大作R

                        BPF Performance Toolsを読んだ感想 - go_vargoのブログ
                      • 「もうさばき切れない」アクセスが激増したECプラットフォームにおける負荷対策 - BASEプロダクトチームブログ

                        はじめに CTOの川口 (id:dmnlk) です。 5月にオンラインmeetupをさせて頂きその中で「具体的な負荷対策に関しては開発ブログで!」と言っていた件ですが気づいたらもう9月になりかけていました。 コロナ禍においてネットショップ作成サービス「BASE」の利用者様が急増しました。 www.nikkei.com 5 月には 100 万ショップを超えるショップオーナー様にご利用していただいております。 今まで EC 事業を行っていなかった飲食店様や様々な業種の方が利用をはじめていただき、ショップオーナー様も購入者様共に短期の見通しでは想定をしていないアクセスが発生しました。 その途中でシステムとして対応しきれない面もあり、アクセス負荷によるサービスの不安定を招き皆様にはご不便や販売時間を変更していただくお願いなどをしてしまい大変申し訳ありませんでした。 現在では安定しておりますが、その

                          「もうさばき切れない」アクセスが激増したECプラットフォームにおける負荷対策 - BASEプロダクトチームブログ
                        • JVMのヒープサイズとコンテナ時代のチューニング | Folioscope

                          最近 JVM のヒープ領域とパラメータ、そしてコンテナの関係について調べてました。 案外まとまった情報が少なかったので簡単にまとめました。 Java のヒープサイズを設定 まずは Java のヒープサイズについて簡単なおさらいです。 本番環境で Java アプリケーションを運用する上で、JVM のヒープサイズを決定するのは非常に大事なポイントです。 ヒープ領域の最大サイズを大きくすればガベージコレクション (GC) の回数は減らすことができますが、 必要以上に大きくしすぎると無駄にリソースを消費したり、OOM killer で OS にプロセスを終了させられます。 JVM が使用できるヒープサイズは、Java API の Runtime.getRuntime().maxMemory() で確認できます。 また java の起動オプションに -XX:+PrintFlagsFinal オプショ

                          • MySQL 5.7 から 8.0 にしたらテストが激遅になった - Qiita

                            この記事は、株式会社カオナビ Advent Calendar 2023 の3日目です。 はじめに 株式会社カオナビの高橋(@kunit)です。 今回は MySQL バージョンアップ(5.7 -> 8.0) で起きた問題とそれに対してどのように対処したのかを書いていこうと思います。 何が起きたのか MySQL 5.7 から 8.0 にバージョンアップをするにあたって、CI およびローカル環境でテストができるように MySQL 8.0 のイメージを作成し、それをつかって各機能の担当者にテストを開始してもらっていたのですが、以下のような事が起きました。 接続を MySQL 5.7 から 8.0 に切り替えただけでテストの時間が3倍くらいかかるようになった そこを変更するだけで3倍遅くなるってやばいぞということで報告してくれた担当者と同じテストを自分でも実施してみると再現性があり、それが以下のどの

                              MySQL 5.7 から 8.0 にしたらテストが激遅になった - Qiita
                            • サンリオ来場者が言葉を失い茫然としたVTuberキヌのVRパフォーマンス 現場では何が起きていたのか?

                              Home » サンリオ来場者が言葉を失い茫然としたVTuberキヌのVRパフォーマンス 現場では何が起きていたのか? サンリオ来場者が言葉を失い茫然としたVTuberキヌのVRパフォーマンス 現場では何が起きていたのか? 12月11日(土)12日(日)の2日間にかけて行われたサンリオの公式バーチャルイベント「SANRIO Virtual FES」。その無料ライブのひとつとして行われたVTuberキヌさんのパフォーマンスが、体験した来場者たちの大きな話題となっています。著者もその現場に立ち会い、あまりの出来事に涙してしまったほど。今回は現場で一体何が起きたのか、その一部を紹介します。 そのパフォーマンスが行われたのは、無料エリア「B4 CHILL PARK」。20時半ちょうどになると、キヌさんの顔のアイコンが画面に登場し、これから行われるパフォーマンスについてアナウンスが行われました。 しか

                                サンリオ来場者が言葉を失い茫然としたVTuberキヌのVRパフォーマンス 現場では何が起きていたのか?
                              • 人気順検索のSolrはスケールのためにディスクを捨てた - クックパッド開発者ブログ

                                技術部クックパッドサービス基盤グループの id:koba789 です。 昨年まではデータ基盤グループというところで 最新のログもすぐクエリできる速くて容量無限の最強ログ基盤 を作ったりしていました。 今年はちょっとチームを移動しまして、検索システムをいじっていました。今回はそのお話です。 なお、クックパッドには様々な検索システムがありますが、この記事では説明を簡単にするためにレシピの検索のみに焦点をあてています。 クックパッドの検索システムにあった課題 クックパッドにはレシピを検索できる機能があります。 プレミアム会員限定の人気順検索もこの機能の一部です。 しかし、この重要な機能を支える検索システムにはいくつもの課題がありました。 Solr が古すぎる クックパッドでは、レシピ検索を含む多くの検索機能にSolrを用いています。 今年の始めに私がこの課題に取り組み始めた時点では、その Sol

                                  人気順検索のSolrはスケールのためにディスクを捨てた - クックパッド開発者ブログ
                                • 本気か?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」と主張。 - すまほん!!
                                  • コーディングインタビューの対策とその意義 (1/2) - 16bitのメモランダム

                                    1.コーディングインタビューとは何か コーディングインタビュー(Coding Interview、またはProgramming Interview)とは、1時間ほどの制限時間内に小さなプログラミング問題を解かせる面接形式のことをいう。プログラマー、またはデータサイエンティストなどの採用試験として、米国を含むいくつかの国で用いられている。「物理的なホワイトボード上にプログラムを書く」という形式で実施されることが多い。「オンライン上の共有エディタで書く」といった形式のこともある。Googleなどは自社のYoutubeチャンネル動画でも説明している。 出題される問題としては、例えば、「複数の数字numbersと整数kが与えられたとき、合計がkとなる数字の組を1つ出力せよ」といったものがある。この問題は有名なので通称が付いており、Two Sumと呼ばれる。 Two Sumの一例。与えられた数値の並

                                      コーディングインタビューの対策とその意義 (1/2) - 16bitのメモランダム
                                    • 「達人が教えるWebパフォーマンスチューニング 〜ISUCONから学ぶ高速化の実践」を執筆しました - 酒日記 はてな支店

                                      「達人が教えるWebパフォーマンスチューニング 〜ISUCONから学ぶ高速化の実践」という本を6名の共著で執筆しました。技術評論社さんから、2022年6月4日発売予定です。電子版もでます。 gihyo.jp Amazon はこちら。 達人が教えるWebパフォーマンスチューニング 〜ISUCONから学ぶ高速化の実践 作者:藤原 俊一郎,馬場 俊彰,中西 建登,長野 雅広,金子 達哉,草野 翔技術評論社Amazon タイトルの通り、ISUCON で出題されるようなWebサービスを例にして、Webサービスのサーバーサイドパフォーマンスチューニングを指南する内容です。通称「ISUCON本」と呼んでください。 2020年の末に、技術評論社さんからWebサービス高速化 × ISUCONに関する書籍を執筆しませんか、と藤原までお誘いをいただいたのが発端でした。 書きたい気持ちはあったものの、内容的にとて

                                        「達人が教えるWebパフォーマンスチューニング 〜ISUCONから学ぶ高速化の実践」を執筆しました - 酒日記 はてな支店
                                      • RDBアンチパターンと戦う - 削除フラグ 完全攻略ガイド / delete flag

                                        PHPカンファレンス関西の登壇資料です。 WEB+DB PRESS Vol.134に詳細があります https://gihyo.jp/magazine/wdpress/archive/2023/vol134

                                          RDBアンチパターンと戦う - 削除フラグ 完全攻略ガイド / delete flag
                                        • 2020年やったこと、考えたこと、触った技術のまとめ - mizchi's blog

                                          今年の本業は、 3rd party script で、そこから呼ぶウィジェットを最適化するコンパイラを書く、その仕様を考えて、実装するという感じだった。要は Google Analytics と、最適化コンパイラ付き GTM みたいなものを作っていた。その内容は以下に書いた。 サードパーティスクリプトの極限環境向け Svelte パフォーマンス改善に Core WebVitals という大義名分を得た 今年は、 パフォーマンスのエンジニアをやっていた、と思う。サードパーティスクリプトの配信を生業にする会社のエンジニアとしては、来年の Core WebVitals というパフォーマンス関連の大きな変化で、波にのってやりたいことがやれたと思う。 Core WebVitals の導入で実際にどれぐらいの影響がでるか不明だが、パフォーマンスが SEO に影響する、というのは、 若干やりすぎと思いつ

                                            2020年やったこと、考えたこと、触った技術のまとめ - mizchi's blog
                                          • 「強いメモリモデル」と「弱いメモリモデル」 - yamasaのネタ帳

                                            Apple M1についての面白い記事を見かけて、久しぶりにメモリモデル屋(?)の血が騒いだのでブログを書く。 note.com 強いメモリモデル 現代のCPUアーキテクチャでは、x86(64bit, 32bitどちらも)が「強いメモリモデル」を採用しており、それ以外のメジャーなCPUが「弱いメモリモデル」を採用している。この「強いメモリモデル」「弱いメモリモデル」について、まずおさらいしておこう。 以下のように、2つの変数a, bに対して異なるCPUコアが同時にアクセスしたとする。 int a = 0; int b = 0; CPU1: a = 1; b = 1; CPU2: int r1 = b; int r2 = a; (上記はC言語に似た疑似コードを用いているが、実際は機械語命令になっていると考えてほしい。つまり、CPU1は変数a, bの示すメモリアドレスに対するストア命令を実行して

                                              「強いメモリモデル」と「弱いメモリモデル」 - yamasaのネタ帳
                                            • OpenAI Cookbook

                                              Processing and narrating a video with GPT's visual capabilities and the TTS API

                                                OpenAI Cookbook
                                              • 1文字でSQLを200倍遅くする方法

                                                こんにちは、19のSysAd班の翠(sappi_red)です。普段はtraQのフロントエンドの保守を行ったりしています。 こんばんは、19のSysAd班のtemmaです。普段は普段どおりのことをしています。この記事の面白い部分はすべて僕が書いています。面白くないところは翠君が書いています。 この記事では、日々パフォーマンスに頭を悩ませる開発者の方のために、ワンタッチで劇遅SQLを200倍高速でキュートなSQLに劇的ビフォーアフターする方法を紹介します。 「おいおいおい、遅くしたくて記事を読み始めたのに話が違うじゃないか💢」と思ってるそこのあなた👈 早くできるということは遅くもできるんですね。 TL;DR ここにテーブルがあります。 CREATE TABLE messages ( id CHAR(36) NOT NULL PRIMARY KEY, text TEXT COLLATE ut

                                                  1文字でSQLを200倍遅くする方法
                                                • 阿部寛のホームページをさらに高速化した猛者現る 35%の高速化に成功し速度制限未満でも一瞬で表示可能に

                                                  シンプルな構成により爆速で表示されることで有名な阿部寛のホームページですが、さまざまな技術を駆使してさらに35%の高速化を実現した動画が人気です。ぜひ本家サイトでも取り入れてほしい改善策。 まだ高速化の余地が……!? この動画を公開したのは、コスメティック田中さん(YouTube/Twitter)。動画によると、阿部寛のホームページがホームページビルダーというやや古いソフトで作られているなど、近代的な技術を駆使すれば改善できる余地が見られることを発見し、高速化に乗り出したそうです。 今回実施する高速化 この2点を改善していきます 最初に実施した高速化は、サイトの通信速度の改善から。CDNという技術で通信速度を上げる技術を使用するため、AmazonのCloudFrontにファイルをそのままアップロードして、コピーの阿部寛のホームページを作成しました。 ファイルをアップロードします このCDN

                                                    阿部寛のホームページをさらに高速化した猛者現る 35%の高速化に成功し速度制限未満でも一瞬で表示可能に
                                                  • プログラムの実行時間を99%短縮した「たった1行のコード」とは?

                                                    プログラムの実行速度やウェブサイトの表示速度は、たった数秒の改善でも多くのエンジニアたちの苦心を必要としますが、時として拍子抜けするほどにあっけなく、かつ劇的な改善がなされる場合もあります。画像共有サービスのPinterestが自社のブログで「たった1行の変更でコードの実行時間を99%短縮した」事例を紹介しています。 How a one line change decreased our build times by 99% | by Pinterest Engineering | Pinterest Engineering Blog | Oct, 2020 | Medium https://medium.com/pinterest-engineering/how-a-one-line-change-decreased-our-build-times-by-99-b98453265370

                                                      プログラムの実行時間を99%短縮した「たった1行のコード」とは?
                                                    • OSやエクスプローラーが軽くなる? 「エクスプローラ周り重い人向け覚書」が人気/「はてブ」は1,600以上、有志によるバッチファイルも【やじうまの杜】

                                                        OSやエクスプローラーが軽くなる? 「エクスプローラ周り重い人向け覚書」が人気/「はてブ」は1,600以上、有志によるバッチファイルも【やじうまの杜】
                                                      • CSSを最適化してページの読み込み時間を高速化する方法

                                                        CSSを最適化して、ページの読み込み時間を高速化する方法を紹介します。 シンプルなCSSのファイルをはじめ、大規模プロジェクトで使用されるCSSまで、すべてのCSSに効果があるテクニックです。 Optimizing CSS for faster page loads by Tomas Pustelnik 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに 読み込みに時間がかかるのはなぜか? スタイルシートのファイルサイズを制限する クリティカルCSSを使用する 遅延読み込みのスタイルシート スタイルシートにコード分割を使用する まとめ はじめに 先日、私は自分のWebサイトの読み込み時間を改善することにしました。すでにかなり高速にロードされていましたが、まだ改善の余地があり、CSSの読み込みがその原因の1つであることが分か

                                                          CSSを最適化してページの読み込み時間を高速化する方法
                                                        • Windows 95ではマウスカーソルをぐるぐると動かすと処理速度が早くなることがあった

                                                          by Marcin Wichary 1995年にリリースされたMicrosoftのWindows 95は、Windowsとしては初めてコマンドプロンプトに依存せずグラフィカルユーザーインターフェース(GUI)ベースで操作できるOSで、一般家庭へのPC普及に一役買ったといわれています。そんなWindows 95について、海外のQ&AサイトであるStackExchangeで「Windows 95ではマウスカーソルを動かすと処理速度が上がったのはなぜですか?」という質問が投稿されました。 Why did moving the mouse cursor cause Windows 95 to run more quickly? - Retrocomputing Stack Exchange https://retrocomputing.stackexchange.com/posts/11533/r

                                                            Windows 95ではマウスカーソルをぐるぐると動かすと処理速度が早くなることがあった
                                                          • 「充電池より使い捨ての方が高性能」「単三電池は重い電池ほど長持ち」など単三アルカリ電池に関する俗説を徹底検証した結果が公開中

                                                            量販店の店頭やネットショップで電池を買おうとして、どれがいいのか迷ってしまった経験がある人は多いはず。アルカリ電池は、マンガン電池に比べて長時間安定した電圧・電流を維持できるので、特に一般的な規格の単三アルカリ電池は懐中電灯や携帯オーディオ機器、おもちゃやゲームのコントローラーなど幅広い製品の動力源となっています。そこで、太陽光発電や電化製品の専門家が、市販されているさまざまな単三アルカリ電池や充電池の性能を実際に計測して、その分析結果を公開しました。 Great AA Alkaline Battery Test – Pt 1: Battery Testing Fundamentals | Gough's Tech Zone https://goughlui.com/2016/12/19/great-aa-alkaline-battery-test-pt-1-battery-testing

                                                              「充電池より使い捨ての方が高性能」「単三電池は重い電池ほど長持ち」など単三アルカリ電池に関する俗説を徹底検証した結果が公開中
                                                            • 開発者が知るべきキャッシュ設計でよく遭遇する問題

                                                              はじめに 分散システムの設計および開発において、キャッシュはパフォーマンス向上のための非常に重要な要素です。頻繁にアクセスされるデータをキャッシュすることで、アクセス速度が遅いデータベースへのアクセスを削減し、データへの迅速なアクセスを可能にします。これにより、システムの全体的な効率とパフォーマンスが向上します。 しかし、キャッシュは慎重に設計しないとむしろパフォーマンス上のデメリットになるケースが存在します。 この記事ではよく遭遇するキャッシュ設計の問題とその回避策について解説します。 Cache penetration DBに存在しない値を検索したときに、DBから返された空の結果をキャッシュしない場合に発生するシナリオです。 このシナリオではDBに存在しない値を繰り返し検索することにより、その値がキャッシュされていないため検索ごとにDBへのアクセスが必要になってしまいます。 存在しない

                                                                開発者が知るべきキャッシュ設計でよく遭遇する問題
                                                              • 秒間3万リクエストをkubernetesでさばく - Gunosy Tech Blog

                                                                こんにちは!スタンディングデスクを導入して快適な開発環境と運動不足の両方を解消できるようになったのではと感じている、広告技術部のUT@mocyutoです。 今回は半年ほどEKSを運用して秒間3万リクエストのトラフィックをさばくほどになりました。 秒間3万は広告システムだと割とあるとは思いますが、kubernetesでも運用できているので紹介しようと思います。 対象のEKSで構築したサービスは広告の配信サーバです。 広告配信サーバの要件として、まず50ms以内にレスポンスを返さなければいけません。 構築したk8sのレスポンスタイムの99パーセンタイルは10msほどで返せています。 以下は必要最小限のクラスタの構成図です。 全体像 API 弊社のサーバサイドはほぼGoで作られているので、例に漏れずGoで作られています。 pod構成はAPI、fluentd、envoyの サイドカーパターン です

                                                                  秒間3万リクエストをkubernetesでさばく - Gunosy Tech Blog
                                                                • 実装言語を「Go」から「Rust」に変更、ゲーマー向けチャットアプリ「Discord」の課題とは

                                                                  ゲーマー向けの無料音声テキストチャットアプリケーション「Discord」を開発、提供するDiscordは2020年2月5日(米国時間)、アプリケーションを支える基盤サービスの一つである「Read States」をRust言語で再実装し、その結果サービスのパフォーマンスが大幅に向上したと公式ブログで明らかにした。 Read StatesサービスはこれまでGo言語で実装されていた。それにもかかわらず、なぜRead StatesをRustで再実装しようとしたのか、どのように再実装したのか、再実装によってどのようにパフォーマンスが向上したかを解説した。 Rustで再実装した背景とは Read Statesサービスの目的は、Discordユーザーがどのチャンネルのどのメッセージを読んだのかを追跡することだ。つまり、ユーザーがDiscordに接続したり、メッセージを送信したり、メッセージを読んだりする

                                                                    実装言語を「Go」から「Rust」に変更、ゲーマー向けチャットアプリ「Discord」の課題とは
                                                                  • 2019年のAmazon Prime Day。AWS上の42万6000台相当のサーバや1900個のデータベースインスタンスなどで乗り切る

                                                                    2019年のAmazon Prime Day。AWS上の42万6000台相当のサーバや1900個のデータベースインスタンスなどで乗り切る Amazonは毎年、プライム会員向けのセールである「Amazon Prime Day」を開催しています。2019年のPrime Dayも、7月15日と16日の2日間行われました。 Amazon Prime Dayは世界各国で同じ日に行われているため、国ごとの時差はあるものの開催期間中はものすごい勢いでプライム会員がAmazonのECサイトにアクセスを繰り返します。Amazon Prime Dayが世界最大級のオンライントランザクションが発生するイベントであることに異論を唱える人はいないでしょう。 そのECサイトの基盤を支えているのがAmazon Web Services(AWS)です。 AWSのチーフエバンジェリストJeff Bar氏は、ブログ「Amaz

                                                                      2019年のAmazon Prime Day。AWS上の42万6000台相当のサーバや1900個のデータベースインスタンスなどで乗り切る
                                                                    • 「モノタロウの1900万商品を検索するElasticsearch構築運用事例」のポイント深掘り〜第50回 Elasticsearch勉強会後記〜 - MonotaRO Tech Blog

                                                                      こんにちは。 EC基盤グループ サーチチームの 山村です。 この記事は、 Elastic Stack (Elasticsearch) Advent Calendar 2022 の 23日目です。 2か月ほど前になりますが、2022年10月26日に実施された 第50回 Elasticsearch勉強会 で発表させていただきました。 私が外部での発表するのは、2016年6月のSolr勉強会 以来で、非常に緊張しました。 日々の業務にかまけて、ブログが後回しになっていたことで大変遅くなってしまいましたが、上記の発表で話した内容とスライド資料から、話したかったポイントを抜粋するとともに、勉強会で不足していた部分について補足をします。 当日、発表を終えたところで気が抜けてしまい、Twitter で頂いていた質問に満足に答えられませんでしたので、この場で補足説明を含めて出来るだけ回答したいと思います。

                                                                        「モノタロウの1900万商品を検索するElasticsearch構築運用事例」のポイント深掘り〜第50回 Elasticsearch勉強会後記〜 - MonotaRO Tech Blog
                                                                      • 画像の遅延読み込みにloading属性とJavaScriptを併用した最大限のパフォーマンスを発揮させる実装方法

                                                                        画像やiframeの遅延読み込みに使用するloading属性と非サポートブラウザ用にJavaScriptを併用した現代的なアプローチで、最大限のパフォーマンスを発揮させる実装方法を紹介します。 Best way to lazy load images for maximum performance by Adrian Bece 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに 遅延読み込みのloading属性とは 遅延読み込みの現代的なアプローチ パフォーマンスとLighthouseスコアの向上 最大のパフォーマンスを得るための画像最適化テクニック はじめに 画像の遅延読み込みは比較的簡単に実装でき、パフォーマンスを大幅に向上させることができるため、Webサイトを最適化するために使用される選択肢の1つです。遅延読み込みで

                                                                          画像の遅延読み込みにloading属性とJavaScriptを併用した最大限のパフォーマンスを発揮させる実装方法
                                                                        • JVM上で動くWebアプリケーションがリソースを食いつぶす原因を探るためにやったこと【Backlog Play化プロジェクト】

                                                                          ヌーラボでScalaを書くRubyistの谷本です。ヌーラボでは、Backlogの開発を担当しており、最近ではBacklogをJavaからScala / Play Frameworkに移行するプロジェクトのメンバーでした。 BacklogのPlay化プロジェクトでは、OutOfMemorryError(以下、OOM)の発生やCPU使用率とロードアベレージが上がったままという、Java Virtual Machine(以下、JVM)上で動くBacklogのパフォーマンスに関する問題に対処すべく、何度かHeap/Thread dumpを見る機会がありました。 私がPlay化プロジェクトで取り組んだパフォーマンス改善の知見や経験をもとに、本記事では「JVMで起こったパフォーマンスの問題の切り分け方」についてお届けします。 はじめに 本番環境でしばらく動かしていると、コード自体は正しく実行できるけ

                                                                            JVM上で動くWebアプリケーションがリソースを食いつぶす原因を探るためにやったこと【Backlog Play化プロジェクト】
                                                                          • 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より効率がいいというのは過去の神話
                                                                            • 「Cloudflare Pages」が正式版に。JAMスタックによる高速なWebサイトを構築、CDNに展開へ

                                                                              Cloudflareは、JAMスタックを用いてWebサイトを構築する新サービス「Cloudflare Pages」が正式版として提供開始されたことを発表しました。 JAMスタックによるWebサイトの構築とは JAMスタックとは、JavaScript、API、Markup Language(HTML)を主な構成要素としてWebサイトを構築する手法を指します。 WordPressに代表される多くのCMSでは、ユーザーからのリクエストに反応して動的にHTMLが生成されることで、動的なWebサイトを実現しています。この場合、HTMLの生成に一定の時間がかかるため高速なWebサイトの構築が容易ではないこと、サーバへの負荷によりスケーラブルなWebサイトの構築も容易でないことなどが課題です。 JAMスタックでは、HTMLの生成はWebサイトの生成時に行うことで、基本的には静的なWebサイトと同様の高速

                                                                                「Cloudflare Pages」が正式版に。JAMスタックによる高速なWebサイトを構築、CDNに展開へ
                                                                              • Re: 結局、Go言語をやめる理由はなかった件 - Hateburo: kazeburo hatenablog

                                                                                すみません、ISUCONのアレに火がついてしまったので..。 Advent Calendarとはとくに関係がありません。 qiita.com qiita.com こちらの記事をみて、気になってしまったので interpolateParams の追加とMySQLチューニングをしてベンチマークを回してみました。 ベンチマークの環境が公開されているのは素晴らしいですね。 github.com 8vCPU/16GB Memのc5a.2xlargeなEC2のインスタンスを起動して、以下の手順にしたがってdockerとdocker-composeをインストールしました。OSはUbuntu 20.04を使いました。 docs.docker.com docs.docker.com 上記のbenchmarkのrepositoryをgit cloneし、compose build && compose upし

                                                                                  Re: 結局、Go言語をやめる理由はなかった件 - Hateburo: kazeburo hatenablog
                                                                                • UUIDとULIDを理解していない方は見た方がいい記事

                                                                                  Auto increment(自動採番)型を採用したくない場合 Auto Incrementは、データベースにおいて自動的に一意の識別子を生成するメカニズムです。通常、数値型の列が対象となり、新しいレコードが挿入されるたびにその列の値が自動的にインクリメントされます。典型的なIDですかね。 ここでは一意性の確保の話や、データ移行やバックアップのデメリットには言及せず、セキュリティとプライバシーの懸念にフォーカスして考えます。 予測可能性 Auto Increment型のIDは連番であるため、次に生成されるIDが容易に予測可能です。これにより、攻撃者がシステムの内部構造を推測し、不正アクセスを試みるリスクが高まります。 情報漏洩のリスク 連番のIDはデータベースの挿入順序を反映しているため、公開されることで企業の活動パターンやデータ生成の頻度が漏洩する可能性があります。 例) 競合他社は、公

                                                                                    UUIDとULIDを理解していない方は見た方がいい記事