CLOVER🍀

That was when it all began.

2016-01-01から1年間の記事一覧

JavaOne 2016 報告会に参加してきました

日本オラクル青山本社で行われた、JavaOne 2016 報告会に参加してきました。JavaOne 2016 報告会 @ 東京 - 日本Javaユーザーグループ/Japan Java User Group | DoorkeeperJJUG CCC以外で、けっこう大きめなコミュニティのイベントに来るのは初めてでしょうか…

InfinispanのContinuous Query(over Hot Rod)を試す

Infinispanに8.0.0.Finalから搭載されているContinuous Queryですが、Hot Rod(Client/Server Mode)でも使うことができます。EmbeddedでContinuous Queryは試したことがありましたが、Hot Rodではまだ試していなかったので、今回使ってみることにしました…

Reactor Nettyのhttpパッケージで遊ぶ

Reactor Coreで遊んだので、今度はReactor Nettyへ。 Reactor Nettyを使うことで、MonoやFluxを使ってTCP、UDP、HTTPのコードが書けるようになるみたいです。Reactorに関するドキュメントはこちらなのですが、https://projectreactor.io/docs/Reactor IPCの…

Hazelcast Internal(構造編)

Hazelcastの内部構造について、このブログで書いてみては?みたいな話があったので。これまで、このブログではHazelcastの簡単な使い方と表層にしか触れてきませんでしたし、書いている自分自身もそういうスタンスだったのですが(もうちょっと踏み込んだIMD…

NINJA AKASAKA

9月27日の午後8時頃から、赤坂見附にあるNINJA AKASAKAに行ってきました。NINJA AKASAKAなにしに行ってきたのって、Christoph Engelbertさん(@noctarius2k)とその奥さん、そして@cero_tさんとお会いしてきました。Christoph EngelbertさんはHazelcastの開…

はじめてのWildFly Swarm

前々から気になっていたWildFly Swarmですが、そろそろちょっと試してみることにしました。Rightsize your Java EE Applications | Thorntail WildFly Swarmって? WildFlyを組み込んで、実行可能JARを作成したり、必要な機能やその他のライブラリなどを統合…

Spring Data Hazelcastで遊ぶ

HazelcastによるSpring Data向けのモジュールが、8月末くらいにリリースされているのに気付きました。GitHub - hazelcast/spring-data-hazelcast: Hazelcast Spring Data integration Project http://projects.spring.io/spring-data/現時点のバージョンは、…

Reactor CoreのProcessors(Hot Publishing)を試す

Reactor CoreのREADMEに載っている最後のテーマ、Hot Publishing:Processorsを試してみます。Hot Publishing : ProcessorsいくつかのProcessorがあるようですが、そこからSinkを取得してSubscribeしたり、Processorに直接Subscriberを登録してSubscribeする…

Reactor CoreのFluxSink、MonoSink、SynchronousSinkを試す

Reactor Coreを試してみようシリーズ、続いてはFluxSink、MonoSink、SynchronousSinkへ。Hot Publishing : SynchronousSink, FluxSink, MonoSinkこちらを利用すると、SubscriberもしくはProcessorに対して、コンテキスト外からデータを供給することができる…

SLF4J Localizationを試す

SLF4J extensionsの中にある、SLF4J Localizationですが、こちらをちょっと試しておきたいなと思いまして。LocalizationJavadocは、こちら。SLF4J 1.8.0-beta2 APIこのSLF4J Localizationを使うことで、ログメッセージを国際化対応させることができます。使…

Reactor CoreのSchedulersとParallelFluxで遊ぶ

Reactorをちょっとずつ触ってみようという話、次はSchedulersとParallelFluxということで。Schedulershttps://github.com/reactor/reactor-core#parallelflux=title=ParallelFluxまあ、GitHubに書かれている内容を上から試していってるだけなんですけど。Sch…

はじめてのReactor Core

Reacive〜と名の付くものに関する話題について、そろそろ少しずつ追ってみようかなということで。とりあえず、触りつつ試しつつ始めてみようと思い、まずはReactorを触ってみることにしました。Project ReactorGitHub - reactor/reactor: Reactor BOM and le…

Apache DeltaSpikeのData Moduleを試す(Test-Control/Arquillianテスト付き)

Apache DeltaSpikeには、Data Moduleというものがあります。Data Moduleサンプルを見ていると雰囲気はなんとなくわかるのですが、JPAでRepositoryパターンを実装するためのもので、 インターフェースに対して命名規則でクエリを自動生成 @Queryアノテーショ…

Apache DeltaSpikeのScheduler Moduleを試す

Apache DeltaSpikeには、Scheduler Moduleというものがあり、こちらを使って定期的に動かすジョブを作成することができます。Scheduler ModuleジョブのスケジュールはCRON形式で指定でき、実装としてはQuartzを使っているようです。Quartz Enterprise Job Sc…

InfinispanのDistributed Streams APIを使ってWordCount

最近、こういう記事があるのを見つけました。Red Hat JBoss Data Grid 7 + JBoss BRMSで始めるリアルタイムビッグデータ | RED HAT OPENEYE -レッドハットの情報ポータル Red Hat JBoss Data Grid 7 + JBoss BRMSで始めるリアルタイムビッグデータ | RED HAT…

Apache DeltaSpikeのConfiguration Mechanismを試す

Apache DeltaSpikeには、Configuration Mechanismというものがあり、設定情報を管理することができます。DeltaSpike Configuration Mechanismこちらを利用すると、設定ファイルに定義した情報をProjectStageごとに分けて管理できたり、設定ファイルの中で変…

Apache DeltaSpikeのProjectStageを使って、プログラムの切り替えを行う

Apache DeltaSpikeには、ProjectStageというものがあります。DeltaSpike ProjectStage(Core) Type-safe ProjectStage(Test-Control) ProjectStage Control参考) https://tanoseam.wordpress.com/2015/11/03/cdi-test-2/ProjectStageがどういうものかという…

