Gleyzer両氏によって共同開発されました。2019で、同言語の発表を行いました。InfoQはPurdy氏に言語と、氏らが解決を目指した問題について聞きました。設計/アーキテクチャアジャイルマニュフェスト:ソフトウェアアーキテクトの視点ソフトウェアアーキテクトの役割と責任はアジャイルソフトウェア開発のためのマニフェストの価値と矛盾していると見えますが、優れたアーキテクトはアジャイル開発チームをサポートするテクニックを見つけています。Streamingは、ストリーミングデータのためのSQLライクなインターフェースを提供します。Streamsによって、Redisがストリーミングデータを複数のプロデューサとコンシューマの間で消費、保持、配信することができるようになります。ソフトウェア開発のマニフェストたゆまず息もつかずに市場に突進することで、会社を静かに消滅の崖っぷちへと追い込みます。それは設計してコードを書く方法を再考する時です。簡単さへの投資は、速さへの投資です。簡単さは知的財産の主鉱脈でもあります。競争上の優位性は、一度失ったら、もう一度手に入れることはほとんど不可能です。Buytaerts氏が過去10年間にわたって、企業がDevOps採用のハイプサイクルをくぐり抜け、変革に対する誤解を解消する過程を支援してきた経験について語ります。System(OMS)はさまざまなビジネス機能を担っており,当初はタスクを編成するマイクロサービスの集合体として開発されていた。企業が成長するにつれ,このアーキテクチャの問題点も大きくなり,ついに同社は,ワークフローベースのプラットフォームを新たに構築することを決定した。Novino氏はブログ記事に,旧システムの課題についての説明とともに,新たなプラットフォームの概要と,1年間の運用経験について記している。OMSは元々,pub/subやイベントソーシング,その他のテクノロジを組み合わせたマイクロサービス上で動作していた。各サービスは同じ定型コードを使用して,次の3ステップで実装されていた。入力ストリームからドメインイベントを読み,それを入力タイプに変換する。入力をチェックして,必要なデータを取り出す。サイド・エフェクトを実行する。企業と要件が大きくなるにつれて、アーキテクチャの複雑さも増大し,システムのメンテナンスが困難になった。サービスの数も増え,機能が複数のサービスに分散することが多くなったため,開発サイクルも長くなった。Novino氏はこれを,定形コードにありがちなプロセスの複雑さによるものと考えている。氏は,このアーキテクチャの開発とメンテナンスの複雑さが,システムの成長とともに,システムとチームの両方に悪影響を及ぼした点も指摘している。そのため同社は,すべてのビジネスワークフローをより効率的に処理可能にすべく,新たなプラットフォームの開発に着手した。Transactions"に強く触発された同社では,ワークフローベースのシステムの設計と開発を行うことを決定した。新システムの中核となるデザインは,次の2つの保証を基盤としている。複数のバッキングストアをサポートしているが,自身の書き込んだものを読み取り可能であることが必要であるため,ストアには常に,強力な一貫性モデルを実装している。これらを保証することで,次のような機能を備えたシステムが実現した。状態変更はすべてジャーナルに記録される。ワークフロー定義とそれに対応するステップで構成された,シンプルな実装。これにより,まずビジネスフローを考えることが可能になると同時に,システムのモジュール化が促進される。ワークフローの冪等性の保証。現在動作中の実行環境に関わらず、ワークフローへの変更のデプロイを可能にする、ワークフローのバージョニングスケーラビリティ。各サービスのインスタンスを複数使用することで、ワークフローの並行実行が可能になること。Interpretパイプラインを抽象化し、操作間のサービスバウンダリを明確にしたものだ、と説明している。Executorワークフローを定義する手段として、一連の必要な実行ステップを定義するドメイン固有言語(DSL)を開発した。実行中ワークフローと履歴ワークフローの両方を表示可能な、視覚化ツールも用意した。ワークフローのオーケストレーションには既存の選択肢もあるが、同社では次のような理由から独自開発の方法を選択した、とNovino氏は記している。ワークフローイベント用に分離されたデータストアをメンテナンス可能にするため実行中の任意の時点での状態を再生あるいは視覚化可能にするため拡張性とスケーラビリティ1年以上の運用を続けた結果、約2,200万のジャーナルが生成され、9,300万程度のワークフローが実行された。Novino氏は結論として、分散型マイクロサービスをベースとしたアーキテクチャからワークフローベースのものへの移行が、同社の設計、開発、サポートにおけるオーバーヘッドに劇的な影響を与えた、と記している。氏は、DSLを使用したワークフロー設計と、単一の責任ステップとしての実装が可能になったことで、複雑な新システムを開発する能力が向上した、とも述べている。氏の今後の記事は、新しいシステムをより詳細に説明する予定である。毎週火曜日に前週のまとめコンテンツがお送りいたします。25万人ものシニアデベロッパーのコミュニティーにぜひご参加ください。サンプルを見るあなたのメールアドレスはこちら国を選んでください。プライバシーポリシーに従って私の個人情報を扱うことに同意します。登録するとさまざまなことができます。アカウント登録をしてInfoQをお楽しみください。あなたの意見をお聞かせください。毎週火曜日に前週のまとめコンテンツがお送りいたします。25万人ものシニアデベロッパーのコミュニティーにぜひご参加ください。サンプルを見る様々なイノベーターとアーリーアダプターがお送りするテクノロジーの概要を見る。自分がまだ知らないことに気づいていないと知るあなたが興味のあるトピックスをいつでも最新な情報に。あなたのメールアドレスはこちら国を選んでください。プライバシーポリシーに従って私の個人情報を扱うことに同意します。よい世界へ私たちが暮らす世界を大切に思い、よりよいものにしたいと考えています。人のためのソフトウェア開発を加速し私たちのミッションを実現することで、この思いを成し遂げようとしています。私たちは利益の1%をさまざまな慈善団体に寄付しています。会社として、また従業員として、そうしたことの価値を強く信じているからです。with.プライバシーBTあなたのプロファイルは最新ですか?プロフィールを確認してアップデートしてください。アドレス*Eメールを変更すると確認のメールが配信されます。会社名:現在の会社名をご入力ください。Other組織規模:現在の組織規模をご入力ください。2,501+国:現在の国を設定してください。Zimbabwe都道府県:現在の都道府県に設定してください。次の都道府県にアップデートする:ニュースレターを購読しますか?インダストリーメールを購読しますか?本Eメールに登録すると、以前より関心のあったトピックの関連情報をお送りする場合がございます。詳細はこちらのプライバシーポリシーをご覧ください。newsletter?新しいメールアドレスに確認用のメールを送信します。このポップアップ画面は自動的に閉じられます。