並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 10 件 / 10件

新着順 人気順

AspectJの検索結果1 - 10 件 / 10件

  • OpenJDKで使えるパフォーマンス分析と障害診断ツール - Qiita

    Oracle JDKを含むOpenJDKディストリビューション(以下、JavaまたはJDK)にはJFRを筆頭にさまざまな分析ツール/仕組みがあります。 JDK7からJDK12にかけてトレンドが変わった部分もあるので、少しサマったメモを書きます。 メトリクス取得のための仕組み Javaにはパフォーマンスメトリクスを取得するための方法がいくつかあります。代表的なのは下記の3つでしょう。 JMX ログ JPLIS(javaagent) JMX Java Management Extensions(JMX)はJavaのリソース監視および管理のためのプロトコルです。簡単にいえばJava版のSNMPです。 JSR-174としてJava 1.5より取り込まれています。 Managed Bean(MBean)を利用してCPUやメモリの情報を取得したり、特定のイベント(例えば強制GC)とかを実行することも可

      OpenJDKで使えるパフォーマンス分析と障害診断ツール - Qiita
    • Kubernetes で運用する JVM アプリケーションの OutOfMemoryError に備える - Uzabase for Engineers

      こんにちは。SPEEDA 開発チームの old_horizon です。 JVM アプリケーションの運用について回るのが、OutOfMemoryError (以下 OOM) への対処です。 しかし実際に発生した際に、適切なオペレーションを行うのは意外と難しいのではないでしょうか。 特に本番環境では、まず再起動して復旧を急ぐことも多いかと思います。しかし、ただそれを繰り返すばかりでは原因がいつまでも特定できません。 今回は Kubernetes で運用する JVM アプリケーションに対して、ダウンタイムを抑えつつ調査に役立つ情報を自動的に収集する仕組みを構築してみたいと思います。 環境構築 OOM 発生時に、自動的にヒープダンプを取得しコンテナを再起動する java コマンドのオプション指定 補足 ヒープダンプ出力先のボリュームをマウント readinessProbe によるヘルスチェック レ

        Kubernetes で運用する JVM アプリケーションの OutOfMemoryError に備える - Uzabase for Engineers
      • Dependency Injectionでやりたいことはモジュールimport - きしだのHatena

        Dependency Injection(DI)、最近のフレームワークには欠かせない気がする機能になってますね。 そしてDIの説明をみると「依存性の注入」みたいなことが書いてあって、ようわからんになりがちです。 実態としては高機能なimportなので、あまり難しいことを考えなくていいような気がします。 たとえば、こんな感じのMyServiceクラスがあってDIコンテナに管理させるとします。 @Component class MyService { void method() { } } そして、MyServiceを使うMyControllerがあるとします。 @Component class MyController { @Inject MyService service; void hello() { service.method(); } } これって、実際のところMyServiceの

          Dependency Injectionでやりたいことはモジュールimport - きしだのHatena
        • 【感想】『Clean Code アジャイルソフトウェア達人の技』:Uncle Bob流のクリーンなコード道場 - Rのつく財団入り口

          クリーンなコードを書いていこう 以前に上げた『Clean Architecture』の感想記事にブクマなどなどアクセスありがとうございました。読了して洞察が増してクリーンを追求したいな気分になったので、同じくボブおじさんによるCleanシリーズ、『Clean Code』も読むことにしました。 こちらはアーキテクチャ本よりも前に刊行。アーキテクチャのレベルよりも細かな、クラスや関数、プログラミングの習慣レベルでのクリーンで良いプログラムのコードの書き方に注目した本となっています。 Clean Code - アスキードワンゴ Clean Code アジャイルソフトウェア達人の技 (アスキードワンゴ) 作者:Robert C.Martin,花井 志生発売日: 2017/12/28メディア: Kindle版 前書き 名著らしく何やらインテリジェントなことを言ったり日本の1950年代の工場の品質向上

            【感想】『Clean Code アジャイルソフトウェア達人の技』:Uncle Bob流のクリーンなコード道場 - Rのつく財団入り口
          • OpenTelemetry Instrumentation for Javaの自動トレースの仕組みの調査 - VA Linux エンジニアブログ

            はじめに 前提事項 お試し動作確認 仕組みの調査 javaagentとは バイトコード変更が行われている箇所 バイトコードの変更内容 アプリケーション間のコンテキスト伝播 Spanに設定される名前 Spanに追加されるタグ 未調査項目 OpenTelemetry Instrumentation for Java のカスタマイズ WARやEARアプリケーションへの適用 まとめ 執筆者 : 山下雅喜 はじめに 分散トレーシングを行うためのソフトウェアとして、最近は OpenTelemetry が流行してきているように感じます。 OpenTelemetry は CNCF の Incubating プロジェクトであり、OpenTracing や OpenCensus を統合したものとして活発に仕様策定や開発が行われています。 一方、実際に分散トレーシングを行うためには、トレースを出力する仕組みをア

              OpenTelemetry Instrumentation for Javaの自動トレースの仕組みの調査 - VA Linux エンジニアブログ
            • JavaのDIコンテナは言語機能の補完でありinjectはimport - きしだのHatena

              というブログを書こうとしたら、すでにあった。 Dependency Injectionでやりたいことはモジュールimport - きしだのHatena 依存性の注入って要するにimportなので。 まず、DIコンテナを実装してみるとどういうものかがわかりやすくなります。 このときの結論はこんな感じ。 DIコンテナというのは、Javaのリフレクションやバイトコード操作、ThreadLocalといった、あまり美しくない部分を覆い隠してきれいなコードでアプリケーションを構築するための仕組み 作って理解するDIコンテナ - きしだのHatena 言語機能の補完なので、他の言語で同様に便利とは限らないわけですね。 わかりやすい例として、DIコンテナの現実的に便利なのはAOPを利用した宣言的トランザクションやログです。これはAspectJのように言語機能としてAOPが用意されていれば不要になります。

                JavaのDIコンテナは言語機能の補完でありinjectはimport - きしだのHatena
              • 「AOP(アスペクト指向プログラミング)」とは?Springフレームワークで使ってみよう|Udemy メディア

                アプリ開発 2024/05/20 「AOP(アスペクト指向プログラミング)」とは?Springフレームワークで使ってみよう 「AOP」とは、アスペクト指向プログラミングのことです。有名なWebフレームワークであるSpringでも使うことができるため、「実際にどのような手法なのかあらためてチェックしておきたい」という方も多いのではないでしょうか?今回は、AOPの基本概要やメリット、Springフレームワークを使用した実例について解説します。 AOP:Aspect Oriented Programming(アスペクト指向プログラミング)とは? 「AOP」とは、Aspect Oriented Programmingの略称で、直訳するとアスペクト指向プログラミングのことです。プログラミングに用いられる手法の概念を意味します。 具体的には、あらゆるオブジェクトに散在する共通処理を抜き出し、それを一つ

                  「AOP(アスペクト指向プログラミング)」とは?Springフレームワークで使ってみよう|Udemy メディア
                • Spring BootのPageableで一定量以上のoffsetや意図しないSortを防ぐ - grep Tips *

                  動作確認環境 Java 11 Spring Boot 2.5.5 一定量以上のoffsetや意図しないSortによる問題 一定量以上のoffset Spring Bootによるpage, sizeへの制限 Spring BootのPageableをControllerの引数にセットすればpage, size等のクエリパラメータを解釈してPageableにセットしてくれる。 OutOfMemoryを防ぐために、Spring Bootのデフォルト設定でsizeに2,000件以上設定しても2,000件になるようになっている(docs.spring.ioか日本語訳spring.pleiades.ioのspring.data.web.pageable.max-page-sizeを参照)。つまりPageableの1ページの件数はセーフガードが入ってる。 しかしpageには上限の設定がない。確かにJav

                    Spring BootのPageableで一定量以上のoffsetや意図しないSortを防ぐ - grep Tips *
                  • [GitHub] Markdownの「シンタックスハイライト」に対応している言語一覧 - ねこの足跡R

                    Markdownでプログラムのソースコードを記述する場合に使うバッククォート3つで囲う「コードブロック」ですが、気の利いた環境だと自動的にシンタックスハイライトによって予約語やコメント分などを色分けして見やすく表示してくれます。 GitHubも例外ではなく、各リポジトリに常設されているWikiやREADMEなどをMarkdownで記述した場合は自動的にシンタックスハイライトされます。 メジャーな言語であればそのまま記述すればよいのですが、例えばYAMLやJSONなどのデータ形式や、Apacheの設定ファイルなどそもそもカラーシンタックスに対応しているのか、対応している場合キーワードはなんだろうと迷いますよね。 今回はGitHubが対応しているカラーシンタックスの設定一覧をまとめておきます。 ハイライトのやり方 GitHubで利用できる言語一覧 定義 一覧 おまけ 抽出方法 参考ページ ハイ

                      [GitHub] Markdownの「シンタックスハイライト」に対応している言語一覧 - ねこの足跡R
                    • Micrometer Spring Boot アプリケーションのモニタリング

                      2018/10/31 の Spring Festで『Micrometer/Prometheusによる大規模システムモニタリング 〜ヤフーインターネット広告システムでの導入事例〜』というセッションを聴講し、興味を持ったので調べました。 Micrometerは、Spring Boot Actuatorが内部で利用しているライブラリです。 参考 Spring Boot 2.0 Release Notes Micrometer 対象バージョンSpring Boot 2.1.0.RELEASEMicrometer Core 1.1.0Micrometerとは?モニタリングシステムに依存せずに、メトリクスの取得を透過的に行う仕組み。 以下の機能を提供する。 メトリクスの収集モニタリングシステムへの通知 メトリスクの収集(micrometer-core)とモニタリングシステムへの通知(micromete

                        Micrometer Spring Boot アプリケーションのモニタリング
                      1