강의

멘토링

로드맵

Inflearn brand logo image
BEST
Programming

/

Back-end

ばねの配置

初級から中級から上級まで、Springデプロイメントの基本的な概念から、APIの使用法と内部アーキテクチャ構造を深くカバーしています。そして、スプリング配置各機能の流れと原理を学習することになり、これをもとに様々な配置アプリケーション開発のための実務的感覚を身につけることになります。

  • leaven
Spring Batch
Spring Boot

学習した受講者のレビュー

こんなことが学べます

  • Springバッチコアドメインの理解

  • Spring Deploy Job、Step、Flowの理解とAPIの活用

  • SpringバッチChunkベースのプロセスの理解と活用

  • Springバッチ例外とエラー制御

  • Springバッチマルチスレッド処理の理解と活用

  • Springバッチイベントリスナーの取り扱い

  • SpringバッチTDDと運用APIの活用

  • スプリングバッチ実戦プロジェクト

バックエンドのバッチ処理をより簡単かつ効果的に!
スプリング配置の世界を体験してください。

春のバッチ学習、
どうやって始めるべきですか?

スプリング財団で進行するスプリングプロジェクトはさまざまです。
代表的には、Spring Boot、Spring Data、Spring Cloudなどがあります。
そしてこれらのプロジェクトに関連する資料やリファレンスがたくさん存在します。

ところで、ばねの配置はそうではありません。

Spring Batch?

Spring Deploymentは、バッチアプリケーションを開発するために必要な強力なAPIを提供しています。基本的に提供するAPIのみを使用しても、複雑なバッチプログラムも簡単に実装できます。

Spring Deploymentは、Springのサブプロジェクトの中でも歴史が短くなく、バージョンが継続的にアップグレードされ、堅牢な技術的基盤を備えています。設計と実装においても拡張性と柔軟性が高いにもかかわらず、関連資料やリファレンスが他のスプリングプロジェクトに比べて非常に不足しているのが現実です。

これまで、スプリング配置を使ってきた経験をもとに、スプリング配置の技術を習得したい開発者に知識を共有しようと講義を企画、製作することになりました。


ばね配置の
コアをお知らせします。

本講義はスプリング配置の基本的な使い方を全く知らないユーザーから基礎的な知識や使用経験はありますが、より深い知識を習得し、スプリング配置の核心的な概念と原理内部構造動作方法などを深く理解し、これを応用したい方のための講義です。


Java開発者なら
ばね配置より
より良い選択はありません。

Javaを使用している開発者であれば、バッチアプリケーションを開発するにあたり、Springの配置よりも良い選択はないと自負します。スプリングの共通の機能をすべて使用できると同時に、バッチアプリケーションの開発に必要なさまざまな要素を提供してくれており、簡単な設定と構成でも複雑で堅牢なアプリケーションを作成できるからです。

そのためには、スプリング配置の基礎と基本を確実に理解し、確立し、アプリケーション開発に進む必要があります。単にAPIの使い方を覚えてコーディングしても、スプリング配置の膨大な技術的利点を最大化することはできません。

バネ配置をめぐる悩み、
この講義でOK。

  • 「バッチアプリケーションを作成するときのスプリング配置が最良の選択ですか?」
  • 「スプリング配置の基本的な使い方や構成する内容を大まかに知っていますが、これでも配置アプリケーションを開発するのは大丈夫でしょうか?」
  • 「さまざまなバッチアプリケーションを開発するために、スプリングの配置をどの程度まで知る必要がありますか?」

このレッスンは、スプリング配置の重要な概念と原則だけでなく、さまざまな実践と内部フローを深く分析することによって、実務的にさまざまなバッチアプリケーションを開発する能力を育成することを目的としています。


こんな方へ
おすすめです。

ばねの配置
(スプリングバッチ)
初めて
入門者

ばねの配置を通して
バッチアプリケーション
(バッチアプリケーション)
作りたい人

シンプルAPIの使用を超えて
内部構造と動作原理
などを深く
知りたい方

ばね配置の
機能を拡張して
カスタマイズするレベル
能力を備えたい方


