タグ

javaに関するmfhamのブックマーク (90)

  • Google Sites: Sign-in

    Not your computer? Use a private browsing window to sign in. Learn more about using Guest mode

  • 7.5.2 Javaヒープのチューニング

    節では、Javaヒープのチューニング方法および、チューニングによる影響範囲を説明します。 ■チューニング方法 Javaヒープの各領域のサイズは、表1に示すオプションをJava起動時に指定することで設定ができます。 なお、メモリ割り当てプールのデフォルトの初期値および最大値を、表2に示します。 また、Permanent世代領域のデフォルトの初期値および最大値を、表3に示します。 表1 Javaヒープに関するオプション オプション オプションの機能

  • 7.1.5 Javaヒープとガーベジコレクション

    Interstage Application Server/Interstage Web Server チューニングガイド ここでは、Javaヒープとガーベジコレクション(GC)を説明します。 Javaヒープは、Javaプロセス内に存在するJavaオブジェクトを格納するための領域です。 Javaヒープは、New世代領域、Old世代領域およびPermanent世代領域に大別され、Java VMが管理・制御します。なお、New世代領域とOld世代領域は、メモリ割り当てプールという形で各領域を合わせて一括的に管理・制御します。 Java VMは、Javaアプリケーションの実行時に、JavaオブジェクトをJavaヒープの各領域に格納します。Javaヒープの空き容量がなくなった場合は、java.lang.OutOfMemoryErrorがスローされます。 また、不要となったJavaオブジェクトはGC

  • Java8のHotSpotVMからPermanent領域が消えた理由とその影響 | ギークを目指して

    今回も前回の記事につづき、Java8による変更点で未だあまり紹介されていないポイントを記事にしようと思う。 今回はJava8のHotSpotVMの話。Java8ではJEP122が取り込まれ、VMのメモリモデルが変更された。JEP122のタイトル「Remove the Permanent Generation」から想像できるとおり、Java8のHotSpotVMからは従来のPermanent領域が無くなった。 なぜ、こういった変更が行われたのだろうか?また、元々Permanent領域に格納されていた情報は何処にいってしまったのか?JVM付属のツールにどういった影響があるのか? 今回の記事ではこの点をまとめていこうと思う。 なお、HotSpotVMのメモリモデルについて詳しくない方は、先にこちらの項番(「補足 – HotSpotVMのメモリ構造概説)を読んでいただくとスムーズに読み進められるだ

    Java8のHotSpotVMからPermanent領域が消えた理由とその影響 | ギークを目指して
  • OutOfMemoryError の調べ方 - Qiita

    OutOfMemoryError (以下 OOME)が起こったときにお手上げ状態にならないためにも、 Java のメモリ管理の仕組みとか、 OOME が起こったときの調査方法とかを調べる。 環境 OS Windows 7 > java -version java version "1.8.0_74" Java(TM) SE Runtime Environment (build 1.8.0_74-b02) Java HotSpot(TM) 64-Bit Server VM (build 25.74-b02, mixed mode) Java 8 で、 Oracle の JVM を前提とした話です。 Java のメモリ管理 これを知っておかないと、 OOME が起こっても、メモリ内で何が起こっていて、どこを調査すべきで、どのように対処したらいいのかが判断できない。 なので、まずは、そもそも J

    OutOfMemoryError の調べ方 - Qiita
  • Java開発の性能改善! その1 jstatによるヒープ/GCの確認 - Qiita

    JavaのWeb開発の開発後期になると性能試験や負荷試験を実施することになると思いますが、 そのフェーズになると色々な問題が起こることが多い。 今まで起きた問題と調査・解決方法をいくつかの回に分けて紹介しようと思います。 まずはメモリリーク。 長時間サーバを起動して運用していたり、負荷試験を実施するとメモリリークを起こすことがある。 ガベージコレクションのおさらい Javaのヒープは大きくnew領域(young領域)とold領域に分かれます。 new領域には生成されてすぐのオブジェクトが格納されてマイナーGCにて未使用になった際に開放されます。 マイナーGCを何度も繰り返されても開放されない(長く参照されている)オブジェクトは old領域へと移動され、こちらはメジャーGC(フルGC)で開放されます。(メジャーGCはnewとperm領域も開放。) もう少し細かく説明すると・・・ new領域は

    Java開発の性能改善! その1 jstatによるヒープ/GCの確認 - Qiita
  • CentOSで「alternatives」コマンドを使用してJavaのバージョンを切り替える - 猫にWeb

    CentOSのJavaをOpenJDKじゃなくて、OracleのJDKに変更しようとした時、 今までは「rpm -qa | grep java」で対象を洗いだして「yum」コマンドでアンインストールしていました。 ただこの方法だと他のパッケージと関連づいている場合もあるし、あまりスマートではありません。 ところが「alternatives」コマンドを使用すると、様々なバージョンのJavaを共存させて切り替える事ができます。 手順は下記になります。 既にOracleのJDKをインストールしている事が前提です。 1 現在のJDKの確認 # alternatives --config java 1 プログラムがあり 'java' を提供します。 選択 コマンド ----------------------------------------------- *+ 1 /usr/lib/jvm/jr

    CentOSで「alternatives」コマンドを使用してJavaのバージョンを切り替える - 猫にWeb
    mfham
    mfham 2015/01/01
  • LL から Java に移行した人がはまりがちなこと - tokuhirom's blog

    こんにちは。Java 初心者です。 Java 初心者、得に LL から Java に来た人にありがちな問題について社内向けに書いたものをオープンアンドシェアさせていただきます。 前提として、我々は Java 8 でガンガン攻めているということをご承知おきください。 また、自分がこの数ヶ月で「うわー。こうしとくべきだったのかー」と気づいたやつをドヤ顔で語っているということにもご注意ください。 【追記】 対象は中規模 B2C の場合です(中規模というのは facebook より小さいという程度の意味です) 例外を握りつぶさないようにしよう Eclipse が生成する以下のようなコードをそのまま残しているケース。 これは言うまでもなく良くないですね。デバッグが困難になります。 try { } catch (IOException e) { e.printStackTrace(); } Perl

  • Java書けるんなら当然JavaScript呼び出せるよね? - プログラマーの脳みそ

    上司Java書けるんなら当然JavaScript呼び出せるよね?さっさとやっておいて」 JavaからJavaScriptを呼び出す Java 6 からスクリプトAPIを通じてスクリプト言語を呼び出すことができる。Java標準でJavaScriptのエンジン Rhinoが組み込まれているので特にインストール作業やクラスパスを通すような作業なしにJavaScriptの呼び出しをすることができる。 import javax.script.*; public class Sample { public static void main(String[] args) throws ScriptException { ScriptEngineManager manager = new ScriptEngineManager(); ScriptEngine engine = manager.getEn

    Java書けるんなら当然JavaScript呼び出せるよね? - プログラマーの脳みそ
  • 記事一覧 - terazzoの日記

    お題: MapMapに変換するメソッドを作るという話題。 Mapの置換にみるジェネリクス表現 - プログラマーの脳みそ 元の話はJavaなんだけどScalaではできるかどうかやってみた。 バージョンはScala 2.11.2

    記事一覧 - terazzoの日記
    mfham
    mfham 2014/02/28
  • 「Javaが使われないのは、エンジニアが楽しくないからだ」 - 感謝のプログラミング

    面白い人に出会った。 彼を一文で表すと、 SIerにいるくせに技術が大好きで、コードを書きたくても書けない現状に嘆きつつ、 多額のローンを背負ってしまったため転職に踏み切ることもできず、夢と現実の狭間で苦しんでいる男だ。 この人の素直な感じがかなり好きで、出会いざますぐに心を開いてしまった。 やっぱりアツく技術的な話をしてくれる人は当に楽しい。 会社にいる人の5割はSSDって何?って人だし、6割はJavaJavaScriptの違いもわからない人で、8割はGoogle検索無しでコンソールに「Hello World」を出力させることもできないような人達だ。 実際に統計をとったわけではないけれど、これは全然大げさな話ではない。 「システムエンジニア」なのに、当にこんな感じなのだ。 その代わり、ExcelやWordを駆使して資料を作成する技術は素晴らしいものがある。 長時間の会議に耐えうる精

    「Javaが使われないのは、エンジニアが楽しくないからだ」 - 感謝のプログラミング
  • Javaを使うメリットはありますか? はい、それはもちろんあるに決まってます! - ブログなんだよもん

    /.Jに聞け:Javaを使うメリットは? | スラッシュドット・ジャパン デベロッパー え、ありますよね? Webアプリに限っても。 というか、上げてるデメリットが現代的じゃないなぁ... 個人的には少数精鋭チームを作れてないならJavaはかなり有りな選択だと思っています。 ※ Java使ってるメンバーがスキルが低いのではなく、LL系で高品質なものを作るのにスキルが必要で、例えスキルがあっても多人数開発にはあまり向かない、という意図 というわけで、自分が思うLL系言語ではなく、JavaでWebアプリを開発するメリットを書いてみます。 静的型づけ言語 HaskellとかOCamlとかScalaとか、その辺の超強力な型付け言語から見ると弱いですが、多くのLLと違い静的型付けな事が特徴です。 これは型というメタ情報を言語仕様に明確に取り込んでいるということです。以下のメリットがあります。 人間が

    Javaを使うメリットはありますか? はい、それはもちろんあるに決まってます! - ブログなんだよもん
    mfham
    mfham 2014/02/02
  • Java8には型推論があるので型指定不要で変数が使えますよ - きしだのHatena

    Javaプログラマのみなさんは、Javaは型推論がないから変数の型指定をしなくていけなくてダサい、などとイジメられた経験があると思います。 おかあさんに型推論をねだるとGroovyをわたされたり、おとうさんに型推論をねだるとScalaがやってきたり、プレステが欲しいって言ったのにWiiやXboxを買い渡される感を味わった人も多いのではないでしょうか。 そんな良い子のJavaプログラマのために、今年はサンタが素敵なプレゼントを持ってきてくれましたよ。 同じ型を書くのがダサい たとえばウィンドウを出してボタンを押したらメッセージが表示されるサンプルを書くとこんな感じになりますね。 public static void main(String... args){ JFrame f = new JFrame("テスト"); JButton b = new JButton("押して"); JText

    Java8には型推論があるので型指定不要で変数が使えますよ - きしだのHatena
    mfham
    mfham 2013/12/25
  • 2014ブレイク確実!JavaベースのポータブルなWebフレームワーク Dropwizard - yojikのlog

    最近Dropwizardというフレームワークが海外JavaおよびJVMベース言語界隈で流行り始めている感しがします。 Thought Works Technology Reader でも Traialに入ってきています。 http://dropwizard.codahale.com/ このフレームワークはYammerのバックエンドWebサービスを提供するために作られたフレームワークで、アプリケーション開発者からみると、 JaxRSベースのREST提供フレームワーク ORM Jettyベースの組み込みWebサーバ Metricsを収集するためのライブラリ、管理ツール等 といった機能があります。 ここらへんまでは普通のフレームワークと基的には違いが無く、むしろWebサービスに特化しているため物足りなく感じるのですが、特筆すべきは、このフレームワークが推奨するデプロイ・運用方法にあります。

    2014ブレイク確実!JavaベースのポータブルなWebフレームワーク Dropwizard - yojikのlog
    mfham
    mfham 2013/12/14
  • 最近の Java Web 開発 : http://qiita.com/monzou/items/9174d0baf08af295e703

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    最近の Java Web 開発 : http://qiita.com/monzou/items/9174d0baf08af295e703
    mfham
    mfham 2013/10/26
  • ログイン - サポートドキュメント

    開発者ライセンス - この Confluence サイトは実稼働以外での利用に限定されています。 Čeština Dansk Deutsch Eesti English (UK) English (US) Español Français Íslenska Italiano Magyar Nederlands Norsk Polski Português Română Slovenčina Suomi Svenska Русский 中文 日語 한국어 アトラシアンConfluenceが提供7.3.5 アトラシアンのConfluenceによって印刷されました7.3.5 バグ報告 Atlassian ニュース

  • 大量生産される新卒デビューJavaプログラマがぶつかる壁 - GoTheDistance

    ちょっと前にはてブで人気だったこの記事。 ■Javaスクールの危険 私のような新卒でIT業界に入ってきてJavaでプログラムを覚えた人間、即ち大量生産されるJavaプログラマは、恐らく以下のような状況にある or あったと思われる。 このエントリは、 大量生産されるJavaプログラマは業務上アルゴリズムでヒーヒー言う機会が少ない。分岐とループだけ分かればビジネスロジックの肝である「業務ルール」は表現できてしまうことが多いので、ソフトウェアの品質を高める問題解決アプローチの重要性を叩き込まれることが非常に少ない。Javaの主戦場であるWEBアプリではその傾向が強く、「プログラムで表現できる幅」が広がらないと感じている。しかし、ちゃんとしたアルゴリズムを勉強しないとコードで表現できる幅を広げることは難しいので、みんながんばろう! という話です。 文法が分からないと文が書けない とにかく覚えたの

    大量生産される新卒デビューJavaプログラマがぶつかる壁 - GoTheDistance
  • Javaスクールの危険 - The Joel on Software Translation Project

    Joel Spolsky / 青木靖 訳 2005年12月29日木曜 近頃の若い者ときたら。 勤勉はいったいどこへ行ってしまったんだ? 「近頃の若い者」は我慢がないと不平を言うようになったのは、私も年を取ったということなのかもしれない。 そりゃ恵まれてるね。私は3ヶ月汚水浄化槽の中の茶色い紙袋に住んでいたよ。朝6時に起きて、袋を掃除し、固くなったパンの耳をべ、工場まで歩いて行くと、1日14時間、毎週毎週働きつづけ、家に帰ると親父にベルトでたたかれて寝床についていたんだ。 ——モンティ・パイソンの空飛ぶサーカス 4人のヨークシャー人 私は若い頃、パンチカードでプログラムを作る方法を学んだ。ミスをしたら、それを訂正するためのバックスペースのような近代的な機能は存在しなかった。カードを捨ててはじめから打ち直すのだ。 私は1991年にプログラマの面接をするようになった。コーディングの問題に答える

  • オブジェクト指向プログラミングの教え方? | システム設計日記

    技術者仲間で話していたら、4月入社の新人に、オブジェクト指向プログラミングをどうやって教えたらよいか?、という話になった。 想定している言語は Java。 ■動物・犬・モデルの説明から ■基用語の説明から:「カプセル化とは」「継承とは」... ■サンプルコードから: System.out.println( "hello world" ) ... どのパターンでもうまくいかなかったので、今度の新人研修では何か工夫したいね、という話。 結論から言うと「これだ」というアイデアがでたわけではないが、話の内容は、いろいろ興味深かったのでメモ書き。 Java はオブジェクト指向の言語なの? Java は、ある意味 C言語の仲間。ある側面はほとんど同じ言語。 ・int, long (プリミティブなデータ型) ・配列操作 ・if/for/return ここだけ見れば、C言語のまま。つまり命令型、手続き

  • RubyコードをJavaに変換するコンパイラー·FastRuby MOONGIFT

    FastRubyRubyJavaに変換するコンパイラーです。 Rubyは1.9系になり、高速化されました。現在開発中の2.0系になればさらに高速化されるでしょう。そんな中、さらに高速な実装を目指しているのがFastRubyRubyからJavaに変換するソフトウェアです。 実行します。 生成されたJavaのコード。 筆者環境ではJavaを実行するとエラーになってしまいましたが、RubyのコードからきちんとJavaが生成されました。JRuby向けに書かれたコードをJavaに変換することで、さらにコンパイルして実行速度を高めるという仕組みのようです。 FastRubyJava製のソフトウェア(ソースコードは公開されていますがライセンスは明記されてません)です。 MOONGIFTはこう見る 言語の壁を乗り越えるようなプロジェクトが最近の流行かも知れません。JavaScriptで作られた各言

    RubyコードをJavaに変換するコンパイラー·FastRuby MOONGIFT