タグ

Javaに関するtorutoのブックマーク (100)

  • Mahout 0.3: オープンソースの機械学習プロジェクト

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Mahout 0.3: オープンソースの機械学習プロジェクト
  • Javaメモリ、GCチューニングとそれにまつわるトラブル対応手順まとめ - 日記のような何か

    GC周りでトラブルシューティングした際の経験や、Web等で調べたことをまとめてみる。 前提 ・JVMは、Sun Javaを想定。(他は使ったことないです。。。) ・Sun Java 1.5-1.6を想定。 目標 マイナーGC、Full GCそれぞれが頻発することなく、かつそれぞれの実行時間を1秒未満に抑えること。 マイナーGCは1秒未満どころではなく、もっと短くなるべき。どれくらいが理想かは?(0.1秒未満ぐらいを目指したい?) 連続した負荷状態(想定されるピークアクセス)でもOutOfMemoryErrorが発生しないこと。 理想的な状態は、上記に加えて、Full GCの発生が低頻度であること。 具体的には、できるだけマイナーGCで短命オブジェクト(1回使ったらもう使わないようなオブジェクト。逆にセッションオブジェクト等は長命オブジェクトとなる)を破棄させて、短命オブジェクトが、Tenu

    Javaメモリ、GCチューニングとそれにまつわるトラブル対応手順まとめ - 日記のような何か
    toruto
    toruto 2010/03/22
    g運用環境で是非設定しておくべきJava起動オプション
  • TomcatのJVM(Java Virtual Machine)チューニング例 - 銀の鍵

    One thing to realize about our fractional reserve banking system is that, like a child's game of musical chairs, as long as the music is playing, there are no losers. Andrew Gause, Monetary Historian 「部分準備金融制度について一つだけ実現している事は、 子供の椅子取りゲームのように、 音楽が流れ続けている限りは敗者が存在しないということである。」 アンドリュー ガウス、金融史家 【Sun HotSpot VMのガベージコレクションとヒープ】 TomcatはApache Software Foundationが提供するフリーのサーブレットコンテナ実装です。要するにJ

    toruto
    toruto 2010/03/22
    もしガベージコレクタの稼働状況を確認したいのであるならば、"-verbose:gc "オプション、および"-XX:+PrintGCTimeStamps"オプションを指定
  • Java 暗号化拡張機能 JDK5.0

    Java Is the Language of Possibilities Java is powering the innovation behind our digital world. Harness this potential with Java resources for student coders, hobbyists, developers, and IT leaders.

    toruto
    toruto 2010/03/22
    -verbose:gc ガベージコレクションイベントが発生するたびに報告します。
  • 「tomcat5 gcの出力先について」(1) Java Solution - @IT

    IT 会議室 Indexリンク Windows Server Insider Insider.NET System Insider XML & SOA Linux Square Master of IP Network Java Solution Security & Trust Database Expert RFID+IC リッチクライアント & 帳票 Server & Storage Coding Edge @ITクラブ Cafe VB業務アプリケーション開発研究 @IT SpecialPR

    toruto
    toruto 2010/03/22
    verbose:gc オプションは標準出力に gc 状況を出力するためのものです。
  • [Java]CATALINA_OPTSの指定

    Tomcatを、ユーザ "tomcat" で起動している場合、 "tomcat"ユーザの ".bash_profile"ファイルに指定することで設定値が適用されます 記述例(~/.bash_profile) CATALINA_OPTS="-server -Xmx128M -Xms64M -Xss256k -Djava.awt.headless=true" export CATALINA_OPTS (*)起動スクリプト(/etc/rc.d/init.d/tomcat)内に指定してもOKです RedHat系Linux(CentOS)の場合、起動時の環境変数等は、/etc/profile.d/以下に記載し、起動スクリプト(/etc/rc.d/init.d/tomcat等)から読み込む様に記述が統一されています 例(/etc/rc.d/init.d/tomcat) : : : : : : # So

    toruto
    toruto 2010/03/22
    tomcat4起動時のパラメータ「CATALINA_OPTS」の指定メモです。
  • CATALINA_OPTSとJAVA_OPTSの違い

    bin/catalina.shのコメントに書かれているように、stop時も使われるかが違うだけです。 CATALINA_OPTS Java runtime options used when the “start”, or “run” command is executed. JAVA_OPTS Java runtime options used when the “start”, “stop”, or “run” command is executed. 例えば-Xmx指定などは、来CATALINA_OPTSで十分なはずです。 また、gcログの出力ファイル名に起動時の日時をつけたい場合なども、起動時だけ有効なCATALINA_OPTSを使うと簡単におこなえます。 CATALINA_OPTS="-XX:+PrintGCDetails -Xloggc:$CATALINA_HOME/logs

    CATALINA_OPTSとJAVA_OPTSの違い
    toruto
    toruto 2010/03/22
    私はこれを$CATALINA_HOME/bin/setenv.shに書くようにしています。
  • ThreadとHashMapに潜む無限回廊は実に面白い? (1/3) - @IT

    ThreadとHashMapに潜む無限回廊は実に面白い?:現場から学ぶWebアプリ開発のトラブルハック(10)(1/3 ページ) 連載は、現場でのエンジニアの経験から得られた、APサーバをベースとしたWebアプリ開発における注意点やノウハウについて解説するハック集である。現在起きているトラブルの解決や、今後の開発の参考として大いに活用していただきたい。(編集部) マルチスレッドのトラブルハックはさっぱり分からない… 対処が難しいトラブルといえば、GC(ガベージ・コレクション)とマルチスレッド処理に起因することが多い。 前々回(「肥え続けるTomcatと胃を痛めるトラブルハッカー 」)と前回(「JavaのGC頻度に惑わされた年末年始の苦いメモリ」)の2回にわたってGC、特にメモリ周りのトラブルを取り上げた。そこで今回は、マルチスレッド処理のトラブルの1つ、「レースコンディション(競合状態)

    ThreadとHashMapに潜む無限回廊は実に面白い? (1/3) - @IT
    toruto
    toruto 2010/03/21
    Javaのバージョンによっては、親プロセスのプロセスIDが表示されてしまうため、このテクニックは通用しないことに注意する。
  • linuxへのJDK1.5インストール - osakana_21の日記

    1.JDKダウンロード http://java.sun.com/j2se/1.5.0/ja/download.html jdk-1_5_0_15-nb-6_0_1-linux-ml.sh 2.DISPLAY 環境変数を設定する。 # export DISPLAY=:0.0 3.権限変更 # chomod +x ./jdk-1_5_0_15-nb-6_0_1-linux-ml.sh 4.インストーラ実行 # ./jdk-1_5_0_15-nb-6_0_1-linux-ml.sh 5.GUIでのインストール ※Tomcat5.5とJDK1.6だとエラーとなったため、JDK1.5をインストールし直しました。。 http://closeworld.exblog.jp/8206510/

    linuxへのJDK1.5インストール - osakana_21の日記
    toruto
    toruto 2010/03/21
    ※Tomcat5.5とJDK1.6だとエラーとなったため、JDK1.5をインストールし直しました。。
  • packageの使い方(ytp.ne.jp)

    /** * 初めて作るであろういっちょまえのクラス * @author YTP */ public class Message { /** * インスタンス変数だってあるもん */ private String sMessage_ = null; /** * 初めてのコンストラクタでーす */ public Message() { } /** * 初めてのセッターメソッドでーす * @param sMessage 幸せなメッセージを下さい */ public void setMessage(String sMessage) { sMessage_ = sMessage; } /** * お披露目でーす */ public void showMessage() { System.out.println(sMessage_); } }

  • Android SDK のインストール | Android Developers

    このページでは、Android SDK をインストールして、開発環境を設定する方法について説明します。SDK をまだダウンロードしていない場合は、[ダウンロード] ページからダウンロードしてください。SDK をダウンロードした後に、このページの手順を行ってください。 インストール中に問題が発生した場合は、このページの下部にあるインストールに関する注意事項を参照してください。 アップグレードする場合 SDK の以前のバージョンを使用してアプリケーションを既に開発している場合は、このページの代わりに、SDK のアップグレード をご覧ください。 インストールの準備 インストールを始める前に、開発用マシンがシステム要件を満たしていることを確認してください。 Eclipse 環境に Android Development Tools(ADT)プラグインを組み込んだ開発環境は、Android 向け開発

  • 集合知イン・アクション - public static void main

    集合知イン・アクションposted with amazlet at 09.05.17Satnam Alag ソフトバンククリエイティブ 売り上げランキング: 3193 Amazon.co.jp で詳細を見る 書は2008年10月に発売された「Collective Intelligence in Action」の邦訳されたものです。 集合知とはどういうものなのかから始まり、Javaを用いて実際に集合知を扱うアプリケーションの作り方まで広い内容が書いてあります。 データマイニングのような話題ばかりではなく、既存のブログ検索から情報を取得してきたり、検索の仕組みの作り方やタグクラウドの実現方法、クローリングについてなど集合知の収集方法についても言及がなされています。 集合知プログラミングとの違い 集合知を扱ったとしては「集合知プログラミング」が有名だと思います。 集合知プログラミングは各手法

    集合知イン・アクション - public static void main
  • 自然言語処理は Python がいちばん - 武蔵野日記

    現在大学1年生の人で3年後には NAIST に (というか松研に) 来たいという人から「どんなプログラミング言語やっておくといいですか」と質問されたりするのだが、なかなか答えるのは難しい。自分は PerlPython がメインでときどき C++/C# を使ったりするのだが、どれが一番いいかはなんとも言えないので、自然言語処理以外に転向する可能性も考えると、C とか C++ とか Java とか(授業でそちらをやるのであれば)を最初の武器に選んだ方がいいのでは、と思ってはいる。 そんなこんなで最近 Hal Daume III (機械学習を用いた自然言語処理では非常に有名な人) のブログで Language of Choice というタイムリーなエントリーが出ていたので、紹介すると、「それなりに大きな自然言語処理のプロジェクトでどのプログラミング言語を使うのか」というアンケート結果が出

    自然言語処理は Python がいちばん - 武蔵野日記
  • JNI-02 引数と返り値を使ってみる。

    とりあえずこんなJavaコードにする。 1,2,3と順にint値を渡して対応する文字列をもらう。 public class HelloNumber { public native String convertToString(int nNumber); static { System.loadLibrary("HelloNumber"); } public static void main( String[] args ) { HelloNumber hello = new HelloNumber(); for ( int i=1; i<=3; i++ ) { String strNumber = hello.convertToString(i); System.out.println( strNumber ); } } } javacでコンパイルし、javahでヘッダファイルを作成する。

  • メンバ変数(インスタンス変数)の命名 - 神様なんて信じない僕らのために

    職場で話題になったこと。 m_value mValue this.value(self.value) _value value_ value と色々あるわけですが、 世の中では 「m_ or mでメンバである事を明示する派」(m派) 「mは冗長だから_だけで表すよ派」(接頭辞アンダースコア派=マーチン・ファウラー派) 「言語機能に乗っ取ってthisつけて表すよ派」(this派) 「前置_は言語処理系に予約されている(c/c++)ので後置_にするよ派」(接尾辞アンダースコア派) id:nattowさんの指摘で追記。 「つけないと区別できないのは設計がまずいから俺はつけないよ、てか接頭辞も接尾辞もきもいよ派」(設計上正しければ区別必要ないよ派) がいるような気がします。 (Rubyの@派とかは知らぬ) で、割と最近「後置_派」(C++ Coding Standardsの影響)になったんですが、

    メンバ変数(インスタンス変数)の命名 - 神様なんて信じない僕らのために
    toruto
    toruto 2008/11/28
    (言語では許容されているけど変数は_や$で始めるんじゃねぇよボケナス)
  • グラフを扱うJavaライブラリ「Jung」の紹介 - Twitterのグラフ構造を視覚化 - public static void main

    java-ja 第12回のLTで話そうと思ったのですが、出番がなかったので資料をブログで公開しておきます。 Jungは研究などでグラフ構造が出たときに、理解しやすくするために可視化するのに使っています。他にもいくつかグラフを扱うライブラリは存在していますが、日語の資料があったのと拡張可能なことが多かったのでJungを結果的に使うようになりました。 以下はそのJungについての簡単な解説です。 Jungとは Jungの正式名称はJava Universal Network/Graph Frameworkで、ネットワーク(グラフ) 構造の分析や視覚化を行うためのJavaのOSSライブラリです。グラフ理論、データマイニング、ソーシャルネットワーク分析のアルゴリズムを数多く実装しています。 安定バージョンは1.7.6で最新は2.0betaで、BSDライセンスで使用できます。 http://jun

    グラフを扱うJavaライブラリ「Jung」の紹介 - Twitterのグラフ構造を視覚化 - public static void main
  • WekaTest.java - Google ソースコード検索

  • テキスト処理にWekaを使う(その1:文書のトークン化とTFIDF重みづけ) - シリコンの谷のゾンビ

    テキスト分類課題などでは,文書をTF-IDF重み付けしたbag-of-wordsで表現することが多い.これをベースラインにするため,さくっとこの処理をしたい.卒論やM1のときは,この処理をわざわざ手で書いたのだが,バグが出たら大変だし,なにより面倒くさい. 論文では,最近流行りのLuceneを使っている人もいるけれど,WekaのStringToWordVectorもなかなか高性能.TFIDF重みづけまでの処理をやってみる.Luceneの方が汎用性があるから便利そうなんだけれど,とりあえずテキスト分類課題に使いたいので. 前提知識 かなり自分用メモ(+α)なので,説明不足な部分があります.あと,基的にCUIベースで話を進めます.最後の方に気がついたのですが,GUIとずれがありますね.そこらへんは,まぁ,適当に. Wekaについては,日語情報があるにはあるのですが最近更新されていないので,

    テキスト処理にWekaを使う(その1:文書のトークン化とTFIDF重みづけ) - シリコンの谷のゾンビ
  • 自分がよくやるwekaのJ48の使い方 - 絶対に読んではいけない日記

    たまにwekaAPIを使って簡単な実験をしようと思い立つと、やり方を忘れているのでもメモしておく。 public void runJ48(String training, String test, String result) { try { //load data ArffLoader al = new ArffLoader(); al.setFile(new File(training)); Instances trainInstances = new Instances(al.getDataSet()); al.setFile(new File(test)); Instances testInstances = new Instances(al.getDataSet()); //set class trainInstances.setClassIndex(trainInstances

  • Weka入門 〜決定木とデータセットの作り方〜 in松村研

    Weka入門 決定木とデータセットの作り方 インストール手順 まずは決定木を作ってみよう 入力データを用意しよう 分析結果の意味を知ろう tips キーワード: データマイニング weka 決定木 この文書を自由に改変、転載することを許可します。連絡不要 ● Wekaインストール Weka入手場所 http://www.cs.waikato.ac.nz/~ml/weka/index_downloading.html Windows版では2種類ダウンロードできるファイルがあるが、これはJavaが含まれているかどうかの違いです。 お手持ちのPCJava環境が入っていればwithout the Java VMの方を。 Javaが入っているかどうかわからない、もしくはJavaのバージョンが1.4より古い場合は includes Java VM 1.4の方をダウンロードして下さい

    toruto
    toruto 2008/10/11
    分析結果の意味を知ろう