Redisは多彩なデータ構造をもつ1インメモリDBであり、昨今のWebアプリケーションのデータストアの一つとして、広く利用されている。 しかし、一方で、性能改善のための手法を体系的にまとめた資料が見当たらないと感じていた。 実際、最初にCPU負荷が問題になったときにどうしたものかと悩み、調査と試行錯誤を繰り返した。 そこで、この記事では、自分の経験を基に、RedisサーバのCPU負荷対策を「CPU負荷削減」「スケールアップ」「スケールアウト」に分類し、パターンとしてまとめる。 背景 RedisのCPU負荷対策パターン CPU負荷削減 multiコマンド Redisパイプライニング Luaスクリプティング Redisモジュール(夢) スケールアップ スケールアウト 参照用スレーブ 垂直分割 水平分割 Redis Clusterによる水平分割 その他 スライド資料 あとがき 参考資料 背景 R
「Skylake-K」とはいかなるCPUなのか。「Core i7-6700K」ベンチマークで新世代マイクロアーキテクチャの実態を探る ライター:米田 聡 Core i7-6700K 2015年8月5日,開発コードネーム「Skylake」(スカイレイク)と呼ばれてきた第6世代Coreプロセッサの第1弾製品となる倍率ロックフリーモデル,「Skylake-K」こと「Core i7-6700K」「Core i5-6600K」がリリースの日を迎えた。 その製品概要は別途お伝えしているが,その記事でも指摘しているとおり,Skylake世代ではCPUのコアマイクロアーキテクチャが刷新されているはずなのだが,現時点で,その詳細はほとんど明らかになっていない。 そこで今回は,ほぼ手探りであることをお断りしつつ,入手したCore i7-6700K(以下,i7-6700K)を使って基本特性を検証し,その正体に少
Intel has confirmed that its Skylake processors suffer from a bug that can cause a system to freeze when performing complex workloads. Discovered by mathematicians at the Great Internet Mersenne Prime Search (GIMPS), the bug occurs when using the GIMPS Prime95 application to find Mersenne primes. Update: We've been informed that the bug was reportedly discovered and tested by the the community at
こんにちわ。せじまです。今年に入ってからアクティビティトラッカーを二回壊しまして、新しい分野の製品って設計いろいろ難しいんだなと、しみじみ思う今日このごろです。 先日、社内勉強会で Ethernet や CPU などの話をしました。前回のCPUに関する話に続き、今回のスライドも幅広い方に読んでいただけそうな内容かと思いましたので、公開させていただくことにしました。前回のスライドを読んでない方は、できればそちらを読んでいただいてからの方が、より理解が深まるのではないかと思います。 忙しい人のために三行でまとめると 2020年代には、サーバのネットワークインターフェースが 40Gbps 超えてそうな予感 もし Ethernet でそれだけ大量のパケットをさばくなら、(標準化されてないけれど) Jumbo Frame 使わないと厳しいかも 2020年代には、NICやブロックデバイス等、CPUを取
Amazon EC2 は 1 時間単位,Google Compute Engine も 10 分単位でしか借りられず,試行錯誤しながらプログラムを書いている時に計算リソースを使い切ることは困難です.そこで 100 ミリ秒単位で使える AWS Lambda を計算リソースとして使ってみました. AWS Lambda は表向きは Node.js あるいは Java が使えると書かれていますが,実際には最近流行りのコンテナ技術を使っており言語レベルでの制限はかけられておらず,exec 関数を呼び出すことにより(静的リンクされていれば)任意のバイナリを実行することができます.そこで C++ で書かれたプログラムを実行する方法について紹介します. Linux 上で x86-64 向けにコンパイル・静的リンクされたバイナリがあれば,それを AWS Lambda 上で実行することは簡単にできます.コンパ
この投稿は、私が去年OSCONで行ったプレゼンテーションを基に作成しています。プレゼンよりは簡潔に編集し直し、プレゼン後にいただいたいくつかのフィードバックに応える形で記事を書いています。 Go言語に関してよく言われるのは、Go言語はサーバでうまく機能し、静的なバイナリや強力な並行処理、高いパフォーマンスを見せくれるということです。 この投稿では、その後半の2つの項目に関して焦点を当てます。プログラマとってGo言語とそのランタイムは、スケーラブルなネットワークサーバをスレッド管理やブロッキングI/Oを気にせずに書くのにどんなに有効かを説明していきます。 効率的なプログラミング言語に関しての議論 技術的な話に入る前に、Go言語をターゲットにしたマーケットを説明する2つの議論に関してお話したいと思います。 ムーアの法則 画像は以下より引用; 2005年5月にHerb Sutter氏が書いたDr
sponsored Intel第14世代Coreと最新自作PCのトレンドに合わせて進化 ゲーミングマザーボードは高効率、低発熱のVRM、大型のVRMヒートシンクを基準に選ぼう。「MAG B760M MORTAR WIFI II」レビュー sponsored TOPマイスターのゴールドバッジも見せてもらった! アレは売れた?2023年PC自作市場のリアルをインテルPCマイスター浪人生がGIGABYTEに直撃 sponsored アキバスタッフが認めた多機能の割には高コスパな「Z790 NOVA WIFI」で組むゲーミングPC sponsored TSUKUMOの店員が厳選!ASRockの高コスパマザーを使ったゲーミングPC自作はコレ! sponsored Core i5&RTX 4060 Tiで15万円台からの「LEVEL-M17M-134F-SLX-WHITE」をチェック 10万円台から!
第4世代Coreプロセッサーとなる「Haswell」では、新規搭載された機能に「Transactional Synchronization Extensions」(TSX)がある。これは以前よりインテルが「トランザクションメモリー」と呼んで、研究成果を発表していた技術だ。IDF 2012で公開された情報を元に、TSXの仕組みについて解説しよう。 マルチコア環境で生じる問題のひとつ メモリーの書き換え Haswellで実装されたTSXには、「メモリーロック処理を高速化する機能」と「トランザクション機能を実現する機能」の2つがある。この2つは目的は違うものの、基本的な動作の機構は同じ。複数のスレッドを並行して実行しているときに、メモリーの書き込みにより他のスレッドの処理が無効になったことを検出すると、他のスレッドを最初からやり直しさせる。 マルチコアCPU環境では、複数のスレッドが同時に動作す
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く