2020年8月16日

エンタープライズBaaS【Hexabase】のアーキテクチャーと技術的な特徴

カテゴリー:

タグ:, ,

エンタープライズBaaS【Hexabase】では、企業ユーザーや開発パートナーが、クラウド指向の企業システムを安心して開発・運用できるようにするため、独自の高度なシステム基盤を構築しています。

HexabaseのCTO兼チーフエンジニアであるJeane Paul Banayat Soliva(ソリバ・ジェーン・ポール・バナヤット)が、Hexabaseのアーキテクチャと技術的な特徴について説明してくれました。

モダンなマイクロサービスアーキテクチャーを採用

Hexabaseのアーキテクチャは、コンテナ化、kubernetes、NoSQLといった多くのアーキテクチャ上の制約を念頭に置いていますが、そのほとんどはサービス指向アーキテクチャ(SOA:Service Oriented Architecture)の概念に基づいています。

ご存じのとおり「SOA」は、利用者側から見たソフトウェアの機能単位である「サービス」(Service)の組み合わせによってシステム全体を構築していく手法です(ただし、乱用され気味で、人によって意味合いが変わってくることがあります)。

Hexabaseでは、システムの信頼性・拡張性・パフォーマンス・費用対効果・保守性を高めるため、SOAという観点から、サービスコンポーザビリティ・自律性・スケーラビリティ・サービスディスカバリー・ステートレス性などを実現しています。

Hexabaseの実装は、システム開発者にとって使い慣れたものになっており、お客様の既存システムとの連携や様々な機能を利用できます。

実装には、Go言語などシンプルかつ静的で、費用対効果の高いプログラミング言語を使用しています。そして、開発負荷の高いプログラミング言語やツールを使用していては通常は何年もかかるシステム開発を、数ヶ月で実現しました。少ないコードでシステムを記述しており、3~5年後でも安心して動作する安全な環境で、より多くのことを行えるようになりました。

実際に、中小規模から大企業までテスト済みのソリューションで課題を解決し、優れた結果を得ています。

Microsoft Azure上で稼働

Hexabaseは、Microsoft Azure上で稼働しており、Hexabaseの安定性と成長をさらに支えてくれています。Hexabaseのシステムは、次のような技術的な特徴を備えています。

セキュリティ

Microsoft Azureプラットフォームのセキュリティはとても優れています。ネットワークセキュリティを構築するために必要な構成は少なくなります。必要なポリシーを選択して、Azure Active Directoryでロールとグループを定義するだけで、あとはサービスが、すべての設定と定義を行います。

このおかげで、企業システムに不可欠な高度で信頼性の高いセキュリティ環境を実現できました。

NoSQL DB

私たちは、NoSQL時代にこのサービスを構築し、さまざまな役割と責任のために複数のデータベースを使用しています。

ひとつは、グローバルなスケーラブルなデータベースMongoDBです。これには、Azure Cosmos DBを利用しています。サーバーのターゲットURLを切り替えるだけで、mongoDBと切り替えることができます。また、cosmos DB mongodb APIを使用することで、サービスを素早く切り替えて、高可用性を実現できました。

キャッシュにはインメモリベースのRedis、リレーションにはArangoDB、ユーザー情報とトランザクションにはmySQLを採用しています。

Azure Function

成長する企業ではコストが問題になります。Azureの機能のおかげで、顧客向けAPIを低コスト、低メンテナンス、高性能、高可用性を実現できました。以前は、サーバーレス向けのカスタムビルドプラットフォームが必要でしたが、Azure Functionsの機能を使用すると、これらの機能を簡単に移動でき、サーバーと展開を再度開始する必要がありませんでした。機能の呼び出しごとに課金されるため、コストを大幅に削減できました。

kubernetes

Azure Kubernetes Serviceにより、kubernetesを簡単に管理できるようになりました。 CLI、Infrastructure-as-a-codeツール、はるかに使いやすいAzureポータルを使用することで、クラスターを簡単にプロビジョニングできます。自動化された監視・修復・スケーリングを使用して、インフラストラクチャのメンテナンスとアップグレードを最小限に抑えています。

私たちは、パートナーや顧客が安定した結果を得られるよう、エンタープライズ品質のAPIを開発し、一般の企業ユーザーやパートナーが利用できるようにしています。

このおかげで、システムを利用する企業は、その負荷やユーザー数の増加などを気にする必要がありません。たとえば、朝の業務開始時間や、月末などの締め切り時にシステムが遅くなる、重くなるといった弊害を避けることができます。ユーザー数も、当初は数10名から始めて、数十万人まで連続的に拡大することができるでしょう。

Hexabaseを利用することで、開発者は、信頼性・拡張性・パフォーマンス・費用対効果が高く、最上のAPIを備え、簡単に使うことのできる、今後何年にもわたって業界をリードする独自のスケーラブルな企業システムを構築できるでしょう。 それが、システム開発企業に、新たな競争力をもたらします。

最新のコラム