PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
Python で実装され、その後 Java にも移植されたソートアルゴリズムである TimSort が盛大にバグっていることが発見されました。 このバグがどのようにして発生するのかについては、以下のドキュメントを精査して下さい。 TimSort fails with ArrayIndexOutOfBoundsException on worst case long arrays OpenJDK’s java.utils.Collection.sort() is broken: The good, the bad and the worst case どんなことが起こるのか 通常の利用では想定しえない場所でArrayIndexOutOfBoundsExceptionが発生します。 例えば、以下のようなスタックトレースになります。 Exception in thread "main" jav
WEB+DB PRESS の Vol.85 で、E2E テストの記事を書いたので是非読んでくださし。 2015/2/24 発売ですので、既に購入頂いてる方も多いと思います。 電子書籍版もありますので物理的な媒体に興味がない方は PDF を買って下さい。 WEB+DB PRESS Vol.85@Gihyo Digital Publishing 今回の記事における対象読者について Selenium は知ってるけど WebDriver の API 辛すぎワロタという方を対象に記事を書きました。僕もそうです。 WebDriver の API は本当に本当に使い辛いのですが Geb なら、それが大きく低減されますので是非一度さわってみて欲しいですね。 jQuery に似てるけど所々違う様な感じがする API 越しに DOM を検証するのは便利ですよ。それによって大切な何かを失ってる感は確かにありま
Presentation slides at https://jissenscala.doorkeeper.jp/events/19660
まずは倍率を1000倍から5000倍に上げます。 Data Panelも一旦非表示にします。 さて、これを見ると、使用済みヒープと使用済みNew領域は比例しつつ一定の間隔で上下しています。 ここからは特異点は見えないので、一旦非表示にします。 イニシャル・マークレベル(黄色の線)も一定で、分析対象としづらいので非表示にします。 すっきりして少し見やすくなりました。 ここから、 最も時間がかかっているのはイニシャル・マーク イニシャル・マークは1分間に2回程度発生している ということが読み取れます。 イニシャル・マーク では、そもそも、コンカレントGCにおけるイニシャル・マークとは何なのでしょうか。 OracleのドキュメントのReviewing GC with the CMSによると、New領域から参照されているオブジェクトをマークするのだと。 Stop the Worldを伴い、マイナー
2015-02-17 JitPack.ioでGitHub上のJavaプロジェクトを簡単にライブラリとして参照する Java Maven Gradle Maven Centralに辟易しているpom職人のみなさまこんにちは。 今日はJitPack.ioというサービスを紹介しますよ。 JitPack.ioとは JitPack | Just-in-time packager JitPack.ioは一言で言うと、GitHub上のJavaプロジェクトをライブラリとして参照できるようにするサービスです。Maven Centralなどのリポジトリは無いけど、GitHubのあるプロジェクトをちょっと参照して試してみたいとかありますよね。そのリポジトリのJarを自力で作ったり、そのままソースをコピーして参照したりと色々と辛みのある作業になりますが、JitPack.ioはそれをシンプルに解決してくれます。 ま
こんにちは、ミドルウェア開発チームの青木(@a_o_k_i_n_g)です。将来の夢は川口浩探検隊に入ることです。 先日、弊社のアプリケーションサーバーで大量にメモリを消費するという現象に遭遇しました。アクセス頻度の低いサーバーがメモリを大量消費するという謎深いものでした。 発生当初の状況はこんな感じです。 アプリケーションサーバーでは Jetty が稼働 現象が発生した JVM は 5GB 程度のメモリを消費しており、明らかに通常ではない量のメモリを消費している 複数台のサーバーで発生していたが、全てで発生したわけではない。 また、発生したサーバーはいずれもアクセス頻度が少ないサーバーだった。 ヒープ、パーマネント、スタック ひとまず、JVM でトラブルが発生した時は何はともあれヒープダンプとスレッドダンプを見るに限ります。各種情報の取得をインフラ部隊へ依頼し、得られたヒープを解析すると、
ScalaとJava 8に関する プレゼンテーション が、他の似た内容のものよりも多くリツイートされ、大変うれしく思います。だから、こうして皆さんにブログでも書いてお伝えすることにしました。ScalaとJavaとの違いと、それぞれの重要性についてお話しします。両者は相互にイノベーションしています。言語間でお互いに取り入れています。では、Javaが使える場合であっても、Scalaを学ぶ必要があるのでしょうか? もちろんです。より多くの言語を知れば知るほど、あなたはさらにプロフェッショナルになっていきます。 もし、ScalaエンジニアにScalaとJavaとの基本的な違いについて尋ねたとしても、おそらくその人はラムダ関数とトレイトに関する違いを全て言うことはないでしょう。代わりに次のような例を出すはずです。 public class Person { private String firstN
https://www.youtube.com/watch?v=7KS4L-mA_-c 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約1時間前 Takipi のFounderであるTalWeissのSan Francisco Java User Groupミートアップでの講演。本番環境で役に立つデバッグテクニックの紹介です。 1. スレッド名の活用 スレッド名はmutable(EJB除く)である。コードのコンテキストにあわせて、Thread.currentThread().setName(Context, TID, Params, Time,...);のようにすれば、トランザクションID、Serveletパラメータ、キューメッセージID、起動時間など、スタックトレースに役に立つ情報を表示できるようになる。 J
OSvは、ハイパーバイザやIaaSプラットフォームへアプリケーションをデプロイすることに特化した軽量OSです(※詳しくはこちら)。 また、CapstanはGo言語で実装されたOSvのデプロイツールです(※詳しくはこちら)。 OSvはJVM上で動くアプリケーションをメインターゲットとして開発が進められており、様々なJavaアプリケーションが動作します。 この記事ではCapstanの開発版を使って1コマンドで任意のJavaアプリからOSvのディスクイメージを生成&実行してみます。 Goをインストール sudo yum install go export GOPATH=~/goコマンドラインはFedoraの例です。ディストリごとにパッケージマネージャのコマンドは異なります。 Capstan開発版をインストール go get github.com/cloudius-systems/capstan
この記事は JVM Advent Calendar 3日目 の記事です。 gomajとは gomajとはOCamlで書いた、Javaを出力するオモチャのトランスレータ言語です。AltJSに対抗するならば、AltJと言えるような言語です。名前は忘れたのですけど(ほんとに忘れたのですいません)、トランスレータ書く技術が欲しいですとtwitterで言っている人がいたので書いてみました。ちょうどgomaというC++のトランスレータを書いていたので、勢いで書いてみたわけです。 gomaという、c++を出力する型システムがGoLangに似た言語を作って遊んでいたのですが、そのJava番です。 gomajを使えばぁ、あんな事やこんな事が簡単に出来ます。多分。<どんな事だ?笑 JVM関係ないじゃないか!っと思うかもしれませんが、大きな目で見れば、JVM上で動く言語で、Javaでもないのでここで紹介させてい
この記事は JVM Advent Calendar 2日目 の記事です。 JVM を触っているとコアを吐いて落ちる事がしばしばあります。ええ、しばしばあります。 こういう時にどのようなオプションで起動していたかをうっかり忘れると後々面倒です。 でも、実は簡単に解ります。 簡単なやり方 # strings core.12672 | grep -- -Xmx -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=80 -XX:+UseCMSInitiatingOccupancyOnly -Xmx1500m -Xms1500m -Xloggc:gc.log -XX:+PrintGCDetails -XX:+CMSClassUnloadingEnabled -Xmxを指定していないときは -XX: とかで grep すると引っ掛かりま
Best Java Blogs を一気に購読する http://qiita.com/making@github/items/84e1ba99440bb56f43b1 ここに乗ってたやつをいっきに ldr に登録しようと思って、OPML 作った。 http://64p.org/static/opml/best-java-blogs.opml 生成スクリプトは以下の通り。ldr はHTMLのリンク先をまとめて登録する方法もあるっぽいんだけどうまく動かなかったので。。 use strict; use POSIX qw(strftime); use v5.10.0; my $date = strftime("%a, %d %b %Y %H:%M:%S %z", localtime(time())); my $opml; $opml = <<HEAD; <?xml version="1.0" enc
OpenStack4j is an open source OpenStack client which allows provisioning and control of an OpenStack system. The library and has been broken out into several major API abstractions: The Identity (Keystone) V2 service provides the central directory of users, tenants, service endpoints and authorization. Identity V2 Guide
JMX でシステムの状況をざっくり確認したい Perl の世界では、よく管理画面にヘルスチェック的な数字等を表示する機能を組み込みますが、Java の世界では JMX で見れるようにしておくのが一般的なようです。 JMX の使い方を調べてみると、出自が古いこともあって、古い情報が多いのと、使える機能を細かく説明しているサイトが多く、実際の僕のユースケースにあう形の実装方法に行き着くまでに時間がかかりました(得てしてプログラミング関係の情報、「これもできます」「あれもできます」という説明が多くて、実際のユースケースにたどりつくのに時間がかかるものですね。Java にかぎらず)。 実際、ゆるふわに JMX にメトリックス数字を追加するだけなら、そんなに考えることは多くないことがわかりました。 まず、以下のようなインターフェースを定義します。なんかゲッターっぽいのを定義しておけばよいです。 名前
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く