Java
プロジェクト管理ツールMavenの基本方針からすると避けたほうが良いのですが、arm64(というかaarch64)用JVMをダウンロードして展開する方法を確認したのでメモします。x86(というかamd64)環境でDockerfile内で作業イメージとしてmaven:3.9-eclipse-temur…
最近はユーザーインターフェイス回りの方がパフォーマンスの問題を引き起こしがちらしいですが、データベースへの問い合わせ(SQL)やデータベースのインデックスなどのスキーマに改善余地があることはまだありえます。問題となる問い合わせをしているメソッ…
15パズルHTML5とJavaScriptに追われ、Java AppletはJava 11(2018年)で廃止になりました。Java 26でApplet関連APIも無くなる事になりました。自作ミニゲームのソースコードが残っていたので、AWTのアプリとして復活させてみました。多少はポイントがあった…
クラウドでのCI/CDパイプラインが流行っています。mvn package -Preleaseとうったら、ビルド、テスト、JARファイル作成の後に、コンテナーイメージをつくるようにpom.xmlを書くのは難しく無いのですが、世間に迎合しなければならないこともあります。簡単な…
NetBeansではソースコードを選択し、Profile → Insert Profiling Point... → StopwatchでProfiling Pointを設定、さらにマウスの右クリックでProfile → Profile Classでクラスを登録し、Profileボタンを押してObjectsのprofileでProfile: Focused (instrumen…
ビッグデータ時代のデータウェアハウス用ミドルウェアとしてApache Hadoopが注目されたのは20年ほど前です。分散ファイルシステムHDFSとプログラミングモデルMapReduceによるミドルウェアでした。Hadoopは一台の計算機には収まらない大規模データを扱える一…
Java 21でSecurity Managerが廃止されたので需要はなさそうですが、MavenでJavaのJARファイルに(gpgで電子署名ではなく)jarsignerで電子署名してみましょう。プライベート認証局をつくって、その自己署名証明書をOSに登録した状態*1で、JavaによるL-BFGSを…
「Java アプリ用のコンテナイメージ作るんなら jlink コマンドでカスタム JRE 作っとけ」と言う話があって、気が向いたのでやってみました。GoやRustのように小さくはなりませんが、200MB以上ディスクスペースを削れることも多いので、手順を知っておくと便…
最近はエンドユーザー・コンピューティングでJavaを使うことはあまりないと思いますが、業務アプリケーションの中で非線形モデルの多変量の統計解析をかけたい場合もあるでしょう。線形代数で計算できる計量手法は、Apache Commons Mathを利用することで計算…
テスト自動化の話でSeleniumが出てきたので、Javaでのコンパイルと実行方法を紹介します。Seleniumはフレームワークと言うかブラウザー制御ライブラリで、必要なJARファイルをダウンロードしてきてclassspathを通して、あとはソースコードから呼び出してコン…
前回の「Apache OzoneをSingle Node ClusterのAWS S3互換の分散ストレージとして扱う方法」の設定では認証なく使えるため、運用では問題がありました。Apache OzoneではKerberos認証を扱うことができ、さらにS3互換オブジェクトストレージではawsAccessKeyと…
Hadoop用の新しい分散ファイル・システムだったApache Ozoneは、Hadoopと独立して運用ができ、かつAWS S3互換オブジェクトストレージとしても使えます。また、ペタバイト単位のクラスターを構成している人もいて頑強のようです。Dockerを使うと、docker imag…
RはCの関数を呼ぶことが出来るだけではなく、Cの中に組み込むこともできます(Embedding R)。JavaもJNIで、C++のオブジェクトを呼ぶことも、Cのオブジェクトとして呼ばれることもできます。よって、RとJavaは相互に利用できます。実際に使おうとするとC/C++…
気づくとマルチコア化が一般化したため、数値演算をするときにカジュアルにマルチスレッド対応にしたい状況も随分と増えてきました。計算時間が数分の一になる程度ですが、何時間もかかる計算もあります。GoやFortran 2008のように並列化容易なような言語も…
SUN版の方が、OpenJDK版よりも3割程度高速なので、Ubuntu Linux 11.04でもSUN版が動くようにします。 今はSUN版はオプションのリポジトリに登録されているパッケージなので、aptのリポジトリの追加をしてから、インストールを行います。 sudo add-apt-reposi…
ベンチマークも無しに遅いと主張されても論拠が薄いと批判したところ、id:kwatchさんがVelocityとJSP+ELのベンチマークを作ってくれました。ご苦労様です。 なるほど、VelocityよりJSP+ELは遅いと言う事ですね。これで他のテンプレート > Velocity > JSP+EL…
id:kwatch氏がエントリーにコメントをしてくれたので、「プログラミング言語の速度とアプリケーションの速度がいかに関係ないかがわかるグラフ」と「JSPが遅い理由をJava屋さんはまるでわかってないらしい」の作文的な問題点を整理してみます。 id:kwatch氏…
「JSPが遅い理由をJava屋さんはまるでわかってないらしい」と言う、Javaを全く理解していないPHPer/Rubiestを発見してしまいました。分かっていないのは、ここの部分。 #つうかさ、「Javaの文字列操作は遅い」とか、Javaに対して失礼だろ。 プログラミング…
「JSPが遅い理由をJava屋さんはまるでわかってないらしい」と言う、JSPを全く理解していないPHPer/Rubiestを発見してしまいました。分かっていないのは、ここの部分。 VeocityやJSPが遅いのは、単に動的な独自言語を導入したから。 Veocityはともかく、JSPは…