Javaは長らくプロジェクトの立ち上げから最初のコーディングまでが重く、スクリプト系のプログラマから批判されてきた。それも最近のJShellやJBangの登場で変わってきた。静的型付け言語としての構文の重たさを除けば、ほぼスクリプト言語の感覚でプログラミングできる。 ちょっとしたタスクをスクリプティングでやるにも、これまではBashやPythonのようなスクリプト言語が主流だったが、今ではJavaも選択肢の1つになる。Javaのメリットは、(比較的重たい処理での)実行時の速さと何より非常に豊富なライブラリのエコシステムだ。 エコシステムという点では、Javaで最もライブラリが成熟した分野がいくつもある。その1つがインテグレーション(システム間の連携)で、Apache Camelはその代表的なライブラリ/フレームワークになる。 Apache CamelとJBangを組み合わせると、インテグレ

エムスリーエンジニアリンググループ製薬企業向けプラットフォームチームの三浦 (@yuba)です。普段はサービス開発やバッチ処理開発をメインにやっておりますが、チームSREに参加してからはこれに加えて担当サービスのインフラ管理、そしてクラウド移行に携わっています。 今回はそのクラウド移行の話そのものではないのですが、それと必ず絡んでくるインフラ設定に関してです。 アクセス元IPアドレスを知りたい Webアプリケーションがアクセス元IPアドレスを知りたいシーンというのは、大まかに二つかと思います。ログ記録用と、アクセス制限ですね。どちらもアプリケーションそのものではなく手前のWebサーバの責務のようにも思えますが、そうとも言い切れません。動作ログ、特に異常リクエストをはじいた記録なんかにセットでIPアドレスを付けたいとなるとアプリケーション要件ですし、アクセス制限についてもマルチテナントサービ

log4jとはJava用のloggingライブラリだ。loggingライブラリというのはログとして記録すべき文字列を受け取り、それをどこかに出力するものだ。文字列の中身を通常のloggingライブラリは気にしない。log4jが通常のloggingライブラリと違うのは、文字列の中身を見て、一部の文字列を変数とみなして置換することだ。これはlog4jのドキュメントではlookupと呼ばれている。Log4j –Log4j 2 Lookups 例えばプログラムを実行中のJava runtimeのバージョンをログに含めたい場合は、"Java Runtime: ${java:runtime}"などとすると、"Java Runtgime:Java(TM) SE Runtime Environment (build 1.7.0_67-b01) fromOracle Corporation"などの
これは,情報検索・検索エンジンアドベントカレンダー2019 の 13 日目のエントリーです。(12/31 時点でまだ空いていたので,代打で埋めています。元のエントリ予定によると「検索エンジン超入門を書く予定」だったので,たぶん,そんなに外れてはいないかと。) 紹介: Luke とは Elasticsearch や Solr で検索サービスを開発しているサーチエンジニアのみなさん,日々使い倒している「インデックス」の中身がどうなっているか気にしたことはあるでしょうか。 Elasticsearch や Solr のコアエンジンとして,Apache Lucene が使われていることは(多分)よく知られていますが, Lucene の古い相棒である Luke については,とくにここ数年で Elasticsearch や Solr に触れ始めた方だと,聞いたことがないという方も多いと思います。 Luk

日頃,私が Lucene 周りの調査をしたりパッチを書くときに,無意識のうちにやっていることや,これまで見よう見真似で覚えてきたことをダンプしておこうと思います。あまりこういう初心者向けな情報を見かけないので,誰かの役に立てば幸い。。。 この記事を書いている人について 2019年から,縁あって Lucene のコミッターをしています。コミッター以前の時代を含めると,プロジェクトとの関わりは5年くらいです(今もゆっくり勉強中)。 公式リンク集 まずは公式ドキュメンテーションなどをブックマークしておきましょう。 https://lucene.apache.org/ (オフィシャルWebサイト) => パッケージダウンロードやメーリングリスト参加はこちらからhttps://lucene.apache.org/core/8_6_2/index.html (ドキュメンテーション) =>Javado
概要 2020年2月24日にApache Software FoundationからApache Tomcatの脆弱性(CVE-2020-1938)情報が公開されました。これは、Apache JServ Protocol(AJP)に関する脆弱性です。AJPとは、Apache Tomcatと通信を行うためのプロトコルであり、例えば、HTTPサーバ(Apache HTTP Server)とアプリケーションサーバ(Apache Tomcat)を連携する際に用いられます。この場合、HTTPリクエストをApache HTTP Serverで受け取り、Javaで動的な処理が必要となるものをApache Tomcatで実行する構成になります。なお、Apache TomcatもHTTPサーバとしての機能を備えており、標準で8080/tcp(HTTP)及び8009/tcp(AJP)を使用する設定となっていま

ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフーTechBlog こんにちは、「Hadoop」黒帯の鯵坂(@ajis_ka)です。本記事では、Apache Hadoopで次にリリースされるマイナーバージョンである3.3.0で追加される新機能について紹介します。本記事では、特にHadoop CommonとHDFS(Hadoop Distributed FileSystem)の新機能を重点的に紹介しつつ、それらの機能に対するヤフーの貢献についても触れていきます。 Hadoop 3.3.0 概要 Hadoop 3.3.0はおそらく2019年の年末までにリリースされる予定で、この記事を執筆している10月23日時点ですでに1500件以上の修正が入っています(Hadoop 3.2.0は1089件)。つまり、

