JavaVMを監視するツール群 今回は、Java EEアプリケーションをチューニングする際に便利なツールを紹介します。JavaVMの状態を監視/レポートするツールは、フリー・ソフトウエアや製品を含め、いくつか提供されています。米Oracle(米Sun Microsystems)のJava環境にも、標準で便利なツール群が付いています。本記事では、標準ツールであるjconsoleとjstatの2つを紹介します。 表1: 主なJavaVM監視/レポーティング・ツール 製品名 特徴
データベースのチューニングという言葉からどのようなことを想像しますか。表の設計の見直しやSQL記述を探ること、バッファプールの調整などと主にデータベース自体の調整であったりするかと思います。 しかしこうしたチューニング作業を行ったにもかかわらず、パフォーマンスがあまり変化しなかった、明確に問題が解決されなかったなどといったといった経験はないでしょうか。またより詳細な調査の結果、実はOSの設定やデバイスドライバのバージョンに原因があった、あるいはハードウェアの選択に問題点があったということも聞いたことがあるかと思います。 もちろんデータベース自体のチューニングは欠かせないものですが、なんらかの問題が起こっている場合、システム全体を考慮しなければならない状況に陥ることがあります。 一口にパフォーマンスをチューニングするといっても、ハードウェアを含めたシステム全体を考えると、考慮すべき項目は多い
本のページをめくるように、どんなWebページも素早く表示できるようにする。グーグルは以前からWebの高速化に取り組んできました。 6月22日から、米サンタクララで行われていたWebサイトのパフォーマンスと運用に関するオライリーのイベント「Velocity 2010」では、グーグルのUrs Hölzle氏がWebの高速化技術について「Speed Matters」(スピードの重要性)というセッションで紹介ています。 Webを高速化するためにどのような技術があり、あるいはどのような技術が検討されているのか、このセッションの内容を紹介しましょう。 スピードは重要だ 私が話そうとしているのは、「Speed matters」(スピードの重要性)についてだ。Webは空飛ぶジャガイモより速くなれるだろうか? どのくらい速くなれるだろうか? (参考:オペラがやってくれた! グーグルの空飛ぶジャガイモに対抗)
Webシステム開発において性能試験を行う場合、hp LoadRunnerやApache JMeterといったウェブブラウザをエミュレーションしてくれる負荷テストツールを用いるのが定番だと思います。そんななか、たまにデータベース単体での性能を測ってほしいと頼まれることがあるので、そうした便利なツールはあるのかなと思って調べてみました。 データベースに対する負荷テストツールは探すとたくさん出てくるのですが、案件で使用しているRDBMSに対応していなかったり、トランザクション仕様が希望と異なっていたり、微妙に作りが悪かったりと、ニーズに合致したツールはすぐには見つかりません。そんなときにこのエントリがツール探しの参考になればと思います。 pgbench 対応RDBMS:PostgreSQL 対応OS:Linuxなど 言語:C 作者:石井達夫氏 ライセンス:独自(BSDライセンスに近い) トランザ
データベース負荷テストツールまとめの第4回です。 データベース負荷テストツールまとめ(1) TPC-B、TPC-Wベースのツールを6つ紹介 データベース負荷テストツールまとめ(2) TPC-Cベースのツールを6つ紹介 データベース負荷テストツールまとめ(3) TPC-Hベースのツールを2つ紹介 今回はTPC-Eベースのツールを見ていきたいと思います。 TPC-Eとは TPC-EはRDBMSベンチマーク仕様の一つで、オンライントランザクション(OLTP)の性能を測定するものです。証券会社の業務をモデルとして取引や市場の監視、メンテナンス処理を行い、1秒あたりに行った取引件数を性能の指標値とします。 OLTPのベンチマークとしてはこれまでTPC-Cがよく用いられてきました。しかしTPC-Cは1992年の策定から実に18年が経過しており、その間コンピュータのCPU性能はムーアの法則にしたがって伸
これらの情報を基に、OutOfMemoryErrorの障害発生原因を探ることとなる。 障害調査~メモリ領域を切り分ける~ まずは、GCログやOutOfMemoryErrorのエラー情報から、「Javaのどのヒープ領域(Javaヒープ、Permanentヒープ、Cヒープ)でOutOfMemoryErrorになっているか」「どれだけのメモリを確保しようとして失敗したか」を確認する。 前回記事で、OutOfMemoryのエラー情報からどの領域でメモリ不足が発生しているかを見分けるポイントについては紹介した。例えば、以下のような場合には(*1)からJavaヒープでメモリが不足していることが分かる。 java.lang.OutOfMemoryError: Java heap space <=======【*1】 at java.nio.CharBuffer.wrap(CharBuffer.java:
Googleもスマートフォンに参入、ノートPCが完全に主流になるなど、ブロードバンドから逆に回線の「低速化」が起こっています。 参考: 今だからこそ、「軽量なウェブサイト」を作ることが重要、というお話 また、GoogleはWebの表示速度をPageRankに加味することを検討中であることを明言しています。 ただ、そうは言ったものの、ちゃんと実装しないと話しにならない訳で・・(大汗 細かいことでもちゃんと積み重ねて行かねばと。 というわけで、軽快なサイトを実装するためのTipsを自分のサイトで使ったのを備忘録的にここにも書いておきたいと思います。 まずはまとめ記事から 原則を押さえてから、細かいところに行った方が効率がよいかな、と思います。 30分でできる!Webサイトを高速化する6大原則 最適化を行うための観点が簡潔にまとまっていて、高速化チェック項目として有効です。 具体的な方法もいくつ
データベース負荷テストツールまとめの第3回です。 データベース負荷テストツールまとめ(1) TPC-B、TPC-Wベースのツールを6つ紹介 データベース負荷テストツールまとめ(2) TPC-Cベースのツールを6つ紹介 かなり期間が空いてしまいましたが、今回はTPC-Hベースのツールを見ていきたいと思います。 TPC-Hとは TPC-HはRDBMSベンチマーク仕様の一つで、意思決定支援システム(DSS)としての性能を測定するものです。大規模なデータを対象にアドホックなクエリを実行します。クエリは全部で22種類定義されています。 TPC-HはTPC-B/W/Cなどと異なり、実行するクエリそのものやテストデータ生成ツールがTPCから提供されています。試しに、一番負荷が高い9番のクエリを確認してみましょう。 -- $ID$ -- TPC-H/TPC-R Product Type Profit Me
2009-11-29 ウェブサイトパフォーマンス入門 - ニコール・サリバン ラベル: performance, report Web Directions East 2009 ワークショップ 11月12日 ウェブサイトパフォーマンス入門 ニコール・サリバン 通訳はcouldの長谷川さんだよ。 Design Fast WebsitesView more documents from Nicole Sullivan.スライドはほぼこれと一緒で、収益に関するデータが新たに追加されてた感じ。 Nicole Sullivan (ニコール・サリバン)3000以上にも昇る大規模サイトの最適化に携わって来た Nicole Sullivan は、現在 Yahoo! のパフォーマンスエンジニアと最適化のエバンジェリストとして国内外のセミナーで講演。Webサイトに関する研究だけでなく、プロジェクト管理もこなす
2009-11-24 High Performance Web Design ~デザインから考えるハイパフォーマンスWebサイト~ ラベル: performance CSS Nite in ISHIKAWAで話をしてから1ヶ月経ったので、薄れゆく記憶の復習も兼ねて思いの丈を綴ってみたw High Performance Web Design 1. What's High Performance?ここでいうパフォーマンスというのはWebサイトの表示高速化についてです。つまり、ページをいかに早く表示させるかという課題です。でも、そうゆうのってサーバー側の問題でしょ?システムエンジニアの管轄じゃないの?と思われがちですが「ハイパフォーマンスWebサイト」の著者であるSteve Soudersの調査によると、80:20。一般的にユーザーの待ち時間の実に80%がブラウザ側、フロントエンドで費やされて
Accurately conveying Japan, present and future, to the world. Mission Providing trustworthy information that deepens understanding of, and generates interest in, Japan. 世界中で、日本に興味を持つ人を増やし、日本についての理解を深めるために、私たちは、信頼できる情報を提供します。 Vision Contributing to a better world through the promotion of mutual understanding between Japan and various international communities. 日本と世界の相互理解を推進することで、よりよい世界の実現に貢献します。
Web Performance Best Practices 下記、ウェブページのパフォーマンスを最適化するポイントをまとめたものです。 キャッシュの最適化 往復遅延時間を減らす HTTPリクエストを減らす ロードサイズを減らす レンダリングの最適化 関連書籍 1. Optimize caching キャッシュの最適化 ブラウザのキャッシュを活用 JavaScriptやCSSファイルや画像などのスタティックなリソースは、HTTPヘッダを使用してキャッシュをロードするようにします。 アドバイス スタティックなリソースは全て、積極的にキャッシュにセットします。 時々更新するリソースのキャッシュには、ファイルパスにフィンガープリントを埋め込みます。 IEでも確実にキャッシュされるように、Varyヘッダは削除します。 URLを自動生成している場合は、Fxのディスクキャッシュで使用している8文字のラ
Java, Wicketid:s-ishigamiさんがWicketのCPU負荷について調べていて、IMarkupSettingsのsetAutoLinkEnabled(true)をしていると負荷がとても上がって困るって話でした。いやいやそれはおかしいと思って調べてました。...と言ってる間に、id:s-ishigamiさんも継続調査していて似たような方向に調査が向かっているようですが、せっかく調べたので書いておきます。 もとねた:WicketのCPU負荷 - s-ishigamiの仕事日記(WicketでECを作る道のり)WicketのCPU負荷〜その2〜 - s-ishigamiの仕事日記(WicketでECを作る道のり)WicketのCPU負荷〜その3〜 - s-ishigamiの仕事日記(WicketでECを作る道のり)WicketのCPU負荷〜その4〜 - s-ishigamiの
アメーバブログ(アメブロ)はサイバーエージェントが運営する無料のブログサービスである。同社のデータベースチームは急激に増加し続けるアクセスに対応し、パフォーマンスを維持するために、データベースの改善を続けてきたという。その経緯と現状が、MySQL ユーザコンファレンス 2008の場で紹介された。 アメブロにおけるデータベース改善の歴史 サービスを開始した2006年9月時点では、Active-Standby構成のOracle 10g 2台のみで、MySQLは使用していなかった。これで4億PV(ページビュー)を支えていたという。 その後、アクセスの増加に伴ってハードウェアを拡充し、現在はOracle 10g RAC 4台(Active3台-Standby1台)構成になり、MySQLはマスターに1台、スレイブに41台を導入しているとのこと。 このシステムは2006年10月からMySQLを導入し、
<?php $db = pg_connect('dbname=test'); $sql = " CREATE TABLE artist ( artist_id serial primary key, name text not null ) "; pg_query($sql); $sql = " CREATE TABLE music ( music_id serial primary key, artist_id integer not null, title text not null ) "; pg_query($sql); for ($i = 0; $i < 10000; $i++) { $a_name = serialize(time() + $i); $sql = "INSERT INTO artist(name) VALUES('{$a_name}')"; $res = pg_
サ−バ等に使っているPC のメモリが十分かどうか気になる事は多いと思う. 調べ出すと フリーメモリーの不足や SWAP にメモリーがはみだしている様子など 心配な事がいろいろでて来る. PC の動作が遅くなる原因は様々な要因が絡み合っているので, 表面に現れた症状だけでは効果的な対策が分からない事もある. 以下では, メモリ−関連にしぼって解説する. メモリの状況を調べる メモリ−は十分なはずなのに 余裕が無い? どのプロセスがメモリを消費しているのか? メモリーのリークを検出する方法? 防止する方法? メモリ−は十分なはずなのに SWAP を使ってる? じゃ, 本当のメモリ−不足はどうしたら分かるの? メモリーと SWAP 領域はどのくらい確保すると良いのか メモリの状況を調べる メモリの利用状況を調べる方法は, free, top, ps, vmstat, /proc/meminfo
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く