InfoQ ホームページ Architecture に関するすべてのコンテンツ
-
”Fastify” Node.js用Webフレームワーク - 共同開発者Matteo Collina氏へのインタビュー
Fasttifyは、Node.jsのエコシステムにおける多くのニーズを満たす、パフォーマンスオーバーヘッドの小さな、オープンソースのWebフレームワークです。Fastifyでは、強固なオープンソースプロジェクトとコミュニティを構築するための原動力として、開発者エクスペリエンスに重きを置いています。FastifyプロジェクトはOpenJS Foundationの一部です。
-
Project Helidon入門 - Oracleの軽量フレームワークによるマイクロサービス開発
Oracleは2018年9月、オープンソースのフレームワークProject Helidonを新たに公開しました。元々はJava for Cloudという名称であったHelidonは、マイクロサービスベースのアプリケーションを開発するためのJavaライブラリのコレクションです。公開から6ヶ月内の2019年2月には、Helidon 1.0がリリースされています。現在の安定版リリースはHelidon 1.4.4ですが、Oracleは現在、Helidon 2.0のリリースに向けて順調に開発を進めています。
-
Azure + Spring Boot = サーバレス - Julien Dubois氏とのQ&A
Microsoftは、同社のJaクラウドとJavaエコシステムへの注目がニューノーマルであることを、繰り返し証明しているようです。JavaがAzure Functionsのサポート言語になってかなり経ちますが、Julien Dubois氏はSpring BootをAzureで試して、この組み合わせがAzureのサーバレスコンピューティングに持つ意味について確認しました。InfoQでは、この話題に関する氏の経験について、詳しく聞きました。
-
gRPC、Ballerina、Go言語を使用したマイクロサービス開発の実例
gRPCは比較的新しいRPC(Remote Procedure Call)パラダイムの実装で、内部マイクロサービス間の同期通信において大きな役割を果たしています。 今回はgRPCの主要なコンセプトと利用方法、サービス間通信としてgRPCを利用することのメリットを、実際のマイクロサービスのユースケースを使って検討します。
-
マイクロサービス設計原則: SOLIDではなくIDEALS
オブジェクト指向設計では、SOLIDの原則に従います。マイクロサービスの設計については、開発者がIDEALSに従うことを提案します。インターフェイス分離、デプロイ容易性(チームの意思による)、イベント駆動、整合性よりも可用性、疎結合、単一責任です。
-
DDDアプローチを用いたビジネスルールの検証
ソフトウェアアプリケーション開発の目標が、その分野の専門家の振る舞いをエミュレートすることであるならば、ビジネスルールを捕捉し、実装することが課題となります。これは単にコーディング能力よりも、優れた知識管理に関わるものです。ドメイン駆動設計のテクニックに従うことで、ビジネスルールを効果的に検証、実行する構造の実現が可能になります。
-
APIゲートウェイの過去、現在、そして未来
エッジは単純なハードウェアロードバランサとして始まり、APIゲートウェイやコンテンツ配信ネットワーク、ロードバランサを構成する、ハードウェアとソフトウェアプロキシのフルスタックへと進化しました。今回の記事では、アプリケーションアーキテクチャとワークフローの進化をもとに、データセンタエッジの進化の軌跡を追ってみたいと思います。
-
ソフトウェアアーキテクチャと設計 - InfoQトレンドレポート、2020年4月
InfoQのエディタたちが、2020年のソフトウェアのアーキテクチャと設計の分野におけるトピックをどう見たのか、基本的なアーキテクチャパターン、フレームワークの利用、設計スキルを中心に、その概要をお伝えします。
-
マルチランタイム・マイクロサービスアーキテクチャ
”マイクロサービス”アーキテクチャと”12-factorアプリ”設計に関するベストプラクティスが現れました。クラウド、コンテナ、コンテナオーケストレータ(Kubernetesなど)の普及により、共通的な統合原則に対処する新たなソリューションが現れたのです。この記事では、”メカ”コンポーネントを使用してマイクロサービス用のエンタープライズ統合パターンを提供するアプローチについて論じます。
-
サービスメッシュ必読ガイド - マイクロサービス時代のサービス間通信管理
このオンラインガイドは、ソフトウェアアーキテクトや技術リーダが当然持つであろう、"サービスメッシュとは何か?"、"サービスメッシュは必要か?"、"さまざまなサービスメッシュのプロダクトをどのように評価すればよいのか?"、といった疑問に答えるためのものです。ソフトウェアアーキテクチャにおけるサービスメッシュは、マイクロサービス間通信の促進を目的とした特別なインフラストラクチャレイヤで、一般的にはサイドカープロキシとして実装されます。
-
サーバーレス時代のKubernetesワークロード:アーキテクチャ、プラットフォーム、トレンド
マイクロサービスアーキテクチャがクラウドネイティブアーキテクチャにどのように進化したかを調べましょう。Kubernetesや、サービスメッシュ、サーバーレスフレームワークで提供される抽象化と組み合わせによって多くのインフラストラクチャの問題が生まれました。さらに、サーバーレスエコシステムは、標準およびオープンパッケージ、ランタイム、イベントフォーマットを探求することで進化しています。
-
Java InfoQトレンドレポート - 2019年7月
InfoQ Javaトレンドレポートは、テクノロジーの採用の概要と、2019年のJavaおよびJVM関連の領域の進化についてのコメントを提供します。主な進展として、Java 13のリリース、非HotSpot JVMの台頭、GraalVMの進化、およびJavaマイクロサービスフレームワークの景色の変化があります。