この講義の特徴

  • 単純なAPIの使用法と文法だけを学習しません。
  • ばねの配置がどのような構造で動作するのか正確な流れを理解し、原理を把握します。
  • スプリング配置が提供する基本機能を拡張して、カスタマイズする能力を養うことができます。
  • 実践例では、スプリング配置の技術をどのように実践的に活用できるかについての感覚を学びます。

学習カリキュラム

1. スプリング配置のコアドメインの理解と活用

SpringバッチでJobを設定するために使用されるいくつかのドメインがあります。たとえば、Job、Step、Flow、Tasklet、JobInstance、Jobexecution、StepExecution、ExecutionContextなど。各ドメインの用語概念とドメイン間の関係を理解することで、簡単なジョブから複雑なジョブまで、目的のジョブを体系的に整理する方法を学びます。

2. SpringバッチのJob、Step、Flowの理解とAPIの活用

SpringバッチでJobを設定するための基本的な単位と項目について学びます。 Job、Step、Flowの基本概念と構造を理解し、各APIの設定と活用方法について学習します。そして、JobとStepのさまざまなタイプについて調べて、Job、Step、Flowを組み合わせて配置ジョブを構成する方法を学習することで、スプリング配置の最も基本となるJobの構成および活用を自由自在に実装する能力を養うことになります。

3.スプリングバッチのチャンクベースの処理征服

Springバッチで最も重要な機能の1つはチャンクベースの処理です。 Chunkの概念を導入し、大容量のデータを高性能で処理できるようにします。ここで使用されるAPIはItemReader、ItemProcessor、ItemWriterです。チャンクベースの処理の基本的な概念と原理を学び、内部アーキテクチャまで把握します。そして、さまざまな例でチャンクベースの処理によるデータ処理の活用法を征服します。

4.スプリングバッチのマルチスレッド処理征服

大容量のデータ処理と時間のかかるバッチ処理は、シングルスレッドではなくマルチスレッドで構成し、同時に並列的なバッチ処理を行うことで、より効率的なバッチ処理が行われるようにします。 Javaのスレッドモデルの基本的な概念と、スプリング配置で提供されるマルチスレッド関連技術をまず理解し、複数のマルチスレッドタイプの配置処理技術を習得します。

5. ばね配置の誤差制御

バッチ実行においてエラーや例外はいつでも発生する可能性があります。このような状況で、エラーによる障害を事前に予想して備えていることで、バッチサービスが完全に中断されるのではなく、一時的な中断や例外を無視して次のステップに進むなどの処理を行うことで、フォールトトレランスを持つバッチアプリケーションをどのように構成できるかを学習します。これに関連する技術であるSkipとRetry機能の詳細と実践を進めます。

6.本番! Springバッチアプリケーションの例

スプリングバッチの技術を使って本番で応用できるバッチアプリケーションを製作する時間があります。スプリングデプロイメントベースの上でマルチスレッド構造でAPIサーバーと通信するバッチアプリケーションを実装する例を実装することで、スプリングデプロイメントの全体的な内容を理解するとともに、実務でスプリングデプロイメントをどのように活用できるかについての意見を広げる時間になります。


この講義を作った
知識共有者を紹介します。

浄水源(leaven)

  • 現職のJava開発者
  • SI/SM/ソリューション/Mobile/Front&Back-end のさまざまなプロジェクト体験
  • Architect/PM/PL として役割を果たす
  • Github

こんな方に
おすすめです

学習対象は
誰でしょう?

  • スプリング配置の基本的な構造と概念を確実に理解したい方

  • Springバッチの単純なAPIの使い方を超えて、内部処理プロセスとアーキテクチャを理解したい人

  • スプリングバッチを活用して実務レベルのバッチアプリケーションを開発したい方

  • スプリング配置の入門者から中高級者まで活用できる内容で構成

前提知識、
必要でしょうか?

  • Java

  • Spring Boot

  • JDBC、JPA

  • Lombok

こんにちは
です。

9,822

受講生

323

受講レビュー

1,208

回答

4.9

講座評価

5

講座

다양한 프로젝트에서 웹/모바일/솔루션 제품 개발과 관련된 업무를 진행해 오고 있으며 분석/설계/개발 Role 을 맡아 오고 있습니다.

