タグ

パフォーマンスに関するcham510のブックマーク (6)

  • 軽い気持ちでLinkedListを使ったら休出する羽目になった話 - Qiita

    ざっくり言うと リスト構造のデータに対してランダムアクセスはしちゃだめだぞ。お兄さんとの約束だ! 発端 数年前に他部署の支援で作ったJavaのシステムに、ちょっとデカめのデータを突っ込んだらありえないほど遅いので助けてくれ、と連絡が入った。 まぁクエリとかインデックスをちょっと見れば直るっしょ・・・と鼻をほじりながら支援に向かった。 処理内容 遅い部分の処理は以下のようなものであった。 処理対象のデータをListで受け取る。 それをforループで1件ずつ前処理する。 処理結果をオブジェクトに格納し、ORマッパーでDBにINSERTする。 これだけ? そう、これだけだ。並列処理なんて高級なことはもちろんやってない。 インフラ調査 処理中のサーバのようすを調査する。今回のインフラは典型的な3層3サーバ構成。 WEBサーバはなにもかもが余裕。 APサーバではCPUを1つ使い切っている。 14コア

    軽い気持ちでLinkedListを使ったら休出する羽目になった話 - Qiita
  • JavaのString生成方法がボトルネックになっていた話 - WAF Tech Blog | クラウド型 WAFサービス Scutum

    はじめに 先日、私たちが開発しているクラウド型WAFサービス、Scutum(スキュータム)において、予想していなかった箇所の修正によってサーバの負荷が大幅に減るということがありました。原因はこのエントリのタイトルにもあるように、Stringクラスのインスタンスを生成する際の方法にありました。 Stringクラスのコンストラクタとcharset Stringクラスにはいくつかのコンストラクタが用意されています。我々が使っていたのはString(byte[] bytes, String charsetName)です。2つめの引数で、"MS932"や"UTF-8"のような文字集合(以下charset)を明示的に指定するものです。 ScutumのようなWAF(Web Application Firewall)は通常のウェブアプリケーションとは異なり、起動している間にさまざまなcharsetを扱うこ

    JavaのString生成方法がボトルネックになっていた話 - WAF Tech Blog | クラウド型 WAFサービス Scutum
  • VMWareがクソ重くて殺したくなる時に読むべきもの - いつまでもブタだと思うなよ

    冗談抜きでキレそうになって、悪いのは林檎なんだけどWindowsXPとかいう何年も前のOSを動かすのにこんなにクソトロイのは何でだ。とディスクアクセスとか調べまくってたら何かゲストOSがHDDにアクセスしてないタイミングでもアクセスが発生しまくっている事を発見し、色々と検索した結果見つけたのが下記のテキスト。http://wizardbible.org/49/49.txt該当部分について、何かtxtとかそういうファイルなので消えてしまわないように転載しておく。しかし当にこの金床って人は凄い人だ。Blogなんかに何の確証もなく「この設定を.vmxにすりゃいいよ! ○○○ = "xxxx"」とか書いているだけの何の価値も無い情報でなく、自分の調査方法を合せて読みやすくまとめてくれている。こういう記事をブログに書いていきたいと思ったね。 x0xXx0xx0xXx0xx0xXx0xx0xXx0x

  • amachang の 「一行で IE の JavaScript を高速化する方法」を掘り下げてみた - latest log

    2009-11-12 ナビ子記法について追記しました 文 今日は、amachangさんの記事 http://d.hatena.ne.jp/amachang/20071010/1192012056 を 1mm だけ掘り下げ、IE 以外のブラウザでも document へのアクセスを速くする方法がないか、色々試してみます。 # 記事自体はずいぶん前に書き上げてたけど、公開するの忘れてたんだな。 C系を追加しました。C系は「ネストしたスコープからグローバル変数にアクセスするとどうなるか?」がテーマです。 試したこと 以下は様々な方法で document へのアクセス速度を計測します。 A系では、非日常的な方法で測定し、B系では実際の用法に近い形で測定します。C系では何重にもネストしたスコープから、グローバル変数にアクセスするとどうなるかを測定します。 A系 A0 は、素の document に

    amachang の 「一行で IE の JavaScript を高速化する方法」を掘り下げてみた - latest log
  • エロマンティック 生理も整頓。

    27歳になりましたー! もうね、堂々たる処女。 これがねー何かのRPGだったら、ジョブ「処女」の修得率はえらい事になってるはずなんです。マスターオブ処女ですから。 もう、これでもかってほどに色んな技が使えます。 多分、「節操」とかで結界とか張れるんじゃないかな。 「純潔」とか言おうもんならパーティ全員全回復ですよ。 あー、27かぁー。 きついなー。 27年、まったくの触らぬ神ですよ。 たたらないのに。 このまま天寿を全うしてしまったら、下半身の手付かずのエンブレムを外しつつ、 かみさまー、これさー、せっかく付けてもらったけど、あんま使わなかったわー。 とか言いそう。 したっけ、まわりのみんなが、 「えー、加藤、それ使わないでどうやってクリアしたのー?」 とか 「え、でも、それ使わないと、教会のイベントが発生しなくない?」 とか言うわけ。 全然余裕。 教会イベント起こさなくてもクリアできたし

  • “Stop the World”を防ぐコンカレントGCとは? (1/2) - @IT

    “Stop the World”を防ぐコンカレントGCとは?:現場から学ぶWebアプリ開発のトラブルハック(2)(1/2 ページ) 連載は、現場でのエンジニアの経験から得られた、APサーバをベースとしたWebアプリ開発における注意点やノウハウについて解説するハック集である。現在起きているトラブルの解決や、今後の開発の参考として大いに活用していただきたい。(編集部) Full GC問題の時代が再び到来! それまで順調に動いていたはずのWebアプリケーションが、ある時突然、応答を返さなくなる。そして、運用者があたふたしている間に、何事もなかったかのように再び動き出す。 Javaで構築したシステムにかかわる者ならば誰しもが体験するであろう事象、そうFull GC(ガベージ・コレクション)だ。Full GCが行われている間、すべてのアプリケーションスレッドは停止する。この事象は“Stop the

    “Stop the World”を防ぐコンカレントGCとは? (1/2) - @IT
  • 1