Apache Ivyについては本ブログでも何回か用語自体は取り上げてきましたが、現状日本語での情報が限られるためか、AntそのものやMavenに比べるとユーザーが少ないように思われます。ここで基本的な使い方やMavenとの違いについて簡単に紹介させていただきたいと思います。 Apache Ivyとは本家のホームページは以下の通りです。 Home | Apache Ivy ™ もともとはJayasoftという組織で開発されていたツールですが、バージョン2.0以降、Antの関連プロジェクトとしてApacheプロジェクトの元に加わっています。(Apacheというブランド名はツールを組織に導入する際に結構重要ですね。) 上記のホームページでは「アジャイルな依存性管理ツール」として紹介されていますが、Mavenの機能の中からビルド機能やプロジェクト管理機能を無くして、ライブラリーの依存関係の管理に

Apache ActiveMQ® is the most popular open source, multi-protocol,Java-based message broker.It supports industry standard protocols so users get the benefits of client choices across a broad range of languages and platforms. Connect from clients written inJavaScript, C,C++,Python, .Net, and more. Integrate your multi-platform applications using the ubiquitous AMQP protocol. Exchange messages b
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 今日はWEBサーバの性能測定についてです!! WEBサーバを構築していると、どこまでの負荷に耐えられるか、パフォーマンスはどうか気になりますよね。 これをしっかり確認しておかないと、アクセス過多になるとパフォーマンスが激悪になったり、 負荷がかかった時に、システムダウンなんてことになりかねないです。 で、そんなことにならないように気軽にWEBサーバの性能を測定できるのがApacheに標準で付いている**ab(Apache Bench)**ツール。 Apache Benchは、DOS攻撃にも使えるツールです!! 使用する際は十分注意してく

こんにちは、虎塚です。 今週クラスメソッド社内で性能テストツールのApacheBench をテーマにした勉強会を行うことになりました(勉強会というと固い感じですが、経験者から知見をいろいろ教えてもらおうという雑談会です)。 そこで、ApacheBenchをまったく使ったことがない方の予習用に、ごく基本的な情報をまとめておきましたので、公開します。 ApacheBenchのインストール方法 Apache HTTP Serverをインストールします。 ApacheBenchの特徴 ApacheBenchは、Apache HTTP Serverに同梱されている性能テストツールです。コマンド名にちなんで、「ab」とも呼ばれています。 できること ApacheBenchは、1回のコマンド実行で、単一かつ同一のURLに対するリクエストを、指定した分だけ生成します。そのため、Webサーバやアプリケーショ

What'sGoogle Guava?Googleが開発しているOSSのjava core libraryで、Googleの多くのJavaベースのプロジェクトで使用されており、Java 1.5 以上で使用できる。 昔、Google Collectionとして開発されていた。 Apache Commons の Lang、Collectionsなどに替わる機能を提供していて、パッケージ名を見れば大体の機能について想像がつくと思います。 com.google.common.annotations com.google.common.base com.google.common.cache com.google.common.collect com.google.common.escape com.google.common.eventbus com.google.common.hash c

Apacheの設定で Order deny,allowとか Satisfy anyとか、なんだか意味わからん人のために。僕はずっとわかってなかった。 基本 Apacheのアクセス制御には、ホストによる制御 (Order,Allow,Deny) ユーザ認証による制御 (Auth*, Require) の2通りがある。 Satisfyは、2通りあるアクセス制御の両方を満たす必要があるかどうかを決定する。デフォルトはSatisfy all。Satisfy anyなら、どちらか片方満たせばよい。 Order http://httpd.apache.org/docs/2.2/mod/mod_authz_host.html#order Order deny,allowは、全てのホストからのアクセスを許可する。 Order allow,denyは、全てのホストからのアクセスを拒否する。 Order d

