お久しぶりです。最近は技術TipsはQiitaに書く事が多いので、ブログはご無沙汰でした。 最近社外勉強会参加してないなーと思い、ちょうど朝にTwitterで開催されていることを知りw、久しぶり*1に参加てみました。 結果めちゃくちゃ刺激受けました。やっぱりこういうのは定期的に参加しないといけないですね。
以下自分が参加したセッションの感想とかメモとか。
F-1 だれも教えてくれないJavaの世界。あと、ぼくが会社員になったわけ。
「ソフトウェアのトレンドは動かすハードウェアの性能に左右される」と言っていたのが印象に残りました。確かにそうだなーと。
Javaの過去と未来
きしださんが会社員になったわけ
- フリーランスの限界
- 不自由(何をするにも受注もとの了解が必要)
- 仕事がこまぎれ
- リスクが取れない(自分ができる仕事しか受けられない)
- 大掛かりなテクノロジーにさわれない
- フリーランスの限界
- 今のところは?
- おおむね満足
G-2 クラウド時代の Spring Framework
本当は裏番組のテストの話が聞きたかったんですが、人が多すぎたのでこっちにw でもめっちゃためになりました。Springはオワコンとか言われることもありますが、今でもちゃんと進化していますね。 SpringCloudとNetflixOSSはどこかで使ってみたいと思いました。
- SpringIOプラットフォーム
- SpringIOのdepencencyを指定するだけで、関連プロダクトの依存関係をすべて解決してくれる
- SpringBootと思想的にはちょっとかぶっている、らしい
- CloudFoundry
- SpringCloud
- SpringCloudConfig
- 設定ファイルを外だしして、REST経由でアクセス出来る仕組み
- マイクロサービスに対応出来るように
- 設定ファイルを外だしして、REST経由でアクセス出来る仕組み
- SpringCloudBus
- 分散環境を軽量なメッセージブローカーで結ぶ仕組み
- 設定ファイルの動的変更など
- AMQPのみサポート
- 分散環境を軽量なメッセージブローカーで結ぶ仕組み
- SpringCloudNetflix
- (余談)Netflixはspringやgroovyを使っている割合が大きいらしい。
AB-3 大規模な負荷でもドキドキしない為のJava EE
負荷テストやスケールアウトには銀の弾丸はない、地道に基本に忠実にやるしかないって感じですね。 JMeterのTipsはとても参考になりました。
- 負荷テストの話
- JMeter
- 便利機能
- よくやるパターン
- インテグレーションテストで作ったシナリオを使って負荷試験する
- maven統合
- Jenkins統合
- 負荷試験あるある(の一つ)
- リクエストが遅い(負荷試験サーバのリソース枯渇)
- リソース監視
- JPAのスケールアウト事例
- データの設定とテストケースの管理はどうしている?
- データはオンメモリ(H2)を使ってBeforeClassで投入している
- 負荷試験の場合のデータ管理は、RESTなどを使ってユーザーの初期化を行う口を用意して、BeforeClassで叩く的なことをしている。
- たとえば、userId=xxxのユーザーデータを初期化するためのAPI
『Embulk』に見るモダンJavaの実践的テクニック ~並列分散処理システムの実装手法~
発表中にちょっとしたトラブルもありましたがw、Embulkは実際に利用を検討中なので中の人から直接仕組みや使っている技術を聞けたのが良かったです。
- Embulkとは
- Java実装技術
*1:3年ぶりくらい