공공기간, 교육프로그램, 기업 프로젝트, 쇼핑몰 등의 웹 개발 및 솔루션 프로그램, 프레임워크, 오픈소스 연동 등의 아키텍처 설계 및 구조적 고도화 개선 등을 해 오고 있으며 개발, PL 등의 역할을 맡았습니다.

다양한 Open Source 와 여러 기술적인 경험들을 통해 웹의 전반적인 기술 흐름들을 익혔으며 개발 경험이 거듭될 수록 요구사항의 기능 구현에만 거치지 않고 좀 더 OOP 적인 구조의 소프트웨어로서 안전성과 성능을 고려한 아키텍처링과 튜닝의 기술들을 접목시켜 지속적으로 더 훌륭한 소프트웨어를 완성하기 위한 연구와 개발 실무를 책임감 있게 맡아 오고 있습니다.

 

カリキュラム

全体

110件 ∙ (45時間 14分)

講座資料(こうぎしりょう):

授業資料
講座掲載日: 
最終更新日: 

受講レビュー

全体

126件

4.8

126件の受講レビュー

  • ljh님의 프로필 이미지
    ljh

    受講レビュー 3

    平均評価 5.0

    5

    100% 受講後に作成

    정말 열심히 강의 준비하신게 티가 확 나고, Batch의 밑 단까지 배울 수 있어 좋았습니다. 아쉬운 점이 있다면 깨끗한 코드와 거리가 너무 멀어서 다소 아쉬운 것 같아요..! (예를 들어 List를 기반으로 for문을 돌리는데 size > 0 검사를 먼저 한 후 for 문을 돌린다거나.. stream.anyMatch()만 써도 되는데 filter()를 써서 성능과 가독성을 낭비하는 부분, 패키지 구조, 각 도메인의 책임과 역할 로직 등 아쉬운 부분이 있습니다.) > 참고만 부탁드립니다. 강의 잘 들었습니다! 👍

    • kkkh0712님의 프로필 이미지
      kkkh0712

      受講レビュー 11

      平均評価 5.0

      5

      79% 受講後に作成

      듣기 전: 45시간의 강의 시간이 부담스럽다. 들은 후: 군더더기 없는 45시간이었다. 스프링배치 학습을 위해 블로그 토막상식과 매번 배치의 특성만 적어놓는 얕은 깊이의 포스팅에서 헤메던 사람들을 위한 강의.

      • 한창훈님의 프로필 이미지
        한창훈

        受講レビュー 15

        平均評価 5.0

        5

        23% 受講後に作成

        "이 시대 최고의 배치 강의"

        • 정수원
          知識共有者

          소중한 평가 감사드립니다. 긴 강의시간이지만 끝까지 완주하셔서 스프링 배치의 큰 그림을 그릴 수 있는 개발자로 거듭나시길 응원드리겠습니다. 감사합니다^^

      • pandabear님의 프로필 이미지
        pandabear

        受講レビュー 51

        平均評価 5.0

        5

        55% 受講後に作成

        스프링 시큐리티 강의와 마찬가지로 디버그를 찍어 흐름을 보여주시는 부분이 정말 좋습니다 강의 시간이 정말 압권이네요 인프런 강의 중 제일 혜자 강의 같습니다 감사히 잘 듣겠습니다

        • 정수원
          知識共有者

          네 소중한 평가 감사드립니다. 어떤 기술이든 기본적인 원리를 알게 되면 그만큼 응용은 쉬워지게 마련입니다. 끝까지 완주하셔서 좋을 결과 있으시길 바라겠습니다.^^

      • wjsyuwls님의 프로필 이미지
        wjsyuwls

        受講レビュー 22

        平均評価 5.0

        5

        17% 受講後に作成

        너무 좋은 예제들로 하나하나 자세히 설명을 해주시다 보니 어려울 줄만 알았던 배치가 생각보다 쉽게 느껴져서 몰입이 잘되어 강의가 술술 넘어갔습니다. 감사합니다!

        ¥11,714

        leavenの他の講座

        知識共有者の他の講座を見てみましょう!

        似ている講座

        同じ分野の他の講座を見てみましょう!