NTTコミュニケーションズ の技術ブログ

マイクロサービスとは?

ここ1、2年くらいで注目が集まっているのがマイクロサービスと言われるシステムアーキテクチャです。今回はそんなマイクロサービスの特徴を紹介します。 小さくシステムを定義して組み合わせる マイクロサービスはその名の通り、小さな(マイクロ)サービスに特化したアーキテクチャです。例えば認証/ユーザ管理や決済など特定の機能に特化した部分を一まとめに

マイクロサービスフレームワークまとめ

マイクロサービスとは マイクロサービスとは、単一のアプリケーションを小さなサービス群の組み合わせとして構築する手法です。それぞれのサービス同士は疎結合とし、RESTful APIなどで接続をおこないます。そのアーキテクチャを支えるため、各言語でマイクロサービスフレームワークが存在します。今回は、言語ごとに主なソフトウェアをピックアップして紹介しま

Adapt or Die その3 in サンフランシスコ

9/27@サンフランシスコにて開催されたApigee主催の ADAPT or DIE の速報レポートその3です。 午後からのセッションをご紹介します。 その他のセッションはこちら * その1 * その2 会場はサンフランシスコ Market StにあるVillageです。 午後からも引き続き各種セッションがありますが、まずはAdapt or Die Movieのご披露。 ハリウッドさながらの演出はさすが。Apigeeスタッフも出演! 20

Adapt or Die その2 in サンフランシスコ

9月27日、サンフランシスコにてAdapt or Dieが開催されました。昨年は、I Love APIで3日コースでしたが、今年は1日に圧縮で、5都市で実施とのこと。先日、Googleが買収を発表したApigee主催のイベントでいろいろ興味深いところです。こちらはそのレポートになります。その1に続いて、クラウドとマイクロサービスセッションをレポート。 Adapt or Die Microservices with Node.js and Docker:

Adapt or Die その1 in サンフランシスコ

9月27日、サンフランシスコにてAdapt or Dieが開催されました。昨年は、I Love APIで3日コースでしたが、今年は1日に圧縮で、5都市で実施とのこと。先日、Googleが買収を発表したApigee主催のイベントでいろいろ興味深いところです。こちらはそのレポートになります。 Adapt or Die Opening Keynote: 登壇者:Chet Kapoor - Apigee CEOなど 開始前の状況。こじんまりとしてますが、良い感じの

RESTful成熟度の3レベルモデルについて知る

RESTfulなAPIを作ろうと思った時の参考になるのが RESTful成熟度の3レベルモデル です。自分たちのAPIがどの立ち位置にあるのかが分かれば、どう改善することでよりRESTfulとして成熟するかが分かるようになるでしょう。 レベル0 まず最初の状態ですが、これは XML-PRC や SOAP が該当するそうです。すなわち、一つのURLと一つのHTTPメソッドで後は送信されるデータで処理内容や

JSend - JSONに緩いルールを適用して開発しやすく

JSONがAPIの基本フォーマットとも呼べる存在になって久しいですが、それによって逆にJSONが持つ緩さが問題になるケースがあるようです。そのため、多くの拡張フォーマットが作られています。 今回はその一つ、JSendを紹介します。JSONフォーマットに一定のルールをつけるだけでぐっと使いやすさが増すことでしょう。 JSendの基本フォーマット JSendのごく基本的なフォー

What is xTech?

xTech is the keyword for which we at the API team advocate. Now, we would like to present an overview of the concept. What is xTech? As of late, the buzzword "FinTech" has been making the rounds. This term was coined by combining the terms "finance" and "technology." Other well-known examples of the same type of term include AgriTech (agriculture + technology), EdTech (education + technology), and AdTech (advertising + technology). xTech is a general term for these portmanteaus of "________" + "

15 Major xTech markets

In the last article, we discussed a summary of xTech. In this time, we write about what different fields there are. Use this list to check if there is a market developing around your field. Note that these names are not definite and may vary at times. FinTech This one needs no introduction: financial services mixed with technology. This field has shown major growth over the last few years, centered around banks. In many cases, individual contracts are required for API disclosure. A new economy i

Facebookが開発しているGraphQLとは?

RESTful APIはモデルごとにパスを作成し、IDをつけてCRUDなデータの操作を行えるようにしています。これはとても分かりやすい反面、クライアント側ではレスポンス形式を指定できないという欠点があります。 場合によって欲しいデータが異なる際には ?include=friends のようなパラメータをつけたり、別なAPIを追加したりして対応します。こうした拡張はRESTful APIに比べると打

Swagger定義の記述場所について

Swagger定義の管理場所について、 コード上に定義する方法 定義ファイルを直接管理する方法 API管理サービスを利用する方法 と、それぞれまとめました。 1. コード上にコメントとして記述する JavaDocのように、コード上のコメントとしてannotationで記述していく方法です。Swaggerを利用するにあたり、真っ先に思い浮かべるお馴染みの記述方法ではありますが、やはり一長一
AWS, API

未来の教育を作るのは誰か!?Enterprise APIs Hack-Night #6「EdTech × API」レポート

8月25日、TAM CoworkingにてEnterprise APIs Hack-Night #6が開催されました。今回のテーマはEdTech×APIで、教育分野にフォーカスして3人の方に登壇いただきました。こちらはそのレポートになります。 講演1:プログラミング教育による破壊的イノベーション 登壇者:小金井市立前原小学校 校長 松田 孝様 一言に教育といっても色々と概念があります。学校教育に注目が集まりますが

Swaggerで記述する際に気をつけること

Swaggerでドキュメントを記述していて詰まるところが幾つかあります。今回はその注意点を紹介します。 リクエストパラメータは配列、レスポンスはオブジェクト 最も戸惑うのがこの点です。リクエストパラメータは次のように定義します。 "parameters": [ { "name": "serviceId", "type": "string", "in": "query", "description": "サービスID", "required": true }, { "name": "accessToken", "type": "string", "in": "

Swagger(Open API Specification)をベースにして生成されるデータ、コードについて

Swaggerフォーマット(Open API Specification)でAPIドキュメントを作成するとどんなメリットがあるのか紹介します。一つのフォーマットから多彩な展開ができるようになっていると、開発工数を低減や品質向上に大きく寄与するはずです。 ドキュメント Swaggerを使ってドキュメントを生成するのは基本と言えます。多くの方がSwaggerをAPIドキュメントのために使っているのでは

主なxTechの種類

前回はxTechについて紹介しましたが、今回は主なxTechの種類を紹介します。自分に近い市場があるか、ぜひご覧ください。 なお、各名称については確定していないところもあり、呼び方が異なる場合があります。 FinTech 言わずと知れた金融×テクノロジーです。ここ1、2年ほど銀行を中心に盛り上がってきています。APIの開示には個別の契約が必要な場合が多く、FinTech参加