Windowsマスターの皆様、申し訳ございませんでした!(挨拶) 一つ前のエントリ( http://uzulla.hateblo.jp/entry/2013/08/12/013207 )、まったく私の不勉強を世間に晒すエントリなのは当人も理解しておりましたが、世間の風は2013も下期にはいったというのにXPばかりつかってきた糞マカーには予想よりもつらいものでした! アイッティー業界、ドッグイヤーなのに、XPとかでがんばってきた無精な人間は殺すべし、慈悲はない、インガオホー! そして、こちらのほうが重要だと理解しておりますが、「とりあえずなんかうまくうごいてなかったらゲイツをなぐるべし」という糞マカーの内輪の感覚を世の中に気軽に発信したばかりに、ギガ盛り牛丼つくったり、冷凍庫の中にはいった写真をツイットするような目で見られる事態になってしまいました。 自分の想像力の欠如、そしてインターネッツ

あまりにも親切なコメントが多いので、先頭にも書いておきます。 1.そもそも!Macの上に!VMで!Windowsたててますから! 2.開発&本番がWindowsのPHP必須の要件じゃなきゃ!そもそも!俺だって!Windows使う気ないから!! お願い この寒くて無知な記事を全ディスして解決策を提示しちゃうするエントリかいたら絶対にブクマのびますよ!!リンクもはらせて頂きます!チャンスだから是非書いてください!!(懇願 追記:回答をいただきました ・ http://blog.textt.net/nyontan/6 ホワイト案件お待ちしています ・ https://gist.github.com/matarillo/6208533 Web PIと WebMatrix はつかったことがないので是非使ってみたいですね、助かる命が有りそうです。しかしApache必須の命は救われない奴だ…。 ・ ht

家のなかを森にしたい、という欲望 今年はなんだか観葉植物の観察が楽しい。本日は植物についての記事ですが、土や根っこなどの画像もあるので苦手な方は避けてくださいね。 フィカス・ウンベラータ うちのメイン的存在はフィカス・ウンベラータ。ウンベ殿が我が家にやってきたのは2020年5月。コロナ禍初…

Ubuntuを使う前はCentOSを使っていたので、Apacheの設定にちょっとハマりました。 ソースからインストールする場合は基本今までと同じなんですが、apt-getでインストールするとちょいとUbuntuアタマにする必要があります。 UbuntuでのApache設定は基本的にDebianを受け継いでいるので、モジュールやサイトの設定を apache2.conf(httpd.conf)には書かずに細かく管理します。ここんところがRedHat系ユーザーのハマり所ですね。 (Apache2になってからは、設定ごとに〜.confファイルに記入しますが、Ubuntuは管理がさらに 細かいみたいです。) 設定ファイル apache2.conf httpd.confの代わりにapache2.confが読み込まれます。 ports.conf 通信ポートの設定です。デフォはもちろん80で。 Liste
※当サイトは、アフィリエイト広告を掲載し、収益を得て運営しています。 インターネットで公開されているWebサーバーは、不特定多数からリクエストを受け付け、レスポンスを返すのが仕事です。しかし、学習目的用のテストサーバーにおいては、正常にアクセスできるのは自分だけで十分です。万が一にもインターネットを通じて不特定多数から自由にファイルが閲覧できてしまうことがあっては問題ですからね。 したがってテスト環境においては、適切な設定をすることにより、インターネットからのアクセスを遮断しなければなりません。多くの環境では、ルータやファイアウォールにてブロックされるようになっていることが多いとは思いますが、念のため設定しておきましょう。 ここでは、Apacheの設定ファイルであるhttpd.confを修正することにより、外部からアクセスされないようにする方法をご紹介します。httpd.confについてわ
このコーナーでは、Mac OS X と Apache を使ってCGI を試験するための Web サーバを構築することを目的に説明していきます。Windows と違い、Mac OS X には、Web サーバとなる Apache や、CGI を動作させるためのPerl が既に実装されております。従って、新たにインストールするものは特にありません。ここでは、環境構築の手順を説明していきます。本章の説明は、UNIX の知識がほとんどない方を対象にしております。本章を執筆するに当たり使った環境は、iBook M6497 で、ソフトウェアアップデートを使ってMac OS X を 10.1.4 までバージョンアップしています。 10.2 に関しての説明がございますが、ソフトウェアアップデートを使って 10.1.5 までアップグレードした後、パッケージ版の 10.2 にてバージョンアップしています
1リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く