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
注意 本日本語訳は、Dagger ユーザガイドの 2013-03-27 時点 からの非公式な翻訳です。最新および正確な情報については、オリジナルのユーザガイドを参照してください。 イントロダクション アプリケーションで最良のクラスとは、何かを実行するクラスです。 たとえば、バーコード読み取りクラス BarcodeDecoder 、 Koopa 物理エンジンクラス KoopaPhysicsEngine、 音楽ストリーミングクラス AudioStreamerといった類です。こういったクラスは別のクラスへの依存性を持ちます(バーコードカメラファインダクラス BarcodeCameraFinder、 デフォルトの物理エンジンクラス DefaultPhysicsEngine、 HTTPストリーミングクラス HttpStreamer 等々)。 一方で、アプリケーションで最悪のクラスとは、ほとんど何もし
G* Advent Calendar 20日目のエントリです。 世間で注目を集めているらしいリアクティブプログラミングというのがどういうものか知りたくて、少しかじってみました。 リアクティブとは? まず概念については The Reactive Manifesto という文書があります。その中で書かれているように、リアクティブなプログラムでは以下のことが大事だそうです。 React to events (event-driven) React to load (scalable) React to failures (resilient) React to users (responsive) イベント駆動でスケーラブルかつ耐障害性のあるプログラムを作ればユーザはレスポンスよく使えるよ、ってことでしょうか。いまどきのアプリケーションはそうあるべきでしょうが、これだけだとモヤモヤしていてイメー
id:KenichiroMurata(@muraken720 )です。 本記事はJava Advent Calendar 2013 - Adventarの6日目の記事です。 皆さん、RxJava 使っていますか? RxJava はNetflixが開発する Reactive Extensions のJava版です。Reactive Extensions (Rx)はReactive Programmingを可能にするライブラリです。 私はReactive Programmingとはなんぞや?と語れるほどには詳しくないので、ここでは asynchronous で event-based なプログラムを書くのに便利なライブラリというレベルの紹介とさせて頂きます。:-) さて、なぜ RxJava なのか?というと Vert.x を使って、asynchronous で eventbusベースのプログラ
Deprecated – Please upgrade to Dagger 2 Square's Dagger 1.x is deprecated in favor of Google's Dagger 2. Please see the migration guide for help with the upgrade. Introduction The best classes in any application are the ones that do stuff: the BarcodeDecoder, the KoopaPhysicsEngine, and the AudioStreamer. These classes have dependencies; perhaps a BarcodeCameraFinder, DefaultPhysicsEngine, and an
こんにちは。Java 初心者です。 Java 初心者、得に LL から Java に来た人にありがちな問題について社内向けに書いたものをオープンアンドシェアさせていただきます。 前提として、我々は Java 8 でガンガン攻めているということをご承知おきください。 また、自分がこの数ヶ月で「うわー。こうしとくべきだったのかー」と気づいたやつをドヤ顔で語っているということにもご注意ください。 【追記】 対象は中規模 B2C の場合です(中規模というのは facebook より小さいという程度の意味です) 例外を握りつぶさないようにしよう Eclipse が生成する以下のようなコードをそのまま残しているケース。 これは言うまでもなく良くないですね。デバッグが困難になります。 try { } catch (IOException e) { e.printStackTrace(); } Perl
JavaVMのGC情報を取得します 前回はLinuxOSのメモリー関連情報を取得して、CloudWatchに登録しました。今回は、JavaVMのガベージコレクション周りの情報をCloudWatchに登録したいと思います。 環境の構築 今回は、JavaVMのGCを見るためにTomcatをインストールします。また、JREではなくJDKを利用しますので必要なものをインストールします。CloudWatchコマンドラインツールは設定済みとします。詳しくは前回の記事をご覧ください。JREではなくJDKを入れる理由は、jpsコマンドとjstatコマンドを使うためです。これらのコマンドはプロセスIDなどを取得するためsudoで実行します。 $ sudo yum install java-1.6.0-openjdk-devel $ sudo alternatives --install /usr/bin/j
先日、OracleのWebページからJDKとJREをダウンロードしようとしたら、「Server JRE」というのが用意されていることに気がついた。 このServer JREとは、いったい何じゃらほい? というのが今回のテーマ。なお基本的にLinuxサーバ環境で考えます(Windows, Solarisは無視)。 JDKとJRE はじめに、複雑怪奇なJavaパッケージについて少し解説しておく。「Javaをインストール」という場合には、開発キットであるJDKとランタイムであるJRE、どちらをインストールするかが問題になる。しかしこの日記を読んでいるような人ならばJava開発者であろうから、JDKを入れてしまえばほぼ間違いなく問題は解決する。 なぜなら、JDKはJREを内包しているので、JDKをインストールすれば自動的にJREも入るからである。というわけで開発者なら、何も考えずにJDKを入れてし
JVM 上で動くアプリケーションを運用するには GC に気を配る必要があります。 GC をうまくチューニングするためには、まずは現状を知ることが大切です。 GC の統計情報は jstat -gcutil で取得することができます。試しに Jenkins のプロセスを見てみます。 $ pid=`sudo jps | grep jenkins | awk '{ print $1 }'` $ sudo jstat -gcutil ${pid} S0 S1 E O P YGC YGCT FGC FGCT GCT 0.00 57.68 21.33 66.26 99.51 73 0.179 4 0.271 0.450 この統計情報を定期的に取得してビジュアライズすれば GC の傾向がつかめます。この AWS 全盛期に昔ながらの RRDtool は使いたくないので、今回は CloudWatch でビジュ
OutOfMemoryError の対応方法/Heap 分析ツール(MAT)の使い方 1. Copyright (c)2014 ITOCHU Techno-Solutions CorporationCopyright (c)2014 ITOCHU Techno-Solutions Corporation OutOfMemoryError の対応方法 / Heap 解析ツール(MAT)の使い方 ソリューションビジネス部 橋本 和俊 2014/6/24 2. Copyright (c)2014 ITOCHU Techno-Solutions Corporation はじめに • 発表する内容は個人の見解であり、所属する組織の公式 な見解ではありません。 • 資料の内容は正確を期するよう注意しておりますが、妥 当性や正確性について保証するものではありません。 • 資料に関しては以下の環境において
Spring Bootとは いまから10年以上前、Spring frameworkは巨大化したJ2EEへのアンチテーゼとして登場し、 DIやAOPといった、当時の最新技術をもってWebアプリ開発に必要な機能を提供してくれました。 ※Spring frameworkについてはこのへん参照 Webアプリ開発において革新をもたらしたSpringでしたが、時間が経つにつれSpring frameworkまわりの さまざまなプロダクトが登場し、J2EE以上に肥大化していきました。 そこで最近登場したのが、今回紹介するSpring Bootです。 Spring Bootは「コードを全く生成することなく、XML構成ファイルなしで本番環境で利用できる Springベースのアプリを作成し、すぐに実行できるようにすること」とのことです。 開発者がSpring Bootを使用することで、「Springプラットフ
印刷 メール 詳細 カテゴリ: Groovy 最終更新日:2013年7月12日(金)01:11 セミコロンは不要 C / C++ / C# / Javaを使っていた人はセミコロンをつけていました。Groovyは99%のJavaの構文をサポートしているため、JavaコードをGroovyのプログラムに簡単に貼り付けることができてしまいます。そうすると山のようなセミコロンがあちらこちらに現れます。しかし、、、Groovyではセミコロンは必須ではなく省略することができ、さらに言えばそれらを削除すべきです。 returnキーワードは必須ではない Groovymにおいてreturnキーワードは必須ではなく、メソッドの最後の式の評価結果がメソッドの返値となります。returnを省略すると短いメソッドやクロージャにおいてより簡潔になります。 String toString() { return
An Open Source Java Content Based Image Retrieval Library The LIRE (Lucene Image REtrieval) library provides a simple way to retrieve images and photos based on their color and texture characteristics. LIRE creates a Lucene index of image features for content based image retrieval (CBIR). Several different low level features are available, such as MPEG-7 ScalableColor, ColorLayout, and EdgeHistogr
4月下旬に翔泳社さんから発売される「Java逆引きレシピ」という本を4名の共著で書きました。 Java逆引きレシピ 作者: 竹添直樹,高橋和也,織田翔,島本多可子出版社/メーカー: 翔泳社発売日: 2014/04/22メディア: 単行本(ソフトカバー)この商品を含むブログ (4件) を見る Java 6〜8に対応し、JavaSEのAPIで利用範囲の高いものに加え、JUnitもカバーしていますのでこの一冊でJava開発の基礎を一通り押さえられるのではないかと思います。 Java 8の新機能はもちろんのこと、NIO/NIO2やConcurrent UtilitiesなどJava 5以降の新機能についてもきっちりと書いていますので、これからJavaをはじめる初心者だけではなく、すでにJavaをやっているけれど、Java 5〜7あたりの新機能が押さえきれていないという方のお役にも立てるはずです。
以下の環境とテストでCMSとG1GCを比較してみた。かなり急ぎでやったので間違っている可能性が多少ある。 16 cores, 32GB mem -Xms24g -Xmx24g 8 instances Infinispan 6.0.3.Final DIST cache, put 4GB data (1KB entry * 2M, 2GB data with one backup copy, 2GB * 2 = 4GB) CMS: -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=30 G1GC: -XX:+UseG1GC -XX:G1HeapRegionSize=16m -XX:InitiatingHeapOccupancyPercent=30 $ java -XX:+UseG1GC -XX:+PrintFlagsFinal
4. ヒープストラクチャの基本 予 約 予 約 予 約 Permanent GeneraAon (Class, システム) Old GeneraAon Eden Young GeneraAon From(S0) TO(S1) • Young Generation • 新規で⽣生成されたオブジェクトの⼊入るスペース • Eden, Survivor(S0 and S1) • Old Generation • より⽣生存期間の⻑⾧長いオブジェクトの⼊入るスペース • Permanent Generation(Java8でMetaspaceへ) • クラスやメソッド/Code Cacheが⼊入るスペース 5. マイナーGC 予 約 予 約 予 約 Permanent GeneraAon (Class, システム) Old GeneraAon Eden Young Ge
10. Cpu0 : 2.3%us, 0.7%sy, 0.0%ni, 97.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Cpu1 : 0.3%us, 0.3%sy, 0.0%ni, 99.3%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Cpu2 : 92.0%us, 6.0%sy, 0.0%ni, 2.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Cpu3 : 5.4%us, 1.7%sy, 0.0%ni, 93.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st スループットが全然出ないと思ったら、 CPU一個しか使ってない! そのくせロードアベレージが無駄に高い • Linuxの基本的な情報を取得 11. Thread Dumpを取得する "Attach Listener" dae
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く