Apache DeltaSpikeでCDI管理Beanをモックを使ってテストする

Apache DeltaSpikeのテスト用モジュールには、モックを使ったテストができる機能があります。Mock FrameworksインターセプターがかかったCDI管理Beanはモック化できないという制限はあるようですが、ちょっと試してみましょう。 Attention: Mocking CDI bean…

Apache DeltaSpikeでCDIのテストを動かしてみる

Java EEでのテスト、といえばArquillianのイメージがありますが、もうちょっと軽いものはないかなぁと思っていたところ、そういえばApache DeltaSpikeにテスト用のモジュールがあったのを思い出しました。Test-Control ModuleApache DeltaSpikeってなんなの…

Apache Geodeで単一JavaVMのまま(若干ウソ)簡単なクラスタを立てる

Apache GeodeでPartitioned Cacheを使った確認などをしている時は、クラスタを構成して複数メンバー間でのデータの配置状況などの確認をしたいものですが、Apache GeodeではひとつのJavaVMでは簡単にクラスタを作るのが難しそうな感じです。どうも、単一のJa…

Apache GeodeのPartitionResolver(Custom-Partitioning/Colocation Data)を試す

Apache Geodeには、Partitioned Regionに格納するデータの配置をカスタマイズする機能があります。Custom-Partitioning/Colocation Dataとして、ドキュメントに記載があります。http://geode.docs.pivotal.io/docs/developing/partitioned_regions/overview…

Spring Data GeodeをとりあえずSpring Boot Starterなしで使う

Apache Geode 1.0.0-incubating.M2がリリースされた時に、Spring Data Geodeの1.0.0.APACHE-GEODE-INCUBATING-M2がリリースされました。Spring Data Geode 1.0.0.APACHE-GEODE-INCUBATING-M2 ReleasedSpring Data Gemfireのバージョンのうち、特にApache Geo…

RabbitMQのQueueingConsumer(RPC)を試す

RabbitMQのチュートリアルの最後にある、RPCを試してみます。Remote procedure call (RPC)タイトルだけ見ると、「キューなのにRPC??」という感じですが、よくよく見るとこんな感じっぽいです。 BlockingQueueを内部に持ったConsumerの拡張クラス、Queueing…

InfinispanのDistributed Cacheのput/getをトレースする(Local NodeがOnwerではない場合)

こちらのエントリの続きです。InfinispanのDistributed Cacheのput/getをトレースする(Local NodeがOnwerの場合) - CLOVER長さの関係で分割しただけなので、詳細は前のエントリをご覧ください…。 Local Nodeにエントリがない場合 続いて、Local Nodeにエ…

RabbitMQのTopicsを試してみる

RabbitMQのチュートリアルで遊んでみようなシリーズ、今度はTopicsを扱います。Topicsこのチュートリアルの前には、Routingというものを扱っているのですが、そこでは複数の条件で振り分けることができないという制限があったのでこれを改善するというものら…

InfinispanのDistributed Cacheのput/getをトレースする(Local NodeがOnwerの場合)

少し前に、こういうエントリを書きました。InfinispanのInterceptorの組み合わせを、Cacheの種類ごとに見てみる - CLOVERInfinispanの各Cacheに対して、putやgetをした時にどういうInterceptorやCommmandが実行されるのか、見てみようというエントリです。今…

Payara MicroのClustered CDI Event Bus(Hazelcast Topic)の仕組み

最近、とある人から「PayaraのCDI Event Busの仕組みを知りたいんですけど、どうやってるんでしょうか?」と聞かれました。言葉自体初めて聞くのに、なにそれ??みたいな感じでしたが。まあ、Payaraのブログの絵を見せてもらって、「あ、これって…」と思う…

Javaアプリケーションをstraceで追う

最近、ちょっとずつstraceを使ってデバッグしたりすることがあって、今回Javaアプリケーションをstraceで追おうとするとどうするのかな?ということで少し調べてみました。Javaアプリケーションをstraceで追う時は、少なくとも「-f」オプションはあった方が…

JTAのSynchronizationを使ってみる

JTAで、今まで割と目にしていたもので、かつ使ったことのないもののひとつにSynchronizationがあったので、ちょっと試してみました。 Synchronizationとは? JTAのJSR、JSR-907を見てみるとJSR 907: Java Transaction API (JTA)「3.3.2 Transaction Synchron…

InfinispanのInterceptorの組み合わせを、Cacheの種類ごとに見てみる

Cacheに対するputやgetなどの各種操作を実行した時の裏舞台を少し知りたいと思い、その内部を少し追ってみることにしました。Cacheに対するputやgetは、Commandというものに委譲して行われるようです。 CacheImpl#putより。 https://github.com/infinispan/i…