javaとJavaに関するyoneyoreのブックマーク (4)

  • 現場で良く使う Java Stream イディオム - A Memorandum

    キャスト null 除外 否定フィルタ Streamから配列へ 配列からStreamへ リストの集約 リストからマップへ変換 コレクションの変更 任意キーでグルーピング 任意キーでソート カンマ区切り プリミティブRangeからリストへ オブジェクト型の合計 BigDecimal の合計 グルーピングして集計 グルーピングしてカウント 最大値/最小値の抽出 Optional から値の取り出し 開発の現場でよく使う Java Stream イディオムです。 キャスト List<String> studentNames = people.stream() .filter(Student.class::isInstance) .map(Student.class::cast) .map(Student::getName) .collect(Collectors.toList()); null 除

    現場で良く使う Java Stream イディオム - A Memorandum
    yoneyore
    yoneyore 2021/11/26
    Java Stream イディオム
  • Javaの外からJavaにチェックポイントを設ける - 赤帽エンジニアブログ

    Red Hat で Solution Architect として OpenJDK を担当している伊藤ちひろ(@chiroito)です。 この記事は、Red Hat Developerのブログ記事、Checkpointing Java from outside of Java | Red Hat Developer の翻訳記事です。 OpenJDKのJava仮想マシン(JVM)がJavaアプリケーションを実行する際、メインクラスを起動する前に十数個のクラスをロードします。また、あるメソッドを数百回実行してから、そのメソッドの最適化コンパイラを起動します。このような準備は、「write once, run anywhere(一度書けばどこでも実行できる)」というJavaのパワーを支える重要な要素ですが、その代償として起動時間が長くなってしまいます。 私たちは、新しいアプローチに取り組んできまし

    Javaの外からJavaにチェックポイントを設ける - 赤帽エンジニアブログ
    yoneyore
    yoneyore 2021/07/22
    JNIにそんな使い方があるとは
  • ContainerJFR入門: コンテナのためのJDK Flight Recorder - 赤帽エンジニアブログ

    Red Hat で Solution Architect として OpenJDK を担当している伊藤ちひろ(@chiroito)です。 この記事は、Red Hat Developerのブログ記事、Introduction to ContainerJFR: JDK Flight Recorder for containers - Red Hat Developer の翻訳記事です。 OpenJDKは長い間、実世界のアプリケーションやワークロードのトップに君臨してきました。これは、パフォーマンス、互換性、信頼性、そして観察可能性を一体化して選ばれています。長年にわたり、JDK Flight Recorder (JFR) と JDK Mission Control (JMC) は、OpenJDKの成功に貢献してきました。しかし最近まで、どちらも商用機能であり、特定のユーザやワークロードでしか利用

    ContainerJFR入門: コンテナのためのJDK Flight Recorder - 赤帽エンジニアブログ
    yoneyore
    yoneyore 2021/05/13
    JFRをコンテナで利用する場合の解説
  • JVMアプリケーションを運用する際のメジャーどころチューニングポイントメモ - yoskhdia’s diary

    JVMにチューニング項目は多々あれど、プロダクションで運用する際に予めおさえておきたい項目をまとめてみるエントリです。*1 勿論、OSもJVMもデフォルトである程度のパフォーマンスは発揮でき、計測を伴わないチューニングは悪手であることはよく知られています。 しかし、設定しておかないとパフォーマンスにそのまま影響すると分かるものを調べないのは裸で戦場に赴くようなものです。*2 どんな項目をどう変更すれば良いのか知っていることは重要な武器なのです。 なぜ調べるのか 今回、チューニングポイントを調べるにあたって、私のモチベーションはどこにあるのかを考えると、以下の要件を満たしたいということがあげられます。 アプリケーションとして求められる品質水準として動作する → 性能目標 異常時に事象を追うことができる ここでいう品質水準・異常とは、パフォーマンスが明らかに低い、アプリケーションがクラッシュす

    JVMアプリケーションを運用する際のメジャーどころチューニングポイントメモ - yoskhdia’s diary
  • 1