開発Tips
これは何? hiro-tracks.net こちらの記事の続きです。 本記事では、上記記事の「必要なカラムだけSELECTする」に加えて、OneToManyな2テーブルに対して飛ばしたJONクエリの結果を、自作DTOにマッピングする方法をお伝えします。 クエリチューニングの一環と…
これは何? queryDSLで「SELECT * FROM...」するのではなく、必要なカラムだけ取得する方法をお伝えします。 クエリチューニングの一環としてでSELECTする対象を絞り込む時(Key LookUpを減らして実行計画改善する時とか)に便利なTipになってます! これは…
これは何? Kotlinで書いたAPI内からAWS Batchを起動するために、sdk-for-javaを使って処理を書いていました。 sdk-for-javaはお手軽にバッチ起動ができて大変便利なのですが、リソースをちゃんと解放できるように書いてあげないと性能劣化の原因になります…
これは何? マルチプロジェクト(gradle)のSpringBootアプリを触っている 仕事外の技術検証で軽〜くDB使いたい オンメモリDB(H2とか)じゃなくてガッツリOracleとかSQLServerとか使いたい 上記のような時に、いちいちLocalPCにSQLServerをインストールしたくな…
はじめに 負荷試験の知識を深める為に、本「Amazon Web Services負荷試験入門 クラウドの性能の引き出し方がわかる」(以下、「Amazon Web Services負荷試験入門」)を呼んでみることにしました。 自分の思考整理と、この記事に辿り着いて下さったみなさんの…
これは何 java.time.DateTimeFormatterのString->日付型の変換が結構柔軟で助かった話です! 型に「yyyy/M/d」と指定すれば、例えば日付が「01」でも「1」でも型変換してくれるようになります。 何がええんや?? 「2022/1/1」と「2022/1/01」どちらも変換して…
これは何? 【性能】ISUCON9予選のLocal環境構築(DB部分:Docker-Compose) - HIRO Tracksの続きです ISUCON9をLocal(DB部分だけDocker)でやろうとしたけど、色々面倒なのでやめることにしました。 今後はAMIからAWSにEC2環境作ってやっていく予定。 目次 …
これは何? 性能周りの知見向上のため、ISUCON過去問を触ってみたい!と思い至りました。 本記事はそのための第一段階としてLocalで環境構築してみた時の備忘録です! Localでアプリ立ち上げ + ベンチマークを回す、ことをゴールとしています。 「推測するな…
これは何? Spring Batchは、Spring Frameworkファミリーの中でも、バッチ処理に特化したフレームワークです。 spring.pleiades.io 非常に便利な機能が揃っていますが、重厚ゆえ理解が若干難しいのと、高機能すぎる部分があります。※個人の感想です この記事…
これは何? SpringBatchプロジェクトにおいて、JdbcTemplateを使ってDBアクセス処理を書いていた際、「これってちゃんとSQLインジェクション対策できてるの?」という問いが生まれました。 公式を読んでみても「出来てるよ!」という明言が見つからなかった…
これは何? java.nio.ByteBufferを用いてString生成する処理にて、部品化したクラスの単体テストで困ったことの解決 目次 これは何? 目次 困りごと 案1 ByteArrayOutputStreamで取り扱う 案2 Charsets.decodeを使う 困りごと @Test fun hoge() { val byteBu…
本記事の概要 社内プロジェクトでServer Side Kotlinを使ってコードを書くことになりました。 メンバーには自分含めJava民が多いです。Kotlinへの移行がちょっとでもスムーズになるように、Java民から見た「Kotlin特有の書き方だなぁ」ってところをまとめま…