Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。この本では、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...
![Java 8を可能にしたJava 7の機能](https://cdn-ak-scissors.b.st-hatena.com/image/square/d628c27f3162af207ddc4958b4e439fe2708b1a1/height=288;version=1;width=512/https%3A%2F%2Fres.infoq.com%2Farticles%2FJava-7-Features-Which-Enable-Java-8%2Fja%2Fsmallimage%2FlogoJava.jpg)
新しいJEPには、より明確な曖昧さ回避、未使用パラメータのアンダースコアの使用、外部変数のシャドウイングなど、ラムダ機能を強化するための変更提案が提出されている。これらの変更によって、Javaのラムダが他の言語のラムダに近づくことになるが、最初の議論では支持するレベルも様々であった。このJEPは、Java言語を改善するための、他の一連の提案を補完しており、ローカル変数型の推論と拡張された列挙型を含む。これらは全てJava 10に含まれる可能性がある。 3つの変更はすべてラムダに関連しているが、それらは独立しており、フィードバックに応じて、一部が不採用となり、他のものが採用される可能性がある。そのため、この記事では個別に説明する。 より明確な曖昧性回避 ラムダがバージョン8でJavaに追加されたとき、それらをサポートするために型推論を修正しなければならなかった。しかし、過去に行われた変更は、
Armon Dadgar氏がQCon New Yorkで,最新の生産システムにおけるセキュリティ要件をテーマとした,情報豊富なプレゼンテーションを行った。InfoQはプレゼンテーション後のDadgar氏に面会する機会を得て,大規模システムでシークレット(secret, 秘匿情報)を管理するためのオープンソースツールである,HashiCorpのVaultに関して聞くことにした。 HashiCorpは今年4月,最新方式のデータセンタ内のシークレットを安全に管理し,転送されるデータを暗号化する,オープンソースツールのVaultをリリースすると発表した。同社のブログによると,最新の運用システムにおいては,シークレット管理に複雑な要件を伴うことが少なくない。データベースの資格情報や外部サービス用のAPIキー,通信認証などといったシークレットは,アプリケーションのさまざまなスタックに存在する。静的な機
最初のベータ版に続いて,HashiCorpは,Atlasを一般向けにリリースした。インフラストラクチャのためのバージョン管理システム構築を目的に,同社の開発運用向けオープンソースツールを統合した商用プラットフォーム製品だ。Vagrant, Packer, Terraform, Consulといったツールを統合したAtlasの主な目的は,現代的なデータセンタ全体にわたる‘インフラストラクチャ変更の自動化,監査,コラボレーション’の促進にある。 同社のブログには,運用とインフラストラクチャを管理する目標として,‘自動化され,エラーフリーで,監査可能なプロセス’による,アプリケーションのデプロイとメンテナンスの実施があげられている。しかし現実には,時間を浪費し,エラーを起こしやすく,スケールアップの難しい,複雑な手作業のプロセスが用いられていることが少なくない。Atlasは,統合されたツーリング
原文(投稿日:2013/05/20)へのリンク Web 2.0とモバイルクライアントの目覚ましい成長が,アプリケーションアーキテクチャに関する私たちの考え方を変えつつある。Node.jsは,サーバ側のソフトウェアに非ブロック/非同期のランタイム環境を構築することでこの課題に取り組もうと試みた,最初のテクノロジのひとつだ。そして昨年,同様のランタイムをJava仮想マシン上に実現するvert.xが登場した。Node.jsとは対照的にvert.xは,本来の意味での多言語(polyglot)アプローチを踏襲している。JavaScript,Groovy,Javaその他の言語を使ったシステムの構築や,ひとつのアプリケーション内での混在が可能だ。 InfoQはEberhard Wolff氏にコンタクトを取り,これら2つのテクノロジの間にある違い,それぞれをベースとした場合の開発アーキテクチャから生じる課
5月に開催されたBacon Conferenceで,bitlyのアプリケーション開発リーダのSean O’Connor氏は,毎月600億クリックを処理する分散システムの開発を通じてbitlyの開発者たちが学んだ,最も価値ある教訓について説明した。 分散システムとは何か? 分散システムを定義する3大特性は,氏によれば,Wikipediaで簡単に見付けることができる。 コンポーネントノードの真の並行性。これによってノード間の同調に関連するコストと複雑性が発生する。 共通クロックの不在。このため,異なるノードで発生したイベントを時間順に並べることは不可能になる。 障害の独立性。これはノード障害がシステム内の他のノードに影響を与えない,という能力として理解されるべきだ。 従って分散システムの構築では,これらの特性を扱うことを目標にする必要がある。 ただし氏の意見として,システムの分散的特性に起因す
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く