タグ

Tomcatに関するy0sh1kawのブックマーク (11)

  • ブロッキングとかノンブロッキングを理解したい - Qiita

    この記事は、Spring WebFluxの前提である、ブロッキングやノンブロッキンクとは何か、Servlet3.0の Async Servletや Servlet3.1の NonblockingI/Oとは何か、を理解することが目的です。 検証バージョン > java -version java version "1.8.0_181" Java(TM) SE Runtime Environment (build 1.8.0_181-b13) Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode) > ver Microsoft Windows [Version 10.0.17134.165] @Slf4j public class BlockingAndSingleEchoServer implements EchoS

    ブロッキングとかノンブロッキングを理解したい - Qiita
  • Tomcat RCE CVE-2017-12615, CVE-2017-12617 / Tomcatの一連のRCEの脆弱性について - http80

    CVE-2017-12617 tomcat: Remote Code Execution bypass for CVE-2017-12615 Bugzillaに投げられていますし、SNSにもPoCが出回ってきてますので、件に関して少し取りまとめます。お決まりのお断りをしておきますが、所属する組織の公式の見解ではないということ、しっかり検証したわけではないので、私個人の見解が誤った見方を示していて、それを鵜呑みにして業務上影響が出ても刺さないでください><✘ 結論から先に書きます。 ・怪しいCVE-2017-12615に対するパッチをBypassするPoCはホンモノ ・Windows以外のOSにも影響する(少なくともmacOS 10.12.6とUbuntu16.04で再現) ・現行のバージョンのTomcatに影響する(最新の7系8系9系は検証しました) ・インストール直後の設定では影響を

    Tomcat RCE CVE-2017-12615, CVE-2017-12617 / Tomcatの一連のRCEの脆弱性について - http80
  • DynamoDBでTomcatのセッション共有をするとハマるかも - 谷本 心 in せろ部屋

    AWS仕事で使い始めて1年半、 ようやく頭がクラウド脳に切り替わってきた [twitter:@cero_t] です。 好きなAWSサービスはKinesisです。まだ使ってませんけどね! さて、今日のテーマは「AWSでTomcatのセッション共有」です。 EC2上で動くTomcatのセッションオブジェクトを、DynamoDBを使って共有するというものです。 話題としてはそれなりに枯れていると思うのですが、 実案件で使おうと思ったら問題が出そうになって困ってる、という話です。 発生する問題は? どういう問題が起きるか、先に書いておきます。 発生する問題は、 複数のTomcatをELBで分散させている時に、 スケールインやスケールアウトが短時間に連続して発生すると、 セッションが巻き戻る(先祖返りする)可能性がある、というものです。 セッションが消えるならまだしも、 先祖返りするというのは、実

    DynamoDBでTomcatのセッション共有をするとハマるかも - 谷本 心 in せろ部屋
  • 渋谷java−あなたのプロジェクトで気軽にjavaをバージョンアップするために必要なこと

    (セッション概要より) Adam Wiggins氏(元Heroku CTO)が2012年に提唱した””The Twelve-Factor App””。JavaのWebアプリケーションでこれを実践するにはどう設計すべきなのでしょうか。Maven、Logback、Java Service Wrapper、バイナリパッケージリポジトリ(NEXUS)、組み込みTomcat、そしてSpring Framework。 一見バラバラな技術要素を組み合わせてゆくと、12-factor Appが現れます。

    渋谷java−あなたのプロジェクトで気軽にjavaをバージョンアップするために必要なこと
  • Tomcatの実装から学ぶクラスローダリーク #渋谷Java

    8. 第十回 #渋谷java Common クラスローダ Webapp クラスローダ ( 稼働中WAR) アンデプロイ済 Webapp クラスローダ ClassLoaderLeakの主な原因 Bootstrap クラスローダ System クラスローダ Tomcat スレッドプール 1. 上位クラスローダで読み込まれた クラスからの強参照 例 : java.sql.DriverManagerのフィールド変数 ⇒ WEB-INF/libのJDBCドライバ など 2. プール内スレッドからの参照 ・ スタック中スレッドが旧APクラスを参照 ・ ThredLocal.remove() の漏れ Tomcat8のデフォルトの クラスローダ階層 (クラスローダについては以下参照) org.apache.catalina.startup.Bootstrap.initメソッド と org.apache.c

    Tomcatの実装から学ぶクラスローダリーク #渋谷Java
  • Amazon DynamoDBによるTomcatセッション永続化とフェイルオーバー | DevelopersIO

    Tomcatのセッション管理 Tomcatでクラスター構成にする場合、課題となるのがセッション管理です。ロードバランサーでセッションIDを保持することで、毎回同じサーバーにリクエストが向かうのであれば問題なさそうに見えますが、あるサーバーがダウンしてしまうとセッション情報が消えてしまいます。これを解決する方法として、データベースにセッション情報を保持する方法が一般的ですが、データベースへ負荷が掛かりますし、データベースが落ちたら困ります。何かもっと良い方法は無いかと皆さん思っていたはずです。そこで、AWSですよねー。AWSでは、ElastiCacheやDynamoDBがサービスとして提供されています。ここで、永続化をしっかりやってくれるのはDynamoDBであり、AWS SDK for Javaでの登場が待たれていたわけです。そして、このたび出てきました! スティッキーセッション ロードバ

    Amazon DynamoDBによるTomcatセッション永続化とフェイルオーバー | DevelopersIO
  • Tomcat7 でゼロダウンタイムデプロイ - mallowlabsの備忘録

    「Web アプリのバージョンアップ時に Tomcat を再起動してもいいのは小学生までだよねー」 ということで、Tomcat でダウンタイム無しで Web アプリのバージョンアップをする方法についてまとめてみる。 Parallel Deployment Tomcat 7 から Parallel Deployment という機能が追加され、同一 Web アプリの複数バージョンを同時にデプロイができるようになった。 war のファイル名を somewebapp##001.war 等にしておくことで、 - $CATALINA_BASE/ - webapps/ - somewebapp##001.war - somewebapp##002.warのように配備をすると、 http://localhost:8080/somewebapp/ でアクセスした場合に、セッションが継続している場合には古い方(

  • tomcatの起動中の統計情報をsnmpで監視する設定と監視しておくと良いかもしれないoid - うまい棒blog

    tomcat にsnmp応答をさせる設定 CATALINA_OPTSに追加 tomcat 7.0はsnmp.acl.fileではなくてsnmp.aclの模様。listen するinterfaceやfile, acl file は適当に設定。 tomcat 7.0 -Dcom.sun.management.snmp.interface=0.0.0.0 \ -Dcom.sun.management.snmp.port=8161 \ -Dcom.sun.management.snmp.acl=/usr/local/tomcat/conf/snmp.acltomcat 7.0以前 -Dcom.sun.management.snmp.interface=0.0.0.0 \ -Dcom.sun.management.snmp.port=8161 \ -Dcom.sun.management.snmp.

    tomcatの起動中の統計情報をsnmpで監視する設定と監視しておくと良いかもしれないoid - うまい棒blog
  • Commons DBCPを超えるTomcat JDBC Poolとは

    Commons DBCPを超えるTomcat JDBC Poolとは:Tomcat 7の新機能で何ができるようになるのか?(番外編)(1/2 ページ) TomcatのDBコネクション・プールは2つある @IT読者の皆さんは「Tomcat JDBC Connection Pool」をご存じですか? 通常、TomcatのDBコネクション・プールといえばApache Commonsプロジェクトの「Commons DBCP」を想像するかと思います。しかし、Tomcatには「Commons DBCP」以外にもDBコネクション・プールの実装が存在します。それが、「Tomcat JDBC Connection Pool」(以下、Tomcat JDBC Pool)です。 Tomcat JDBC Poolとは、Apache Tomcatプロジェクトが独自に作成したDBコネクション・プールの実装のことです。

    Commons DBCPを超えるTomcat JDBC Poolとは
  • TomcatではなくJBossを選ぶ○○の理由 - nekop's blog

    java-ja忘年会でharu860さんに聞かれたのでエントリを書くよ。と思ってざっくり書いて放置していましたすみません。この質問へのよくある回答として「EJBを使うとき」みたいなものがありますが、この回答は多くの場合何の役にも立ちませんね。このような回答をする人はJBossをあまり良く理解していない可能性があります。 というわけで、JBossを使っているユーザがどのようなモチベーションでTomcatではなくJBossを使うのか、もしくは完全にJBossに乗り換えているのか、実例ベースの理由をいくつか紹介しましょう。 機能 Tomcatで提供される機能は基的にServlet, JSP, JDBC接続プールのみで、他のものは提供されていません。シンプルですが、他のものが必要になったときに、それらをインテグレーションするコストが発生するなど、少し面倒なことになります。 TomcatになくてJ

    TomcatではなくJBossを選ぶ○○の理由 - nekop's blog
  • Tomcat 7も対応したServlet 3.0の6つの主な変更点

    実装する仕様は、以下のバージョンにアップデートされました。 Servlet 2.5⇒Servlet 3.0 JSP 2.1⇒JSP 2.2 EL 2.1⇒EL 2.2 連載では3回の連載を通して、Tomcatの最新メジャーバージョンであるTomcat 7について説明します。第1回目と第2回目でServlet 3.0を紹介し、第3回目でTomcat独自の新機能を紹介する予定です。 Servlet 3.0における6つの主な変更点 第1回目となる今回は、Tomcat 7が実装したServlet 3.0について説明します。Servlet 3.0とはJSR-315のことを指します。Tomcatは、このJSR-315仕様を実装しています。 Servlet 3.0では、Servlet 2.5に対して主に、次のような仕様変更を導入しました。 Ease of Development(EoD、開発容易性)

    Tomcat 7も対応したServlet 3.0の6つの主な変更点
  • 1