はじめに エキサイト株式会社 バックエンドエンジニアの山縣(@zsp2088dev)です。 現在、既存サービスのリビルドにあたり、AWS Copilot CLIを使用してコンテナ環境を構築しています。 コンテナ環境には、サイドカーコンテナにnginxを使用しており、またログ…
はじめに エキサイト株式会社 バックエンドエンジニアの山縣(@zsp2088dev)です。 エキサイトホールディングス Advent Calendar 2023の6日目を担当します。 私の担当するエキサイトブログでは、アプリケーションのテスト、ビルド、デプロイにGitHub Actions…
はじめに エキサイト株式会社 バックエンドエンジニアの山縣(@zsp2088dev)です。 エキサイトブログでは、DBコスト削減に取り組んでおり、これまでにいくつかの改善を行ってきました。 取り組んだこととその効果については、下記記事をご参照ください。 tec…
はじめに エキサイト株式会社 バックエンドエンジニアの山縣(@zsp2088dev)です。 普段の業務では、エキサイトブログの新機能開発や運用に取り組んでいます。 先日、エキサイトブログのブログテーマ機能について内部的に大きな変更を行いました。 具体的に…
はじめに エキサイト株式会社 バックエンドエンジニアの山縣(@zsp2088dev)です。 2022年3月末にエキサイトブログはAzure/SQL ServerからAWS/PostgreSQLの移行をしました。 詳細は下記記事をご参照ください。 優先度の高いAWSへの移行が終わったことで、次…
はじめに エキサイト株式会社 バックエンドエンジニアの山縣(@zsp2088dev)です。 普段の業務では、GitHub Actionsのworkflow_dispatchを使用してコンテナイメージをビルド、プッシュしています。 このとき、Gitのブランチ名をコンテナのイメージタグ名とす…
はじめに エキサイト株式会社 バックエンドエンジニアの山縣(@zsp2088dev)です。 2023年6月22日(木)~6月23日(金)に開催された「AWS Dev Day 2023 Tokyo」1日目のレポートを書きます。 詳細については下記をご参照ください。 aws.amazon.com はじめに 会場…
はじめに エキサイト株式会社 バックエンドエンジニアの山縣(@zsp2088dev)です。 先日投稿した記事のとおり、エキサイトブログではAWSのサーバー構成とコストの最適化を行っています。 その中で、DBのインスタンスサイズが余剰であることがわかり、DBのイ…
はじめに エキサイト株式会社 バックエンドエンジニアの山縣(@zsp2088dev)です。 新卒入社から早いもので2年が経過しました。 最近、エキサイトブログの大規模なメンテナンスが完了し、無事にクラウドとデータベースの移行が終わりました。 クラウドはAzur…
はじめに エキサイト株式会社 バックエンドエンジニアの山縣(@zsp2088dev)です。 エキサイトホールディングス Advent Calendar 2022の25日目を担当します✍️ 本記事では、SpringBootを使用したアプリケーションで、突然CPUがスパイクしてしまう事象に遭遇し…
はじめに エキサイト株式会社 バックエンドエンジニアの山縣(@zsp2088dev)です。 エキサイトホールディングス Advent Calendar 2022の14日目を担当します✍️ 3ヶ月前に、私の携わるサービスの一部をAzure VMからAzure Container Appsに移行しました。 詳細…
はじめに エキサイト株式会社 バックエンドエンジニアの山縣(@zsp2088dev)です。 先日、私の携わるサービスでAzureのVM環境からAzure Container Appsに移行しました。 本記事では、Container Appsに切り替えた経緯やContainer Appsのことについて紹介しま…
はじめに 概要 注意点 定期実行 アクティブ化のワークフロー 非アクティブ化のワークフロー おわりに 採用アナウンス はじめに エキサイト株式会社 バックエンドエンジニアの山縣です。 私たちのチームでは、Azure Container Appsを使用して、バックエンドサ…
はじめに やること ワークフロー 使用方法 配列の要素にアクセスする 実行結果 おわりに 採用アナウンス はじめに エキサイト株式会社 バックエンドエンジニアの山縣です。 GitHub Actionsを使用して、 ワークフローを実行するときに、YAMLファイルを動的に…
はじめに 環境 認証情報の取り扱い ログイン処理 jibでビルド&プッシュ 全体のワークフロー ワークフローを手動実行する ACRにプッシュされていることを確認する おわりに 採用アナウンス はじめに エキサイト株式会社 バックエンドエンジニアの山縣です。 …
はじめに 動作環境 複数のDB DataSourceの設定 DBの接続先を定義したEnumの作成 DataSourceContextHolderの作成 AbstractRoutingDataSourceを実装する SqlSessionFactoryを定義する 実際に実行する おわりに 参考 はじめに エキサイト株式会社 バックエンド…
はじめに エキサイト株式会社 バックエンドエンジニアの山縣です。 先日、技術者が主催の外部勉強会を開催しました。 excite.connpass.com 勉強会のテーマは「リビルドへの道」。Zoomのウェビナー機能を利用してオンラインで開催をしており、 登壇者にはリビ…
はじめに エキサイト株式会社 バックエンドエンジニアの山縣です。 現在は、既存サービスのリビルド(PHP / BEAR.Saturday → Java / SpringBoot)を担当しています。 SpringBootでDBアクセスをするにあたってMyBatisを利用していますが、MyBatisのMapperでは…
はじめに エキサイト株式会社 バックエンドエンジニアの山縣です。 既存サービスのリビルドを進めていく上で、Redisのキャッシュ操作を行うためのツールが欲しいという要望がでました。 そこで、Goのcobraを使ってキャッシュ操作を行うCLIツールを作成しまし…
エキサイト株式会社 バックエンドエンジニアの山縣です。 本記事はアドベントカレンダー24日目の記事です。 qiita.com 12月17日に社内でLT会を開催しました!今回は40名近くの方に参加してしただき、多くの方に聞いていただくことができました。 LT会では、…
はじめに エキサイト株式会社 バックエンドエンジニアの山縣です。 エキサイトホールディングス Advent Calendar 2021の9日目の記事です。 qiita.com タイトルのとおりですが、Spring BootでCacheableが効かなかったことがありました。 これについて調査した…
はじめに エキサイト株式会社 21卒 バックエンドエンジニアの山縣です。 普段は既存サービスのリビルド(PHP / BEAR.Sunday → Java / SpringBoot)を担当しています。 エキサイトホールディングス Advent Calendar 2021の3日目の記事です! qiita.com 現在エ…
はじめに エキサイト株式会社 21卒 バックエンドエンジニアの山縣です。 既存サービスのリビルドするにあたり、外部APIを呼び出してXMLを取得してJavaオブジェトに変換する処理を書きました。 Jacksonを使用したXML→Javaオブジェクト変換についての記事は少…
はじめに エキサイト株式会社 21卒 バックエンドエンジニアの山縣です。 既存サービスのリビルドをするにあたり、日付まわりの処理を記述することが多くなってきました。 日付まわりの処理を誤ると、未公開のデータを取得できてしまうこともあるため慎重にコ…
はじめに エキサイト株式会社 21卒 バックエンドエンジニアの山縣です。 Spring Boot / Javaで既存システムのリビルドを進めてHTTPステータスコードの実装を調べている途中に、ふと他の言語の実装が気になり、普段趣味で使用しているPythonとGoのソースコー…
はじめに エキサイト株式会社 21卒 バックエンドエンジニアの山縣です。 UriComponentsのreplaceQueryParam()を使用してクエリパラメータの値を書き換えたときに、書き換える前と書き換えた後とでクエリパラメータの順序が異なってしまい、 単体テストで落ち…
はじめに エキサイト株式会社 21卒 バックエンドエンジニアの山縣です。 Spring Bootでコンポーネント名が重複したときに、ConflictingBeanDefinitionExceptionが発生してエラーとなってしまいました。 その原因と解決策についてまとめました。 別のパッケー…
はじめに エキサイト株式会社 21卒 バックエンドエンジニアの山縣です。 少し前にGitHub上でVisual Studio Codeを起動してコードレビューをすることができるようになりました。 実際に試してみたので共有します! Visual Studio Codeを起動する プルリクエス…
はじめに エキサイト株式会社 21卒 バックエンドエンジニアの山縣です。 連休中にGrafana + PostgreSQLをDocker Composeで動かしたときになかなか連携できずにハマってしまいました。 そのときに起きた問題点と解決策を共有します! 導入 今回使用したdocker…
はじめに エキサイト株式会社 21卒 バックエンドエンジニアの山縣です。 PHPで書かれたAPIからSpringBoot / Javaでリビルドを進めていく上で、 独自のイメージタグからHTMLのimgタグに置換する処理をJavaで実装することになりました。 シンプルでスッキリと…