クラウドアプリ開発を成功に導くためには、「クラウドネイティブ」の原則を実践することが効果的だ。押さえるべきポイントを紹介する。
企業の開発部門がよく抱える悩みとして、クラウドサービスで構築したシステムの動作が遅い、使いにくいといった悩みがある。ノーコード/ローコード(ソースコードの記述なし、または最小限のソースコード記述のみ)開発ツールベンダーMendixで最高製品責任者を務めるハンス・デ・フィッサー氏は、「これらの問題を回避するためには、クラウドサービスの利用を前提とした『クラウドネイティブ』の原則に忠実であるべきだ」とアドバイスする。具体的にどのようなポイントを押さえればいいのか。
ネットワークベンダーExtreme Networksで欧州・中東・アフリカ(EMEA)地域担当の最高技術責任者(CTO)を努めるマルクス・ニスペル氏は、クラウドネイティブアプリケーションの要件について「ユーザーやデバイス、アプリケーションを際限なく分散させることを開発の重点に置くこと」と説明する。
具体的にフィッサー氏は、ステートフル(プログラムがある状態を保持して処理を臨機応変に変えること)なサービスを構築し、大規模アプリケーションとして稼働できるようにすべきだとアドバイスする。アプリケーションを複数のマイクロサービス(独立性の高い小規模サービス)またはコンポーネント(構成要素)に分割することで、サービス単位ごとのリリースが可能になる。
常時稼働し、酷使するようなコンポーネントは、負荷のピーク時に個別にスケールアウト(数を増やして処理能力を向上させる)する構成を取ってもいい。一方で負荷があまり変動しないマスターデータ管理(MDM)サービスなどのサービスは、ベース負荷を処理できるような構成を取る。
既存のアプリケーションに加えて、Amazon Web Services(AWS)のサーバレスコンピューティングサービス「AWS Lambda」などの専用リソースを活用する顧客も存在する。こうした活用法は、負荷のピーク時に機能を拡張するのに役立ち、負荷が落ち着いたらサイズを縮小できる。
問題は、上述したポイントを踏まえたアプリケーションの設計や開発を、企業が必ずしもできていないということだ。オンプレミスのレガシーアプリケーションをそのままクラウドサービスに移行する「リフト&シフト」を採用する企業は一定数存在するが、「それでは完全な最新化とは呼べない」とニスペル氏は指摘する。
システム構築には、AI(人工知能)技術を組み込んだ製品やローコード開発ツールを積極的に活用すべきだとフィッサー氏はアドバイスする。例えば、Mendixが提供する機械学習(ML)モデルを組み込んだbotは、開発者がパフォーマンス低下の原因となるような行動を起こすと対処パターンを適用するよう警告を発する。ローコード開発ツールはアプリケーション開発プロセスの抽象化や自動化に役立ち、開発の知識や技術を持たない人でも洗練されたアプリケーションを構築できるように支援する
米国TechTargetが運営する英国Computer Weeklyの豊富な記事の中から、海外企業のIT製品導入事例や業種別のIT活用トレンドを厳選してお届けします。
「缶入りのただの水」を評価額14億ドルのビジネスに育てたLiquid Deathのヤバいマーケティング戦略
「渇きを殺せ(Murder Your Thirst)」という刺激的なメッセージにエッジの利いた商品デ...
「日本の食料自給率38%」への不安感は8割越え
クロス・マーケティングは、大気中の二酸化炭素濃度や紫外線量の増加による地球温暖化の...
「マツキヨココカラ公式アプリ」が「Temu」超えの初登場1位 2024年のEコマースアプリトレンド
AdjustとSensor Towerが共同で発表した「モバイルアプリトレンドレポート 2024 :日本版...