並び順

ブックマーク数

期間指定

  • から
  • まで

361 - 400 件 / 1491件

新着順 人気順

performanceの検索結果361 - 400 件 / 1491件

  • M1とRosetta 2が速い理由の考察という名目の妄想

    Apple SiliconのM1が速いと話題だ。単に速いというだけでなくRosetta 2を用いてx86_64バイナリをARMに変換して実行した時にIntel CPUで直接実行した時より速くなる場合があるというのだから驚きだ。その要因を考察するにつれ一つの仮説に思い至ったのでここに記しておく。 その要因とはRISCとCISCの違いだ。殴り書きなので詳細は省くが、CISCのほうがやってることが複雑で単純な実行速度という意味ではRISCに敵わない。特にRISCの固定長命令という特徴がカギを握る。 CISCの代表がIntelのx86である。しかし2000年ごろにはCISCはもう駄目だ的なことが声高に叫ばれていたが、気が付けばx86はそのまま栄華を極め2020年にまで至ってしまった。そこまで持ちこたえた理由の1つがRISCとCISCの境目がなくなる Pentium Proの逆襲に書かれているのだが

      M1とRosetta 2が速い理由の考察という名目の妄想
    • React の新しい概念「トランジション」で React アプリの応答性を改善する - 30歳からのプログラミング

      React v18 には多くの改善や新機能が盛り込まれる予定だが、そのなかでも特に注目を集めると思われるのが、Concurrent Features と呼ばれる一連の機能。 これらの機能を使うことで、コンポーネントのレンダリングについてより柔軟な設定が可能になり、上手く使えばパフォーマンスや UX の向上を実現できる。 この記事では Concurrent Features のひとつであるstartTransitionと、それを使いこなす上で重要な概念である「トランジション」について説明する。 この記事ではコンセプトの説明や具体例の提示のみを行う。詳細を知りたい場合は以下を参照。 一年前の記事であるため古くなっている部分もあるが、根幹は大きく変わっていないと認識している。 なお、上記の記事には「Concurrent Mode」という用語がタイトルに入っているが、これは今後は使われなくなってい

        React の新しい概念「トランジション」で React アプリの応答性を改善する - 30歳からのプログラミング
      • 「テキストの編集」にこだわりが凝縮!定番エディタ「EmEditor」はなぜ他のエディタと違うのか? マルチコアCPUやAVX-512命令も活用、GB単位の超大容量ファイルもスムースに編集……

          「テキストの編集」にこだわりが凝縮!定番エディタ「EmEditor」はなぜ他のエディタと違うのか? マルチコアCPUやAVX-512命令も活用、GB単位の超大容量ファイルもスムースに編集……
        • perfを用いたシステムのボトルネック解析方法

          背景システムの処理速度を改善するために、ボトルネック解析を行う必要があった。 ボトルネック解析の方法と、プロファイリングに使用したperfの使用方法に関して調査を行った。 記事の目的perfを使用し、ボトルネック解析を行う ここでは、perfの導入方法及び使用方法について記載する。 perfとはperf(Performance analysis tools for Linux)とはLinuxカーネル2.6.31以降で使用可能なLinuxの性能解析ツールである。 実行されているプロセス毎のCPU使用率やプロセス内で呼ばれている関数の割合などを調査できる。 利点gprofのように、プログラム作成時に専用のライブラリを入れたり、コンパイル時にオプションをつける必要がない フレームグラフにして、ビジュアライズできる 導入方法(Ubuntu編)Ubuntu16.04へperfを導入する手順について記

            perfを用いたシステムのボトルネック解析方法
          • なぜReactは標準でComponentをmemo化しないのか?

            はじめに 普段はスタートアップでBtoB SaaSの開発をしているtaroと申します。 今回は、Reactのmemo化について考えている中で抱いた 「なんでReactは標準でComponentをmemo化していないんだろう?」 という疑問を解消するために、色々と調べたり考えたりした内容をまとめました! 途中でrenderのタイミングや、memo化で再renderが抑えられる理由などの前提知識の復習も含めていて、memo化について詳しくない方もmemo化の勉強にもなると思うので、ぜひぜひ読んでみてくださいー! なぜこんな疑問を抱いたのか? まずはそもそも僕がタイトルにあるような疑問を抱いた背景です。 疑問を抱くまでの思考プロセスはこんな感じです。 「再renderが余分に走ってて画面が重いから最適化したいなー」 →「React.memo()を使ってComponentをmemo化しよう!」 →

              なぜReactは標準でComponentをmemo化しないのか?
            • ffmpeg.wasm | ffmpeg.wasm

              ffmpeg.wasmffmpeg.wasm is a pure WebAssembly / JavaScript port of FFmpeg enabling video & audio record, convert and stream right inside browsers! Data Securityffmpeg.wasm runs only inside your browser, data security is gaurantee as no data is sent to remote server. Powered by WebAssemblyffmpeg.wasm transpiles ffmpeg source code to WebAssembly code using Emscripten to achieve optimal performance.

              • How I built a modern website in 2021

                How I built a modern website in 2021September 29th, 2021 — 34 min read For over half of 2021, I worked on a complete rewrite of kentcdodds.com. You're reading this on the rewrite of this site! Are you using dark mode or light mode? Have you signed in and selected your team yet? Have you tried to call into the Call Kent Podcast? This blog post isn't about these and other features of the new site, b

                  How I built a modern website in 2021
                • グラブルのサーバの現状『古戦場イベ中のピーク時28万リクエスト/秒』エンジニアの皆さんドン引き「スケール違い過ぎて草」

                  おかけん太郎右衛門督 @okaken_taro 「それでも安定してサービスを提供したい」 欲張りにしか見えないけど、ゲーム業界からしたら当然のリクエストなんだろうか? twitter.com/ebipilaf_/stat… 2020-02-15 10:18:49

                    グラブルのサーバの現状『古戦場イベ中のピーク時28万リクエスト/秒』エンジニアの皆さんドン引き「スケール違い過ぎて草」
                  • GitHub - ByteByteGoHq/system-design-101: Explain complex systems using visuals and simple terms. Help you prepare for system design interviews.

                    Architecture styles define how different components of an application programming interface (API) interact with one another. As a result, they ensure efficiency, reliability, and ease of integration with other systems by providing a standard approach to designing and building APIs. Here are the most used styles: SOAP: Mature, comprehensive, XML-based Best for enterprise applications RESTful: Popul

                      GitHub - ByteByteGoHq/system-design-101: Explain complex systems using visuals and simple terms. Help you prepare for system design interviews.
                    • GitHub ActionsでDocker Buildするときのキャッシュテクニック - cockscomblog?

                      GitHub Actionsでdocker buildすることが多い。このときのキャッシュをどうするかという話題。 基本 GitHub Actionsでdocker buildしてAmazon ECRにdocker pushする、典型的な.github/workflow/docker-push-to-ecr.ymlはこういう感じ。 name: Push to Amazon ECR on: push: branches: [ 'main' ] jobs: docker: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: docker/setup-buildx-action@v1 - name: Configure AWS credentials uses: aws-actions/configure-aws-c

                        GitHub ActionsでDocker Buildするときのキャッシュテクニック - cockscomblog?
                      • React 18に備えるにはどうすればいいの? 5分で理解する - Qiita

                        React 18はReactの次期メジャーバージョンで、2021年の6月にalpha版が、11月にbeta版が出ました。また、Next.js 12でもReact 18のサポートが実験的機能として追加されました。React 18の足音がだんだんと我々に近づき、アーリーアダプターではない皆さんの視界にもいよいよReact 18が入ってきたところです。 特に、React 18ではServer-Side Rendering (SSR) のストリーミングサポートが追加されます。現在ReactでSSRを行いたい人の強い味方としてNext.jsが存在しているわけですが、Next.js 12でもReact 18を通してストリーミングの恩恵を受けることができます(Next.jsではSSR Streamingと呼んでいるようです)。また、厳密にはReact 18とは別ですが、React Server Comp

                          React 18に備えるにはどうすればいいの? 5分で理解する - Qiita
                        • MySQL/Aurora/TiDBロック入門 – 第1回トランザクション分離レベル|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ

                          MySQL/Aurora/TiDBロック入門 – 第1回トランザクション分離レベル MySQL InnoDB および AWS Aurora や PingCAP TiDB におけるロックの仕組みやトランザクションの動作を全11回のシリーズで解説します! 最初はベースとして重要な MySQL 8.0 InnoDB 前提でユーザー視点でのロックの仕組みを学び、後半第10回以降では MySQL 互換 DB として人気の高い AWS Aurora や PingCAP TiDB と MySQL InnoDB との違いについて学びます。 1回目の今回はロック機構と切っても切り離せないトランザクションとその分離レベルについて、実際に挙動を確かめながら解説します。ライブ感のある説明も理解に役立ちますので、解説動画も付けてみました。合わせてご覧ください! ★ 第1回 トランザクション分離レベル ★ 第2回 ロ

                            MySQL/Aurora/TiDBロック入門 – 第1回トランザクション分離レベル|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ
                          • リアクティブは難しいが役に立つ - Chatwork Creator's Note

                            お久しぶりです、かとじゅん(@j5ik2o)です。テックブログを書くのは何年ぶりか…。 サービスが停止したり応答性が低下すると、お叱りや逆に励ましをいただきますが、エンジニアとして設計レベルからそういった問題に対処するにはどうするか、日々精進しているところですmm。この記事はそういう論点で注目されている「リアクティブ原則」についてまとめてみたいと思います。 それなりのボリュームになってしまったので、時間があるときに読んでいただければと思います。 さて、Linux Foundation内の新たなトップレベルプロジェクトであるReactive Foundationが主催する、Reactive Summit 2020が11月10日にオンラインで開催されたので参加しました。 www.reactivesummit.org 参加されていたスピーカーはLightbendをはじめ、Netflix, Fac

                              リアクティブは難しいが役に立つ - Chatwork Creator's Note
                            • ほんの少しHTMLを変更して検証したい時 – TravelBook Tech Blog

                              本番のサイトを眺めていて、「あーここのHTMLこうしたら、もっと速くなるのになー」って思う時ありますよね。 僕はあります。でも、検証するだけのために、プロダクトのコードを直接いじるのは大げさ。 そんな時に、wgetとmirrorというコマンドを使ってページをダウンロードして「ほんの少し」HTMLを変更しています。 紹介します(追記にLocal Overridesという「そのものズバリな」Chromeの機能も紹介してます)。 最近あった話です。特にCore Web Vitalsとか速度改善について。 トラベルブックのとあるページのスコアが落ちていて、Chrome DevToolsで観察してみると、どうもYouTubeの埋め込が足を引っ張っている。 表示領域外にも関わらずiframeの中身がロードされています。 これは直したい(本来なら本番へ上げる前に気づく仕組みを作りたいのですが、一旦置いて

                                ほんの少しHTMLを変更して検証したい時 – TravelBook Tech Blog
                              • Google 公式ウェブ開発者向けリソースのご紹介

                                .app 1 .dev 1 #11WeeksOfAndroid 13 #11WeeksOfAndroid Android TV 1 #Android11 3 #DevFest16 1 #DevFest17 1 #DevFest18 1 #DevFest19 1 #DevFest20 1 #DevFest21 1 #DevFest22 1 #DevFest23 1 #hack4jp 3 11 weeks of Android 2 A MESSAGE FROM OUR CEO 1 A/B Testing 1 A4A 4 Accelerator 6 Accessibility 1 accuracy 1 Actions on Google 16 Activation Atlas 1 address validation API 1 Addy Osmani 1 ADK 2 AdMob 32 Ads

                                  Google 公式ウェブ開発者向けリソースのご紹介
                                • サーバレス時代の負荷テスト戦略 〜CircleCIで実現する継続的負荷テストとチューニングTips〜 - Qiita

                                  負荷テストとサーバレス 負荷テストに対する考え方は時代とともに変化してきました。従来はサーバスペックやシステムの限界性能を測るという考え方でしたが、クラウドネイティブなシステムではそれに加えて、システムの弾力性(スケールアウトのしやすさ)も考慮する必要があります。 本記事では、負荷テストによるシステムの弾力性の評価と、改善する方法についてツールの具体的な使用方法やアプリケーションのチューニング Tips を交えて説明します。システムの弾力性を評価するために、プロダクション環境でのユーザからのリクエストを想定したロードテストを検討します。 ロードテストでは以下の項目を検証します。 ドリップテスト ドリップテストは通常、数日間にわたって行われます。通常のバックグラウンド負荷レベルをシミュレートします。遅延またはエラー率の増加が見られる処理を特定します。 スラムテスト スラムテストは、トラフィッ

                                    サーバレス時代の負荷テスト戦略 〜CircleCIで実現する継続的負荷テストとチューニングTips〜 - Qiita
                                  • Becoming a Better Writer as a Software Engineer

                                    Writing is an increasingly important skill for engineering leaders. Indeed, poor writing can hamper career progression, above a certain level. Tactics for more clear, more frequent and more confident writing. I’ve observed that my writing is not up to par with my peers. How can I improve my professional writing, as someone working in tech?I get this question from many people: senior engineers who

                                      Becoming a Better Writer as a Software Engineer
                                    • Crush! | iPad Pro | Apple

                                      Introducing the all-new iPad Pro. Outrageous performance by the first-ever M4 chip. With the breakthrough Ultra Retina XDR display. All in the thinnest Apple product ever. iPad has never been this powerful. Or this thin. Learn More: https://apple.co/3QEsTSv Audio Descriptions: https://youtu.be/uT24U56I1ZA “All I Ever Need Is You” by Sonny & Cher - https://apple.co/sonny-cher-all-I-need #iPad

                                        Crush! | iPad Pro | Apple
                                      • やっぱりコンパイラが書きたい。渡米後にRuby JIT開発を趣味から仕事に変えた私のキャリア戦略 - Findy Engineer Lab

                                        国分崇志(@k0kubun)と申します。プログラミング言語Rubyのコミッターとして活動しています。2019年からシリコンバレーで働いており、2022年からShopifyという会社でRubyのJust-In-Time(以下、JIT)コンパイラをフルタイムで開発しています。 長い間趣味でやっていたコンパイラの開発を仕事にしたのは、現職が初めてでした。この記事では、趣味を仕事に変えた経緯や、どのようにして業務経験のない分野にキャリアチェンジしたのかを紹介します。 仕事で分散システム、趣味でコンパイラを書くキャリア 楽しく稼げる仕事を求めてたどり着いたRubyエンジニア 研究で分散システムと言語処理系の両方に興味を持つ 分散ミドルウェアを仕事で、JITコンパイラを趣味のOSS活動で やっぱりコンパイラを仕事にした複合的なきっかけ 働きながら大学院に通い、コンパイラが一番好きなことに気付いた コン

                                          やっぱりコンパイラが書きたい。渡米後にRuby JIT開発を趣味から仕事に変えた私のキャリア戦略 - Findy Engineer Lab
                                        • このSRE本がすごい!2024年版 - じゃあ、おうちで学べる

                                          はじめに 有用な知識の特性 Google SRE リソース Site Reliability Engineering: How Google Runs Production Systems The Site Reliability Workbook: Practical Ways to Implement SRE Building Secure and Reliable Systems: Best Practices for Designing, Implementing, and Maintaining Systems SLO Adoption and Usage in SRE Creating a Production Launch Plan Training Site Reliability Engineers: What Your Organization Needs to Cre

                                            このSRE本がすごい!2024年版 - じゃあ、おうちで学べる
                                          • Dockerに関するキャッシュたち

                                            はじめに Dockerを用いた開発では、適切にキャッシュを用いることで高速にビルド・開発できます。そのための知見は様々な記事で共有されており、ありがたい限りです。 しかし、「Dockerのキャッシュ」と言っても開発時とCI・CDでは行うことが違います。 この記事ではDockerを用いた開発における、各段階のキャッシュ機能を確認したいと思います。 主に「Dockerのキャッシュ」というと以下の4つに分類できると思いますので、それぞれについて解説していきます。 Dockerのレイヤーキャッシュを活かす a. COPY・ADDの順番 b. dockerignoreの設定 c. マルチステージビルド buildkitによるキャッシュ a. --mount=type=cache CI・CDにおいてのキャッシュ a. 前回のビルドキャッシュを持ち越して使う リモートキャッシュ a. 開発者が初めてビル

                                              Dockerに関するキャッシュたち
                                            • 令和にふりかえる C10K 問題

                                              C10K 問題 (the C10K problem) は1999年に Dan Kegel が発表した文章、ならびにそこで提示された「問題」です。文章はその後も2000年代前半に何度か更新されているのですが、さすがに令和に読み返すと、当初の問題意識がわかりにくいところがあります。 2000年からの10年は、 ソフトウェア面では、select(2), poll(2) にかわる新しいシステムコールの実装と、それを使ったアプリケーションの普及 ハードウェア面では、x86 アーキテクチャの64ビット移行、仮想化命令の追加と、マルチコア化 さらにそこにクラウドも登場する、面白い時代でした。ここでは、それらの出来事を中心に、さらに、当時の雰囲気をつたえるような日本国内のブログやインタビュー記事をまとめることで、C10K 問題が、さまざまな側面から解決されていく流れを説明したいと思います。 書き足したいと

                                              • strlen() の深淵 - Qiita

                                                あらまし strlen() という関数がある。御存知の通り、文字列の長さを算出する標準 C ライブラリの関数だ。 やってることは単純で、例えば以下のように実装できる。 size_t strlen_simple(const char* str) { const char* p = str; while (*p) ++p; return size_t(p - str); } '\0' が見つかるまでポインタを進め、初期位置との差分を返すだけだ。これで機能的には std::strlen() と同等である。 では、速度的にはどうだろう?適当にベンチマークを書いて MSVC 2022 でコンパイル&実行するとこうなった。

                                                  strlen() の深淵 - Qiita
                                                • [速報]Java 13が登場。ZGCの改善やSwitch式の実現など新機能。 Oracle Code One 2019 - Publickey

                                                  2017年9月に登場したJava 9以降、Javaは6カ月ごとに「フィーチャーリリース」と呼ばれるメジャーアップデートが行われています。Java 13は、今年3月に登場したJava 12に続くメジャーアップデートです。 Java 13のおもな新機能は、Application Class-Data Sharing機能を拡張した「Dynamic CDS Archives(JEP 350)」、ZGCガベージコレクタを改善し使われていないヒープメモリを返却する「ZGC: Uncommit Unused Memory(JEP 351)」、Project Loomの一部として既存のSocket APIを再実装した「Reimplement the Legacy Socket API(JEP 353)」、Switch式を可能にする「Switch Expressions(JEP 354)」(プレビュー)、J

                                                    [速報]Java 13が登場。ZGCの改善やSwitch式の実現など新機能。 Oracle Code One 2019 - Publickey
                                                  • シェル芸人に必要なのは「マスキングテープ」だったのでは

                                                    2020/06/27 第48回シェル芸勉強会LT資料 https://www.youtube.com/watch?v=PIqx9fCSbaU&t=609s

                                                      シェル芸人に必要なのは「マスキングテープ」だったのでは
                                                    • Linux カーネルをバイパスして TCP 通信を 10 倍速くする | IIJ Engineers Blog

                                                      【IIJ 2023 TECHアドベントカレンダー 12/16の記事です】 この記事について 背景:TCP はコンピュータネットワークの通信において広く利用されているプロトコル・標準化された通信規格です。コンピュータは TCP/IP スタックと呼ばれるようなソフトウェアを実行することで、定められた規格に則って通信を行います。汎用 OS 環境では、TCP/IP スタックは多くの場合、カーネル空間に OS 機能の一部として実装されています。 課題:通信に関するソフトウェアの研究コミュニティでは、そのようなカーネル空間に実装されている TCP/IP スタックは、近年の高速な NIC の性能を十分に引き出すことが難しいという課題が指摘されてきました。 テクニックの紹介:当記事では、近年の研究コミュニティにおいて比較的一般的な高速化テクニックとされている「カーネルをバイパス(迂回)して TCP 通信を

                                                        Linux カーネルをバイパスして TCP 通信を 10 倍速くする | IIJ Engineers Blog
                                                      • High Performance FastAPI

                                                        PyCon JP 2021 発表資料です。

                                                          High Performance FastAPI
                                                        • 2位とはなんだったのか

                                                          anond:20240625171138 2009年11月のいわいる事業仕分けから、もう13年も経った。「2位じゃダメなんですか?」の質問の発言で非常に曰く付きとなったアレだ。 ところが最近、13年も経ってまだなおナゼ「2位」という言葉が出てきたかが理解できてない人がかなりいる事を知った。 それどころか、事業仕分けによって日本のHPC分野が衰退したなどという認識まで飛び出す始末である。 ただ、資料もなしにどこが変だと言っても仕方あるまい。何がどうして「2位」なのか、少し語ろうじゃないか。 アーキテクチャ初期の次世代スーパーコンピュータ (この時点では名前が付いていなかったが、以下わかりやすく京と呼ぶ) 計画 は、補助金を投入してのHPC産業育成に目を向けられていた[1]。世界一の性能を出していた海洋研究開発機構の地球シミュレータが、NECのSXシリーズをベースにしたベクトル型であり、ベクト

                                                            2位とはなんだったのか
                                                          • Linux eBPFトレーシング技術の概論とツール実装 - ゆううきブログ

                                                            eBPF(extended Berkley Packet Filter)という用語を著者が初めてみかけたのは、2015年ごろだった。最初は、eBPFをその字面のとおり、パケットキャプチャやパケットフィルタリングを担うだけの、Linuxの新しいサブシステムであろうと認識していた。しかし、実際にはそうではなかった。 システム性能の分析のための方法論をまとめた書籍Systems Performance 1 の著者で有名なBrendan Greggが、Linuxのネットワークサブシステムとは特に関係ない文脈で、古典的なシステム性能計測ツールでは計測できないことを計測するツールを作っていた。その計測ツールがeBPFという技術によって実装されていることを知ったときに、eBPFに興味をもったのだった。また、eBPFは、システム性能を調べる用途以外にXDP(eXpress Data Path)と呼ばれるプ

                                                              Linux eBPFトレーシング技術の概論とツール実装 - ゆううきブログ
                                                            • クラウドネイティブ環境におけるJavaチューニングの進め方 〜 20,000rpsをさばく超PayPay祭の事例

                                                              ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは、ショッピング統括本部の川口です。 本記事では、2022年2月から3月にかけて開催された超PayPay祭の事例をもとに、クラウドネイティブ環境におけるJavaチューニングの進め方について解説します。 本記事の内容は2022年6月19日に開催された、JJUG 2022 Springで発表した内容をベースにしています。 Yahoo!ショッピングにおける超PayPay祭は高負荷 超PayPay祭は全国のPayPay加盟店とオンラインショップでお得に買い物をお楽しみいただける大規模キャンペーンです。Yahoo!ショッピングにおいても、PayPayポイントがもらえるキャンペーンなどさまざまなお得な施策が実施されます。超PayPay

                                                                クラウドネイティブ環境におけるJavaチューニングの進め方 〜 20,000rpsをさばく超PayPay祭の事例
                                                              • 詳解 システム・パフォーマンス 第2版

                                                                本書は、エンタープライズとクラウド環境を対象としたオペレーティングシステムとアプリケーションのパフォーマンス分析と向上について解説します。 主にLinuxベースのオペレーティングシステムに含まれるツールとその使用例を通じてシステムパフォーマンスを引き出す手法を説明します。システム評価のためのベンチマーク、キャパシティプランニング、ボトルネックの解消について解説しスケーラビリティを制限する要因を発見、分析し、解決する方法を学びます。 第2版では、perf、Ftrace、BPFの解説が加わり、Linuxとクラウドコンピューティングについての説明が充実しました。 システムのパフォーマンスを向上させ、コストを削減し、レイテンシの外れ値を減らすための方法を学ぶ本書はエンジニア必携の一冊です。 まえがき 1章 イントロダクション 1.1 システムパフォーマンス 1.2 職種 1.3 作業 1.4 分析

                                                                  詳解 システム・パフォーマンス 第2版
                                                                • この10年で最大級のインパクトをもたらしたRyzen 5000シリーズ。2021年、買うべきCPUはこれだ!

                                                                    この10年で最大級のインパクトをもたらしたRyzen 5000シリーズ。2021年、買うべきCPUはこれだ!
                                                                  • 「プログラマーのためのCPU入門」は入り口として丁度よい!

                                                                    Google Analytics でサイト速度を計測する / Measure site speed with Google Analytics

                                                                      「プログラマーのためのCPU入門」は入り口として丁度よい!
                                                                    • WEBサーバをコンテナにした際に静的コンテンツはどこへ保存するのか | DevelopersIO

                                                                      WEBアプリ WEBフレームワークはEchoを利用します。views/index.htmlと、assets/images/orora24O.jpgを読み込んでEC2ローカルに保存した画像を表示するだけページを作成しました。このアプリケーションをEC2インスタンスで実行しWEBサーバとして起動します。 手元でビルドしてEC2へ必要なファイルをコピーする計画です。ディレクトリ構成は以下です。 $ tree . ├── assets │   └── images │   └── orora240.jpg ├── go.mod ├── go.sum ├── main.go └── views └── index.html main.go package main import ( "io" "net/http" "text/template" "github.com/labstack/echo/v

                                                                        WEBサーバをコンテナにした際に静的コンテンツはどこへ保存するのか | DevelopersIO
                                                                      • モダンWebパフォーマンス2020_株式会社ニジボックス Yuki Irisawa

                                                                        リクルートグループ主催!『大規模メディアにおけるWeb開発の最前線』 https://business-and-creative.connpass.com/event/188628/

                                                                          モダンWebパフォーマンス2020_株式会社ニジボックス Yuki Irisawa
                                                                        • useCallbackはとにかく使え! 特にカスタムフックでは - uhyo/blog

                                                                          Reactには、パフォーマンス最適化のためのAPIがいくつかあります。具体的にはReact.memo、useMemo、そしてuseCallbackです。 React.memoで囲まれた関数コンポーネントは、propsが以前と変わっていない場合に再レンダリングが抑制されます。 また、useMemoやuseCallbackは、関数コンポーネント内での値の再計算を抑制する効果を持ちます。 これらは最適化のためのツールなので、「過度な最適化」を避けるように啓蒙する言説がよく見られます。 すなわち、ちゃんと本当に最適化のために必要なところにだけこれらを使おうということです。 特に、React.memoはpropsが以前と変わっているかどうかを判定するためのオーバーヘッドがあるし、useMemoやuseCallbackもフック呼び出しのオーバーヘッドがあります。 意味がないところでReact.memo

                                                                            useCallbackはとにかく使え! 特にカスタムフックでは - uhyo/blog
                                                                          • “LLM for SRE“の世界探索 - ゆううきブログ

                                                                            ChatGPTが登場した当初、対話や要約、翻訳、コード生成などの典型的な言語タスクができても、SREやAIOpsの研究開発にはあまり関係ないのではないかと正直思っていた。AIOpsでは典型的にはいわゆるObservabilityデータ(メトリクス、ログ、トレースなど)が入力となるため、自然言語ではなく数値のデータを解析することが求められる。自然言語のタスクを研究対象としていなかったため、AIOpsとChatGPTに強い関係性は見いだせなかった*1。 しかし、自分で大規模言語モデル(Large Language Model: LLM)を日常的に使用したり、表題にあるようにSREのためのLLM(LLM for SRE, LLM4SRE)に関する論文を読むうちに、LLMのテキスト生成器としての性質よりもその優れた推論機械としての性質に注目するようになった。特にSREの障害診断は、人間の専門家が推

                                                                              “LLM for SRE“の世界探索 - ゆううきブログ
                                                                            • S3 互換オブジェクトストレージまとめ

                                                                              概要 S3 互換オブジェクトストレージの サービス を自分のためにまとめている。サービスとして提供されているのが前提で、 自前運用は範囲外 。 目的 以下の内容に絞って調べている。 日本リージョンの有無 egress の費用 容量の費用 追加調査予定 PutObject 対応 PresignedGetObject 対応 S3 互換 S3 互換の条件は s3cmd や aws sdk s3 がそのまま利用できる事。細かい互換性は気にしない。 比較用の AWS S3 https://aws.amazon.com/jp/s3/pricing/ 最小プラン Tokyo / Osaka リージョンあり 1 GiB 追加の egress 転送量は 0.114 ドル 1 GiB の追加容量は 0.025 ドル TODO SLA 書いてるのと書いてないのがあって拾いにくい 対象外 Azure は S3 互

                                                                                S3 互換オブジェクトストレージまとめ
                                                                              • 「キャッシュは麻薬」という標語からの脱却 - id:onk のはてなブログ

                                                                                これは はてなエンジニア Advent Calendar 2023 の 18 日目の記事です。昨日は id:gurrium による private-isuで70万点取るためにやったこと - ぜのぜ でした。私は 50 万点ぐらいで満足してしまっていたので、しっかり詰めていて凄いなと思う。 developer.hatenastaff.com Web アプリケーション開発において、「キャッシュは麻薬」という言葉がインターネット上をよく飛び交っています。YAPC::Kansai OSAKA 2017 の id:moznion のトークでよく知られるようになったワードじゃないかな。 初出はちゃんとは分からないんですが、少なくとも 2011 年には言われていますね。 「キャッシュは麻薬」とはよく言ったものだ。— TOYAMA Nao (@nanto_vi) November 5, 2011 キャッシ

                                                                                  「キャッシュは麻薬」という標語からの脱却 - id:onk のはてなブログ
                                                                                • Kubernetesの負荷試験で絶対に担保したい13のチェックリスト - Qiita

                                                                                  概要 ※この記事は弊ブログ記事(はてな)、Kubernetesの負荷試験で絶対に担保したい13のチェックリストと同内容です ここ最近、Kubernetesクラスタを本番運用するにあたって負荷試験を行ってきました。 Kubernetesクラスタに乗せるアプリケーションの負荷試験は、通常の負荷試験でよく用いられる観点に加えて、クラスタ特有の観点も確認していく必要があります。 適切にクラスタやPodが設定されていない場合、意図しないダウンタイムが発生したり、想定する性能を出すことができません。 そこで私が設計した観点を、汎用的に様々なPJでも応用できるよう整理しました。 一定の負荷、スパイク的な負荷をかけつつ、主に下記の観点を重点的に記載します。 Podの性能 Podのスケーラビリティ クラスタのスケーラビリティ システムとしての可用性 本記事ではこれらの観点のチェックリスト的に使えるものとして

                                                                                    Kubernetesの負荷試験で絶対に担保したい13のチェックリスト - Qiita