StackShare delivers tech stack insights to over one million developersExplore StackShare Community
ここでのアーキテクトとは? こういうのは明確な定義はない言葉ですが、 ここでは割り切った定義をしてしまいます。 サービス開発・システム開発の現場にて、 ディベロッパーの開発や運用効率を向上、 アプリが抱える技術課題の解決のために、 実装の開発環境やフレームワークに加え、 現場適合な共通部品に実装ポリシーなど、 アーキテクチャをデザインする人のこと。 ちょっと、大それた言葉かもしれませんが、 「実装現場のデザイナー」と呼びたいなと。 ここでは、ちょっと現場寄りなアーキテクトを定義しています。 一方で先進的なアーキテクト、最先端の高レベルな技術に長け、 非常に難しい技術的課題を先進的な方法で解決する人もいます。 この場合は、アーキテクトよりギークという言葉が似合うかも。 jfluteは、残念ながら後者にはまっったく及ばないので、 今日の内容は、ちょっと現場寄りのお話になるでしょう。 「リーンス
11月28日、米ヒューレット・パッカード・エンタープライズ(HPE)が、“メモリ主導型コンピューティング(Memory-Driven Computing)”の実証実験に成功したことを発表した。HPEが2014年に発表した「The Machine」研究開発プロジェクトにとって、大きなマイルストーンとなる出来事だ。 The Machineは、コンピューティングに関する幾つかの新しいテクノロジー要素を組み合わせ、「メモリ主導型アーキテクチャ」のコンピューターを実用化することで、従来型のコンピューターでは不可能なパフォーマンスと効率性、拡張性を実現しようとしている。今回は、そのプロトタイプを使った実証実験が行われた。
ITエンジニアであれば、米Googleや米Facebookなどが採用する最新技術に日ごろから注目していることでしょう。その姿勢をさらに一歩進め、「もしこの技術を企業システムに適用したらどうなるだろうか」や、「Googleと同じ要件のシステムを、自分ならどう作るか」といったことを考える癖をぜひ身に付けたいものです。 あなたが今担当する仕事とは、かけ離れた内容かもしれません。しかし何年か後には、それが身近な課題になる可能性があります。仮に「GoogleやFacebookは特別」「企業システムには関係ない」といった姿勢でいれば、ITエンジニアは将来生き残れなくなると思います。 実際、企業の現場でもこれまでの経験や手法が通用せず、「どう作るか」を自分で考える機会は増えています。例えば、これまでとは桁違いの大容量データを扱うシステムが登場しています。 私が担当するIoT(Internet of Th
Architects look at thousands of buildings during their training, and study critiques of those buildings written by masters. In contrast, most software developers only ever get to know a handful of large programs well—usually programs they wrote themselves—and never study the great programs of history. As a result, they repeat one another's mistakes rather than building on one another's successes.
ERP(統合基幹業務システム)やミドルウエアの統合化が進んだ今ではあまり見かけなくなったが、以前は外資系ソフトウエアベンダーがよく「製品アーキテクチャー」の発表なるものをよく行っていた。そして、それを見聞きしたユーザー企業のIT部門の人は「まだ実際の製品も無いのによく言うよ」と失笑したものだった。 ある意味、失笑するのは当然。この手の発表は、最新の技術トレンドを素早く取り込んだ“フリ”をして自社の先進性をアピールする狙いや、ライバル製品の革新的な機能に追随できるのはまだ先だけど、とりあえず「それ以上の機能を提供する」と言っておこうという目的のために、製品群全体の将来の見取り図としてアーキテクチャーを公開するケースが多かったからだ。 だが、失笑してばかりいたのは大きな間違いだった。もちろん、存在しないものを在るかのように見せかける厚かましいマーケティングに関しては笑っていてよいのだが、「実際
a definition of this new architectural term The term “Microservice Architecture” has sprung up over the last few years to describe a particular way of designing software applications as suites of independently deployable services. While there is no precise definition of this architectural style, there are certain common characteristics around organization around business capability, automated depl
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに マーティンファウラーがmicroservicesの記事で、小さな役割をもったサービス群にアプリケーションを分割することを提案しています。 cookpadが、サービスをマイクロサービス群に分割していることの記事が注目を浴びており、最近急速にバズワード化しているように感じます。 バズワード化して、ポイントが損なわれる前にいくつかの注意点をまとめておきます。 1.インフラコストは基本的に増大する microservicesは、今まで単一のアプリケーションコードで行われていたことを複数のサービスサーバーに分割して管理・運営していくこと
クラウドを本格活用する時代に入り、エンタープライズアプリケーションのアーキテクチャーに変革が起きている。その一つが、スケーラブルなシステムを実現する「CQRS」(Command Query Responsibility Segregation)アーキテクチャーだ。オブジェクト指向の大家Bertrand Meyer氏やGreg Young氏によって提唱された。 一言でいうと「書き込み(Command)と読み出し(Query)の責務を分離する設計モデル」で、データ書き込みシステムとデータ読み出しシステムを別々に用意することになる。 CQRSアーキテクチャーを採用した場合、システムがデータ更新要求を受けると、その要求に応答してからデータを更新し、キューイングなどの仕組みを用いて読み出しシステムに非同期でデータを反映する。更新データを参照するには、別途読み出しシステムにアクセスする必要がある。 デ
近年、ソフトウエア関連のさまざまな国際学会が大変盛り上がっている。研究一辺倒ではなく、より実践的なソフトウエア技術について具体的な論文が多く発表されている。それらの中から、従来の考えをひっくり返すようなソフトウエア技術を二つ挙げよう。 一つは、データ指向トランザクションだ。処理要求ごとにスレッドを割り当てるのではなく、データ単位に割り当てるアーキテクチャーである。 これは、多数のクライアントから同時に大きなDBへアクセスするシーンで有用だ。典型的なデータベース管理システム(DBMS)のアーキテクチャーは、クライアントからの処理要求ごとに一つのスレッドを用意し、そのスレッドが複数のデータにアクセスして処理する。これでは、クライアント数が膨大になり、かつサーバー機のコア数が増えてくると問題が生じる。スレッド数が数千規模になったとき、CPU使用率におけるロック処理の占める割合が高くなる。「64コ
2014年になって、ITの地殻変動がどこに起こっているのか、を考えてみる。 #ラフなメモ書き。 【1】最近感じることは、Webアプリをプログラミングするアプリケーションエンジニアよりも、サーバー基盤を構築するインフラエンジニアの方が目立つというか輝いて見える時が多い。 何故なのだろう? また、先月の日経BP主催のITアーキテクト カンファレンスでは、エンタープライズシステムの構築に携わるITアーキテクトを対象にしているが、その内容はすべて、クラウドがキーワードだった。 DOAやOOAは全く含まれていない点が衝撃だった。 ITアーキテクト カンファレンス 2013 最近の流れを見ると、アーキテクチャ設計の技術では、DOAやOOAは既に古い技術であり、クラウドが席巻しているように見える。 【2】最近のバズワードである「クラウド」には、否定的な意見を持つ人も多い。 ITの歴史の延長線上にあるだけ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く