InfoQ ホームページ アーティクル
-
Apache Kafkaを使ったQuarkusリアクティブメッセージング入門
今日のデータの処理/消費方法は、これまでの方法とは異なります。以前は、データはデータベースに保存され、分析のためにバッチ処理されていました。Apache Kafkaは、データストリームをリアルタイムで保存、消費、処理するための分散イベントストアおよびストリーム処理プラットフォームです。この記事では、Apache KafkaとQuarkusを使用してデータを生成と消費する方法を学習します。
-
ネイティブJavaの実情
KubernetesのマイクロサービスはネイティブJavaスイートスポットです。最も重要なフレームワークを備えており、Javaランタイムオーバーヘッドが最小限となります。ネイティブJavaでは、ビルド、デバッグ、テスト、デプロイ、プロファイルをするためにに多くの労力がかかります。アプリケーションフレームワークは、本番環境でネイティブJavaを完全にサポートする必要があります。ネイティブJavaの採用は段階的に行うことができます。ただし、ネイティブJavaアプリケーションは、すべてのライブラリがネイティブJavaをサポートしている場合にのみ機能します。
-
QuarkusによるKubernetes Native Java
Quarkusは、ネイティブとJVMベースの両方のJavaアプリケーションにおける起動時間とメモリ使用率に関して、業界のリーダーです。これにより、クラウドのコストが削減されます。Kubernetesは、Quarkusにとって第一級のデプロイプラットフォームであり、そのプリミティブと機能をサポートします。開発者は、Jakarta EE、MicroProfile、SpringなどのAPIに関するJavaの知識を使うことができます。アプリケーションは、命令型あるいはリアクティブ、あるいはその両方にとることができます。
-
Records in C# 9
この記事では、C# 9で導入された新しい参照型、レコードについて、 Tugce Özdeger氏が話します。レコードは、データをカプセル化するためのビルトイン機能を提供します。この記事は、レコードを使う潜在的な利点と、開発者がアプリケーションでどのようにレコードを使えるのかをコードの例、および、classとstructの比較と共に示します。
-
Javaに革命を起こすGraalVM Native Image
GraalVM Native Imageは、ネイティブなJava実行ファイルを生成するAOT(ahead-of-time)コンパイラです。生成される実行ファイルは非常に速く起動し、CPUやメモリの使用量が少なくなることで、クラウドにおけるJavaの実行コストを低減すると同時に、JVMに比肩するピークスループットをも実現しています。Spring Boot、Micronaut、Quarkus、Gluonなど数多くのJavaフレームワークが、すでにGraalVMをサポートしています。
-
ソフトウェアアーキテクチャ・設計のInfoQトレンドレポート — 2022年4月
InfoQ編集チームが2022年に進化するソフトウェアアーキテクチャと設計のトピックをどのように見ているかの概要です。アーキテクトが今、何を設計しているかに焦点を当てています。
-
フルスタック開発者のためのBallerina: バックエンドAPI開発ガイド
この記事では、REST API開発のためのプログラミング言語"Ballerina"の直感的な構文について解説します。さらに、認証や承認、OpenAPIツール、可観測性、SQL/NoSQLクライアントライブラリなど、重要な言語機能についても論じます。記事を読み終えれば、Ballerinaが次のバックエンドAPI開発の有力な候補である理由がよく理解できるでしょう。
-
Dockerのセキュリティは十分ですか?セキュアなコンテナイメージとランタイムを構成するためのアドバイス
自身のユースケースに合わせてセキュリティアプローチを詳細に調整することで、Dockerの十分な安全性を確保することが可能になります。DockerイメージとDockerランタイムの違いに加えて、それぞれのセキュリティの意味や優先順位について理解しておくことが重要です。今回の記事では、Dockerで適切なセキュリティを実現するためのさまざまなテクニックを紹介します。
-
マイクロサービスに失敗する7つの方法
昨年11月のQCon Plus、私は、マイクロサービスがうまくいかない理由について講演しました。私はIBMに籍を置くコンサルタントで、ビジネスのクラウドネイティブ化を支援する仕事もしています。取り上げた問題は私の経験に基づくものであると同時に、残念なことに、現場で何度も目にするものでもあります。
-
マイクロサービスアーキテクチャの技術的負債の管理
QCon Plus で、Glenn Engstrand 氏は、Optum Digital のエンジニアリングが、何百ものマイクロサービスの技術的負債を確実かつ予測どおりに返済し、関連するコミュニティを形成し、リスクの高い領域を特定する方法を考案した方法について説明しました。コミュニティの集合的な決定は、実用的なロードマップにまとめられ、体系的かつ非対立的な方法で製品マネージャに提示されます。
-
.NET 6によるHTTP Client SDKの作成と利用
この記事では、.NET 6でHTTP Client SDKを開発するまでのプロセスを説明します。現実のシナリオに合わせたさまざまなアプローチを紹介した上で、.NET 6を使って独自のSDKを開発する方法について、ステップバイステップで解説しています。
-
データベースシャーディングアーキテクチャの新たな進化
今回の記事では、筆者のJuan Pan氏が、分散データベースシステムにおけるシャーディングアーキテクチャのパターンについて論じます。記事の中で氏は、Apache ShardingSphereプロジェクトがデータシャーディングの課題にいかに対処しているかを説明した上で、DistSQLを使って分散データベースと暗号化テーブルを生成する方法の実例2つを論じています。