Skip to Content
Kubernetesパターン 第2版 ―クラウドネイティブアプリケーションのための再利用可能パターン
book

Kubernetesパターン 第2版 ―クラウドネイティブアプリケーションのための再利用可能パターン

by Bilgin Ibryam, Roland Huß, 松浦 隼人
September 2024
Intermediate to advanced
392 pages
5h 35m
Japanese
O'Reilly Japan, Inc.
Content preview from Kubernetesパターン 第2版 ―クラウドネイティブアプリケーションのための再利用可能パターン

8章Periodic Job(定期ジョブ)

Periodic Job(定期ジョブ)パターンは、時間の概念を取り入れ、一時的なイベントによって仕事の1単位の処理を開始できるようにすることで、Batch Jobパターンを拡張したものです。

8.1 問題

分散システムとマイクロサービスの世界では、アプリケーション間の通信には、HTTPと軽量メッセージングを使ったリアルタイムでイベント駆動な仕組みを使うという明らかな傾向が見られます。しかし、ソフトウェア開発の最新のトレンドとは関係なく、ジョブスケジューリングには長い歴史があり、今も有効な手段です。定期ジョブはシステムメンテナンスや管理タスクの自動化に広く使われています。また、特定のタスクを定期的に実行するビジネスアプリケーションにも使われています。代表的な例としては、ファイル転送を通じたビジネス間の連結、データベースポーリングを通じたアプリケーションの統合、ニュースレターEメールの送信、古いファイルの整理とアーカイブなどがあります。

システムメンテナンスの目的での定期ジョブを扱う伝統的な方法としては、専門のスケジューリングソフトウェアかcronを使ってきました。しかし、専門ソフトウェアは単純なユースケースには高価すぎ、単一のサーバ上で動くcronジョブはメンテナンスが難しい上に単一障害点になってしまいます。これが、スケジューリングと実行されるべきビジネスロジックの両方を扱える方法を開発者がよく実装してしまいがちな理由です。例えばJavaの世界では、一時的なタスクを実行するのにQuartz、Spring Batch、ScheduledThreadPoolExecutorクラスを使ったカスタム実装などの方法があります。しかしcronと同じくこの方法の主な難しい点は、スケジューリングの機能に回復力を持たせ可用性を高めるためリソース使用量が増えてしまうことです。またこの方法だと、時刻ベースのスケジューラはアプリケーションの一部なので、このスケジューラの可用性を高めるにはアプリケーション全体の可用性を高める必要があります。これを実現するには通常、複数のアプリケーションインスタンスを動かしつつ、ある時点ではそのうちの1つのインスタンスだけがアクティブであるというジョブをスケジュールする仕組みを使うことになり、リーダ選出などの分散システムにおける課題が関連してきます。 ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

エンジニアリングマネージャーのしごと ―チームが必要とするマネージャーになる方法

エンジニアリングマネージャーのしごと ―チームが必要とするマネージャーになる方法

James Stanier, 吉羽 龍太郎, 永瀬 美穂, 原田 騎郎, 竹葉 美沙
プログラミング言語AWK 第2版

プログラミング言語AWK 第2版

Alfred V. Aho, Brian W. Kernighan, Peter J. Weinberger, 千住 治郎
進化的アーキテクチャ ―絶え間ない変化を支える

進化的アーキテクチャ ―絶え間ない変化を支える

Neal Ford, Rebecca Parsons, Patrick Kua, 島田 浩二

Publisher Resources

ISBN: 9784814400881Publisher Website