タグ

javaとtomcatに関するmanabouのブックマーク (31)

  • JVMとGCのしくみ - ITエンジニアとして生きる

    先日職場でJVMの話をしてた。 ちょうどいい機会だからちょっとまとめたいと思う。 JVMの構成まずはJVMの構成について。JVMには3つの領域が存在する。 Permanent領域(非ヒープ領域) New領域(ヒープ領域) Old領域(ヒープ領域) Permanent領域にはJVMにロードされたクラスやメソッドの情報、New領域にはインスタンス化されたオブジェクトの情報、Old領域には寿命の長いオブジェクトの情報が管理される。(「寿命の長い」については後述のScavenge GCを参照。) Permanent領域は非ヒープ領域、New領域とOld領域はヒープ領域となる。 非ヒープ領域には基的にGCは走らず、JVM起動時に静的な情報が管理される。(※) 一方、ヒープ領域はインスタンス化されたオブジェクト情報といった動的な情報が管理され、GC対象となる。 ※ユーザ定義のクラスローダーが存在する

    JVMとGCのしくみ - ITエンジニアとして生きる
  • FAT JARを簡単に作る | DevelopersIO

    はじめに JAVAのWEBアプリを実行する際はwar形式にして実行することが多いかと思いますが、spring bootなどのフレームワークではjarの中にtomcatなどのアプリケーションも含めてしまいjar形式で実行することができます。jarの中に色々なライブラリのjarも含めて1つのjarファイルにすることをfat jarと呼んだりします。 fat jarにすることで実行ファイルが1つにまとまるため、WEBアプリやバッチアプリの起動がお手軽にできるようになります。そこで今回はfat jarの簡単な作り方を紹介したいと思います。 fat jarを作ってみる では、早速作ってみたいと思います。今回はgradleというビルドツールを使います。gradleはeclipse4.5では標準で使えるようになっているためeclipse4.5で作成します。 eclipseでファイル->その他->Grad

    FAT JARを簡単に作る | DevelopersIO
  • Run Kubernetes on a Mac with Kube Solo

    Products Popular View all products (200+) Azure Virtual Machines Azure Virtual Desktop Azure SQL Microsoft Copilot in Azure PREVIEW Azure AI Services Azure AI Studio Azure Cosmos DB Azure Kubernetes Service (AKS) Azure Arc​ Azure Migrate AI + machine learning Azure Machine Learning Azure AI Services Microsoft Copilot in Azure PREVIEW Azure OpenAI Service Azure AI Studio Azure AI Vision Azure AI Se

  • 組み込みTomcatでJAX-RS(RESTEasy)とCDIを使う - CLOVER🍀

    ちょっと思い立って、なんとなくやってみたくなりまして。 組み込みTomcat上で、JAX-RSとCDIを合わせて使ってみようというお話。これを試すにあたり、条件は以下とします。 JAX-RSの実装はRESTEasy、CDIの実装はWeld WEB-INF/classesとかは作らない Scalaで書く とまあ、あくまで普通のスタンドアロンなJavaアプリのノリでいきます。組み込みTomcat使うわけですし…。 で、やってみていろいろ苦労しましたが…参考にした情報も載せながら書いてきたいと思います。 ビルド定義 まずは、sbtの定義。こんな感じになりました。 build.sbt name := "embedded-tomcat-jaxrs-cdi" version := "0.0.1-SNAPSHOT" organization := "org.littlewings" scalaVersi

    組み込みTomcatでJAX-RS(RESTEasy)とCDIを使う - CLOVER🍀
  • GitHub - Krijger/docker-cookbooks: A collection of Dockerfiles, also shared on the docker index (https://index.docker.io/).

    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

    GitHub - Krijger/docker-cookbooks: A collection of Dockerfiles, also shared on the docker index (https://index.docker.io/).
  • Tomcat SEVERE: Error listenerStart - Debugging.

    From my travels across Google, this error is common. In Grails applications it is almost always from a bad datasource.groovy file. This error is the non descriptive string you receive when deploying your servlet (Grails, Spring, Otherwise) to tomcat (probably version 5.5 or higher). The servlet probably runs fine in development mode on your machine. How do we debug it? Read on. Lets start by getti

  • Netty: Home

    Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty is an NIO client server framework which enables quick and easy development of network applications such as protocol servers and clients. It greatly simplifies and streamlines network programming such as TCP and UDP socket server. 'Quick and ea

  • サーバから応答がない!そんな時はスレッドダンプです @ Advanced Pro Devloper Blog

    株式会社 アドバンスト・プロの開発者ブログへようこそ! 社内の技術者が、他の開発者に向けて、参考になる?技術を紹介するブログです。 昨年12/15に投稿した「Tomcatコネクションのタイムアウト設定」ですが、 追跡調査をしていたところ、根原因は別のところにあることが分かりました。 その際役立ったのがスレッドダンプです。 スレッドダンプって何?今まで聞いたことはありましたが、使ったことがありませんでした。 スレッドダンプとは、Java のプロセス内部で動作している各スレッドがそれぞれどのような 状態になっているかを出力(ダンプ)してくれるものです。 Java のプログラムがフリーズした場合や、パフォーマンス低下が見られる場合などにスレッド ダンプを取得して調査すると、どのスレッドが停滞しているのか、具体的にどのプログラムで 止まっているのかを解析できます。 ・スレッドダンプの取

  • EclEmmaは,djUnitと同じくカバレッジ計測プラグインです。

    株式会社DTS ネットワーク事業プロジェクトマネージャ。Javaを中心にフレームワーク開発や開発プロセス定義など幅広く活躍中。StrutsIDEコミッタ。著書「まるごとEclipse! Vol.1」(発行:インプレスコミュニケーションズ)。 昨今では,ますますテスト工程が重要視されるようになっています。品質の高いソフトウエアを効率的に開発することが,保守・管理コストの低減につながり,最終的なコスト削減を生むからです。 単体テスト工程では,「JUnit」フレームワークがデファクト・スタンダードです。これにより,効率的にテスト・ケース(テスト用のコードを書いたクラス)を作成し,何度でも繰り返し実行できます。単体テストを何度でも繰り返し実行できることは,短期開発で高品質を保つためには欠かせない要素です。 しかし,このようにJUnitフレームワークが品質向上に大きく貢献している半面,カバレッ

    EclEmmaは,djUnitと同じくカバレッジ計測プラグインです。
  • Invention Works: m2eclipseとtomcatPluginを使っている人向け知ってるとうれしいこと

    mvn eclipse:m2eclipse m2eclipseようのクラスパスコンテナ(MAVEN2_CLASSPATH_CONTAINER)の.classpathファイルを作ってくれる。 http://maven.apache.org/plugins/maven-eclipse-plugin/m2eclipse-mojo.html mvn sysdeo-tomcat:m2eclipse sysdeo tomcat plugin用の.tomcatpluginをpom.xmlから作成してくれる。開発用クラスローダの選択を悩まなくてすむ。 servlet.jarが紛れ込んで動かなくなることもなくなるでしょう。 http://mojo.codehaus.org/sysdeo-tomcat-maven-plugin/m2eclipse-mojo.html ちなみに今のところm2eclipseが使い

  • 9.c. JAX-WS を利用した簡単な Web サービス

    アプリケーションの概略 この文章で述べられているサンプル・アプリケーションは2つの整数の足し算を行う単純な計算機です。クライアント・アプリケーションは J2EE アプリケーションではありません。Web サービスをアプリケーションの機能として呼び出す通常の Java アプリケーションです。Web サービスは Geronimo アプリケーション・サーバー上にサーブレットとして公開されています。 サービスの実装 Calculator インターフェースは Web サービスのサービス・エンドポイント・インターフェース (SEI) を定義しています。 package org.apache.geronimo.samples.jws; import javax.jws.WebService; import javax.jws.WebMethod; import javax.jws.WebParam; @

  • TPTPでのTomcatプロファイル方法 - FSWikiLite

    ※もっと組み合わせはあるはずです。。。Tomcatで使用するための設定方法 TPTPのインストール TPTPをEclipseに追加します。 エージェント・コントローラのインストール エージェント・コントローラをインストールします。 http://www.thinkit.co.jp/cert/tech/22/1/3.htmTomcatの設定(Eclipseの場合) サーバビュー(Tomcatを起動/停止させるところ)のTomcatをダブルクリックします。 設定されているJREのどれかを選んで、「コピー」ボタンをクリックします。 以下のように設定してください。 JRE名:任意 デフォルトのVM引数 -XrunpiAgent:server=enabled 作成したJRE設定をドロップダウンより選び、「終了」ボタンをクリックします。 サーバの起動は、通常通り「起動」/「デバッグ」で起動してください

  • crossroad's Blog Eclipse + Maven2 + Tomcat + Seasar2 の開発環境ベスト!?プラクティス

    昨今、良くある(僕自身も好みの)組み合わせで、 ・IDE・・・Eclipse ・ビルドツール・・・Maven2 及び Eclipse m2eclipseプラグイン ・コンテナ・・・Tomcat 及び Tomcatプラグイン ・フレームワーク・・・Seasar2 及び S2ファミリー と言うのがあります。 しかし、開発環境構築は結構難問です。 Eclipse、Maven2、m2eclipse、Tomcatプラグイン... それぞれ「個別の問題」にフォーカスしたツールを組み合わせようとすると、 細かいところでギャップがあって、各ツールの長所を活かしつつ、うまく連携させるには試行錯誤が必要です。 そこで、以下のような各ツールの長所を活かせる開発環境を作ってみる。 1.Eclipse ・修正したソースのインクリメンタルコンパイル。 ・その他もろもろ... 2.Maven2 ・pom.xmlによるプ

  • Restlet - Lightweight REST framework for Java

    What is an API (application programming interface)? Definition and examples A lot of people who work in technology have an intuitive understanding of what an API (application programming interface) is — but if you asked them to define it, they might have trouble putting an explanation into words. In simple terms, an API is both a piece of software running on a networked server and a component of p

    Restlet - Lightweight REST framework for Java
  • Java屋がTomcatでRuby on Railsを試すには?(1/2)−@IT

    Ruby on RailsJavaサーバで動かす4つのメリット まずは、JRuby on RailsJavaのAPサーバ上で動かすメリットを考えてみましょう。その最大のメリットはJVM(Java仮想マシン)上で動作する点が挙げられます。JVMで実行することで、以下の4つのメリットを享受できます。 JVMはエンタープライズ環境での動作実績も多く、非常に安定した実行環境を手に入れることができる JVM上でJRubyを実行する場合、AOT(Ahead Of Time)およびJITJust In Time)方式でコンパイルする。従って、コンパイル後はインタプリタ形式よりも高速に動作する(※注1) Javaの豊富な機能を使い、さまざまな拡張が可能 JRuby on Railsが動作するAPサーバもTomcatやWebSphere上で動作確認が報告されている JDBCを使って対応DBを増やしたり

    Java屋がTomcatでRuby on Railsを試すには?(1/2)−@IT
  • Tomcat 6で実現! Ajaxを超える通信技術Comet (1/3) - @IT

    Tomcat 6で実現!Ajaxを超える通信技術Comet:Tomcatはどこまで“安全”にできるのか?(3)(1/3 ページ) Ajaxを超える? Tomcat 6で搭載されたCometとは? 前回はTomcatを“安全”に活用するために、ツールを使った運用の仕方やTomcatの設定について解説しました。 今回はTomcatの安全性から少し離れて、Tomcat 6の新機能の利用方法について解説します。Tomcat 6では、いくつかの大きな拡張がありましたが、今回はJ2SE 1.5で実装されたNew I/O APIjava.nioパッケージ)を用いたComet(コメット)通信について解説します。 おさらい 「通常のHTTPでの通信」 通常のHTTPでの通信はクライアントのWebブラウザなどからサーバへリクエストを送信し、サーバはリクエストを解釈してレスポンスを返します。つまり、通信のタイ

    Tomcat 6で実現! Ajaxを超える通信技術Comet (1/3) - @IT
  • 【真夏の夜のミステリー】Tomcatを殺したのは誰だ? (1/3) - @IT

    【真夏の夜のミステリー】Tomcatを殺したのは誰だ?:現場から学ぶWebアプリ開発のトラブルハック(6)(1/3 ページ) 連載は、現場でのエンジニアの経験から得られた、APサーバをベースとしたWebアプリ開発における注意点やノウハウについて解説するハック集である。現在起きているトラブルの解決や、今後の開発の参考として大いに活用していただきたい。(編集部) 【第1章】Tomcatが無応答!? トラフィックの多い大規模サイトでは、その負荷のためにさまざまな問題が発生する。それらの問題を回避するには、性能を考慮して作られたアプリケーションや、ノウハウに基づいたミドルウェアのチューニングが必要となる。 TomcatはServletコンテナとしての長い歴史を持ち、多くの採用実績を持つオープンソースのアプリケーションサーバ(以下、APサーバ)だ。大規模なサイトで採用される事例も出てきており、To

    【真夏の夜のミステリー】Tomcatを殺したのは誰だ? (1/3) - @IT
  • Maven2 + Eclipse + Tomcatプラグイン の組み合わせ - Enjoy*Study

    忘れそうなので覚えているうちにメモ。 ネットで調べても、この辺は、みんないろいろ試行錯誤しているような感じに思えた。 ちなみに、TomcatプラグインじゃなくてWTP使ったとしても、悩むとこは同じだと思う。(試せてないけど、WTP使う気になれない。重すぎる印象があるので。) war:inplaceを使う TomcatプラグインのDevLoaderは使わずに、src/main/webapp/配下にmavenのwar:inplaceで配置してデバッグを行う。 maven使わない場合のEclipse + Tomcatプラグインと同じような感じ。 src/main/webapp/WEB-INF/lib、src/main/webapp/WEB-INF/classesはSubversionやCVSの除外ファイルとしておく。 war:inplaceはコマンドラインからやってもいいけど、m2eclipse

    Maven2 + Eclipse + Tomcatプラグイン の組み合わせ - Enjoy*Study
  • Eclipseをプロファイラとして活用する

    Tomcat上のWebアプリケーションをプロファイリングする Eclipse profilerプラグインでは、別のプロセスに接続してプロファイル情報を取得することが可能になっています。この方法を用いて、TomcatやJBossのようなWebアプリケーションのプロファイルを取得することが可能となります。 ■ターゲットプロセスを用意する まず、ターゲットとなるTomcatプロセスを用意します。前回までの記事でLombozプラグインを使っていますので、ここではそれを利用し、Lombozプラグインによる起動構成を複製して、プロファイリングのリモートターゲットとなる起動構成を作成していきましょう。 Lombozプラグインを使って、ターゲットプロジェクトを以下のように作りました。ソース(search.jsp、result.jsp)はここからダウンロードしてください。

    Eclipseをプロファイラとして活用する
  • http://www.eclipsewiki.net/eclipse/?%A5%EA%A5%E2%A1%BC%A5%C8%A5%C7%A5%D0%A5%C3%A5%B0

    manabou
    manabou 2007/06/28
    リモート