Skip to main content

アーキテクチャ

OutSystems

OutSystems Cloudのアーキテクチャ

OutSystems Cloudをサブスクライブすると、組織のインフラは自動的にプロビジョニング、構成、調整され、可用性、パフォーマンス、セキュリティ、信頼性が向上します。

  • インフラプロバイダ: OutSystems Cloudの物理インフラは、Amazon Web Servicesの安全なデータセンターで運用されています。

  • スターター環境構成: OutSystems Cloudのスターター構成には、本番環境が1つ、非本番環境が2つあります。

  • サポートされているスタック構成: OutSystems Cloudでは、任意のデータベースエンジン(Microsoft SQLまたはOracle)を選択することができます。

  • インフラの配置: OutSystems Cloudでは、世界中に物理的に分散しているインフラにアプリケーションを自由にデプロイすることができます。

  • マルチテナントによるインフラの分離: OutSystemsの基本的側面として、プラットフォームレイヤーで複数のお客様(またはテナント)を分離しながら効率的にホスティングする「マルチテナント」をサポートしています。

インフラプロバイダ

Amazon Web Services(AWS)は、市場リーダーであり、最も成熟したパブリッククラウドIaaSです。AWSは、保証サービスレベル99.9%のエンタープライズレベルの可用性を備え、そして最大数の セキュリティコンプライアンス スタンダードによって認定されたIaaSテクノロジーです。

OutSystems Cloudは、AWSで稼働しますが、お客様を単一のIaaSベンダーで囲い込むものではありません。OutSystemsプラットフォームの内部アーキテクチャは、IaaSレイヤーを抽象化し、IaaSベンダー間のポータビリティを実現します。

スターター環境構成:

OutSystemsのスターター構成には、3つの環境があります。

複数の環境によって、本番環境にデプロイする前に、あるいはお客様にリリースする前に、そのアプリケーションおよび統合を開発・テストすることができます。また、環境の分離により、アクセス制御が向上します。開発でのリスクも低減されます。たとえば、開発環境のデータベースでの失敗と、本番環境のデータベースでの失敗は意味が異なります。機密性の高い個人情報を扱うシナリオでは、開発およびQAチームはこの情報をテストに使用しないため、この情報は保護されます。

スターター構成は、通常の業務を行う開発者5人までのチームに適しています。本番環境ではスターター構成は1秒間に30リクエストまで受け付けることが可能で、拡張性が高く優れた設計のアプリケーションに対するベンチマークに基づき、約600ユーザーを同時にサポートします。

スターター構成の物理アーキテクチャには、以下のものが含まれます。

  • 開発、テスト、本番環境のフロントエンドサーバー各フロントエンドサーバーは、分離された仮想インスタンスであり、OutSystemsでモバイル/Webアプリケーションを開発、実行することに適した一連のリソースを備えています。各フロントエンドサーバーは、4GBのメモリと2つの仮想コアを備えています。

  • 管理(LifeTime)フロントエンドサーバー管理フロントエンドサーバーは仮想インスタンスであり、その他の環境から分離され、4GBのメモリと2つの仮想コアを備えています。

  • データベースサーバー各データベースサーバーは、仮想リレーショナルデータベースインスタンスであり、3.75GBのメモリ、1つの仮想コア、100GBのストレージ容量を備えています。

  • VPC(仮想プライベートクラウド)VPCサービスは、OutSystems環境に対して、論理的に分離されたプライベートネットワークを提供します。このサービスにより、クラウド環境でオンプレミスのシステムとIPsec VPNトンネルで通信することが可能となり、組織はデータセンターに対するセキュアかつシームレスな拡張としてOutSystemsを活用できるようになります。 

パフォーマンス要件を満たすためにスケーラビリティを追加する必要がある場合、OutSystems Cloudインフラをオンデマンドで拡張することができます。

サポートされているスタック構成

OutSystemsは、専有的なランタイムエンジンを使用せずに、標準OSとアプリケーションサーバーにアプリケーションをデプロイします。

データベースエンジンには、OracleまたはMicrosoft SQL Serverを利用できます。OutSystemsのビジュアルクエリ機能、または既存のツールを使用することで、基盤となる機能を活用することができます。

ビジュアルモデリング機能により、基盤となるスタックを抽象化し、スタック間のポータビリティが確保されます。OutSystemsでは、以下のことが可能になります。

  • 既存の従来型のコードやライブラリをOutSystemsにデプロイし、以前に構築したロジックを容易に再利用できるようにします。

  • 従来型のコードでコンポーネントを作成し、基盤となるスタックのスコープをすべて利用します。OutSystemsは、これらのコンポーネントを自動的にカタログ化し、他の開発者が新しいアプリケーションを視覚的にアセンブルするために利用できるようにします。

  • ネイティブ言語で書かれた統合アダプタをパッケージ化し、OutSystemsにデプロイします。一度デプロイすると、カスタム統合アダプタは新しいビジュアル要素としてアプリケーションに利用できます。

この拡張性により、OutSystemsは柔軟性の高いものとなり、開発者は自らの開発スキルを活用できます。クラウドデプロイにおける複雑なカスタムコンテナに準拠せずに、クラウドにコードをデプロイすることが可能です。こうした拡張性は、OutSystemsのパブリッククラウドインフラ から独自のデータセンターや他のIaaSプロバイダに移行する際にも大きなメリットとなります。このアーキテクチャは、組織を特定のクラウドやデプロイモデルに固定するものではありません。 

インフラの配置

OutSystemsをサブスクライブする際、利用するリージョンを選択します。以下のリージョンが利用可能です。

  • アジア太平洋:  シドニー、シンガポール、東京

  • ヨーロッパ、中東、アフリカ: アイルランド、フランクフルト、ロンドン

  • 南米、北米: 米国(ノースヴァージニア州、オレゴン州)

可能な場合は、アプリケーションのパフォーマンスやデータ転送を最適化するために、距離(およびレイテンシ)を低減するリージョンにOutSystemsのインスタンスを配置することを検討する必要があります。

詳細については、「OutSystems CloudのデプロイにおけるAWSリージョンの選択」をご覧ください。

さらに、法的要件を満たすために、特定のデータが特定のリージョンにあるようにリージョンを選択することができます。

マルチテナントによるインフラの分離

OutSystems Cloudでは、基礎となるAWS IaaSによってマルチテナントが提供されており、仮想マシンは論理的に他のテナントから分離されています。データベースレベルでは、マルチテナントはAmazon RDS(Amazon Relational Database Service)によって保証され、各データベースのインスタンスは論理的に分離されて運用されています。さらに、OutSystemsは、各テナントのフロントエンドおよびデータベースインスタンスがテナントに対して、排他的にVPC(仮想プライベートクラウド)を共有するようにすることで、テナントを越えたアクセスを防止します。

このVPCの分離は、リソースを拡張する際にも保持されます。OutSystemsのインフラは、需要の急増または容量の追加に対応するために、他のお客様に影響を与えることなく拡張することができ、OutSystemsは追加リソースがお客様のVPCの一部であることを保証します。

お客様のアプリケーションは分離された環境を共有していますが、同じリソースを共有していても、互いに独立してデプロイされます。新しいコンピューティングリソースが追加されると、アプリケーションポートフォリオ全体で、最適化された同じインフラを共有し、均等に拡張します。