大量時空間データの処理 ~ 現状の課題と今後OSSが解決すべきこと。(Open Source Conference 2021 Online/Osaka講演資料)
Javaトラブルでは『情報がなくて、再現もなかなかしません』といった状況に陥ることがある。このような状況を回避するために、以下の3つの代表的なトラブルを例に、アプリケーションサーバを再起動する前に何を取得すれば良いのかをまとめてみる。 アプリケーションから応答がない アプリケーションが遅い ヒープメモリが足りない(OutOfMemoryErrorの発生) アプリケーションから応答がない 取得する情報 スレッドダンプ データ取得方法 スレッドダンプとは、コマンド実行時点でのJavaスレッド実行状態を出力したものである。応答がない場合、何らかの要因によりどこかで処理が止まっていることが想定される。スレッドダンプは『どこで止まっているのか?』を切り分けるのに大切な情報である。 取得方法はJDKのバージョンによって色々ある。 kill -3 <pid> (少なくとも1.4.2にはある〜JDK7でも
こんにちは id:cero-t です。 前回話題にしたJava8 ですが、もう少し別の機能を試してみましょう。 今回は新しい日時API、Date and Time API(JSR-310) を紹介します。 JDK8 M6時点でのJavadocは、以下のURLで公開されています。 http://cr.openjdk.java.net/~rriggs/threeten/threeten-javadoc-b75/ 注意:このエントリーの内容は、JDK8 M6 (b75) の時点のAPIに従っています。 M7以降では一部のAPIが変わっているので注意してください。GA時点でまた記事を見直します。 From Joda Time to Three Ten Javaの日付クラス(java.util.Date)の扱いは、 皆さんもなかなか苦慮していることだと思います。 というのも、、、 ・年月日などを指定
初めまして、吉澤です。 Web サービス、システムをつくるときに、画面デザインをデザイナーさん、HTML を HTML コーダーの方にお願いすることがあります。 書いてくれた HTML をプログラムに落とし込む作業は面倒で、一度プログラム用に変換した後のメンテナンスは苦労します。 開発者以外に表示箇所のプログラムを覚えてもらい、メンテナンスしてもらうというやり方もあるかと思いますが、苦労されることと想像します。皆さん、どうされているのでしょうか? 今日は僕が最近のシステムに導入している Java の Thymeleaf という HTML テンプレートエンジンを紹介します。 HTML テンプレートエンジンを利用することで、デザイナーさんたちと円滑に作業が進むことを期待しています。 Java には他にもテンプレートエンジンはありますが、僕が一押しと感じているのは以下の理由です。 特定のフレーム
Javaでよく使っているし、使えるが、作りはしないもの。 それが、私にとってはアノテーションです。 今まで、それで問題ないのではとおもっていましたが、JavaのRESTful、つまり、JAX-RSをみるにあたり、 改めて、見てみる事にしました。 さて、RESTfulで、Javaのソース内で、 @GET @Path("/foo") public void foo(@PathParam("arg1") String arg1){ } みたいな記述ができるのですが、これらの情報をどうやってとっているのかとか、ある程度まとめました。 まず、アノテーションの作成方法ですが、 import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.Ret
Learn all about the Nashorn Javascript Engine with easily understood code examples. The Nashorn Javascript Engine is part of Java SE 8 and competes with other standalone engines like Google V8 (the engine that powers Google Chrome and Node.js). Nashorn extends Javas capabilities by running dynamic javascript code natively on the JVM. In the next ~15 minutes you learn how to evaluate javascript on
Oracle Blogsの主としてテクノロジー製品のエントリを日本語でご紹介します(オリジナルのエントリを投稿することもあります)。厳密性をご所望の方は原文をどうぞ。よい内容でしたら原文に対し、"Good Entry, thanks!"でもいいので、是非コメントお願いします(Typoや誤訳はコメント欄からどうぞ)。なお、このエントリは個人の見解であり、所属する会社の公式見解ではありません。また、エントリ内でご紹介している製品・サービスは国内導入時期が未定の場合もありますのでご了承下さい。 Good entries on Oracle Blogs are put into Japanese. Mainly this blog covers technology products. Opinions expressed in this blog is my personal one and d
あなたにとって重要なトピックや同僚の最新情報を入手しましょう最新の洞察とトレンドに関する最新情報を即座に受け取りましょう。 継続的な学習のために、無料のリソースに手軽にアクセスしましょうミニブック、トランスクリプト付き動画、およびトレーニング教材。 記事を保存して、いつでも読むことができます記事をブックマークして、準備ができたらいつでも読めます。
XMLファイルをプログラムからアクセスする方法をおさらいすると DOM SAX StAX といろいろある。 DOMとSAXとStAXと。 - 都元ダイスケ IT-PRESS このあたりを見てもらうとわかりやすい。 XMLにアクセスする場合は、だいたいはモデルに変換することが多い。上記にような低レベルAPIでないと細かい制御はできないが、もっと単純にXMLの要素をオブジェクトに変換する場合は以下のような高レベルAPIのような選択肢もある。 apache commons-digester JAXB digesterはライトウェイトで良さそうであるが読み込み専用ということなので、JAXBを少し触ってみた。JAXBはJava6からは標準APIとして搭載されている。 蛇足だが、configurationは設定ファイルを扱うライブラリもある。XMLも読み込める。ただし、独自に作成したモデルオブジェクト
長い文章になってしまったので、概要だけ先に書きます。 以下のJavaプログラムは、常に上から下に順番に命令が実行されると思いますか?つまり、aに1が格納された後に、bに2が格納されると思いますか? 実は場合によってはこの実行順序が入れ替わる場合があります。これはJavaの言語仕様として定義されていることです。これを考慮しないと信頼性のある並行処理は実装できません。 気になる人は以下を読んでみてください。 a = 1; b = 2; すでにインターネットは社会インフラ化しています。ソーシャルネットワークで多くの人とコミュケーションやコラボレーションできる時代で、個人が情報を作り消費することは当たり前になってきています。そして、インターネット上のコンテンツは増加の一途を辿っています。「情報爆発」なんて言葉も耳慣れた言葉になりましたが、その問題解決のためにMapReduceなどの分散処理技術に注
今回は「プロパティファイル」の常識について、Java言語を通じて学んでいきます。 多くの場合、プロパティはプロパティファイルという物理的なファイルと関連付けられて私たちの前に現れます。プログラミング言語内では完結せずに外部の物理ファイルとのかかわりが強く出てくる話題であるため、初心者のうちはなかなかなじみにくい技術かもしれません。しかし、プログラミングにおいて重要ですので、しっかり習得してしまいましょう。 「プロパティファイル」ってどんなもの? 私たちがJava関連のソフトウェアを扱っていると、ファイルの拡張子が「.properties」となっているファイルを見掛けたり、あるいはその内容を編集することがあります。この「.properties」拡張子のテキストファイルが、プロパティファイルです(違う拡張子を付ける場合もありますが)。 テキストエディタなどを利用してプロパティファイルの中身を見
最近プロジェクト内でJenkinsをどう運用しているのか聞かれることがあったので書いておくことにします。 ビルドだけではもったいないので色々なことをやらせているのですが、とりあえず今回は静的コード解析について。 コード解析の設定は最初は少しだけ面倒かもしれませんが、出力されるレポートはプロジェクトの大事なインプットとなってくれます。 出力されたレポート、グラフを見て自分達の日々開発しているものをチェックしてチーム内の朝会やふりかえりでアレコレ語るのがいいんじゃないかと思います。 まずは必要なプラグインのインストール 静的コード解析 FindBugs Plugin - コンパイル後のバイトコードを解析してバグや不具合が発生しそうなコードをチェックしてくれる https://wiki.jenkins-ci.org/display/JENKINS/FindBugs+Plugin Checksty
言葉に直しながら読むと分かった気分になれるので自分用のメモがてら (*ノωノ) とりあえずの所感としては、色々なパターンが非常に重たく見える。 でも、重たく見えても中身をよくよく見れば普段愛用してる概念の固まりだったり。 絶対見せ方で失敗してるきがする > J2EE Intercepting Filter いわゆるServlet Containerの提供してるFilterな感じ。 説明的にもCoRできるように作れーって書いてあるし本当にまんまだ。 こういう概念が無かった時代はみんな if/else でがんばってたんだろうな。。。 (´・ω・`) 読み進めてたら戦略の項目でまさに ↑ な事が書いてあった (*ノωノ) ここら辺を見てると、AOPっていう概念はこういう所から生まれたのかなーという気がしてきますね。 Front Controller まんまStrutsかなー。 やろうとしてる事と
そんなこんなで続きー。 今日は7章を制覇(流し読み)するぞー (`・ω・´) Business Delegate Delegateって名前ついてるけど、Facadeの一種かなぁ。 どちらかというと分散ネットワーク上のどっかにいるFacadeを利用する際の、ローカル向けFacadeな感じがする。 ネットワーク例外をアプリケーション例外にしたい、とかってあたりもろにそうっぽぃ。 何かしようとするたびにRMI周りの例外のTryCatchとかやってたら発狂できるもんなぁ・・・ これを使う事でプレゼンテーション層と実際のビジネスロジックを実行するビジネス層(ネットワークのあっちにいるかも)なのと疎結合に出来るのと必要に応じてキャッシュする事でパフォーマンスの最適化が図れるのが一番のメリットかな。 Service Locator ものすっごいDIコンテナの先祖っぽい雰囲気がする! 責務的にはめちゃ大変
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く