タグ

ブックマーク / codezine.jp (34)

  • 伊藤直也氏が語る、分散アプリケーションアーキテクチャの現在 ~Reactive SystemとMicroservices【デブサミ秋2015 基調講演レポート】

    ストリームデータを即時にWebに反映する「リアルタイムWeb」は、TwitterやFacebookなどが普及したことでそう目新しい技術ではなくなった。しかしその実装は、まだまだ力業でなされていることが課題だ。「Developers Summit 2015 Autumn」のKaizen Platform 伊藤直也氏によるセッションでは、リアリタイムWebを実現する分散アプリケーションアーキテクチャの昨今について、「Reactive System」と「Microservices」という2つのキーワードから読み解かれた。 Kaizen Platform 技術顧問 伊藤直也氏 講演資料「分散アプリケーションアーキテクチャ 2015」 ストリーム処理は現状、まだまだ力業で乗り切っている まず、かつては大量トラフィックとデータを、どのように処理していただろうか。LAMP環境を作り、RDBにデータを溜め

    伊藤直也氏が語る、分散アプリケーションアーキテクチャの現在 ~Reactive SystemとMicroservices【デブサミ秋2015 基調講演レポート】
  • LDAPとJNDIでシングルサインオン可能なWebを作る

    はじめに 企業内などで複数のシステムが開発されると、ユーザーはシステムごとにユーザーID・パスワードを使い分けるなどの不便さを強いられることがしばしばあります。このようなわずらわしさを解消するために、シングルサインオンという仕組みへの取り組みが企業などではじまっています。シングルサインオンとは、ユーザが一度認証を受けるだけで、許可されているすべての機能を利用できるようになるシステムのことをいいます。このシングルサインオンにより、安全な認証機能の実現、システム管理者やアプリケーション開発者の負担軽減などの効果も期待できます。 シングルサインオンを実現する際は、ユーザー認証情報を「ディレクトリサービス」という仕組みで統合的に管理するという手法が一般的に採用されます。「ディレクトリサービス」とは、ユーザー情報などのネットワーク上の資源と、その属性とを保存し、検索できるようにしたシステムのことです

    LDAPとJNDIでシングルサインオン可能なWebを作る
  • Java特有の冗長なコードを簡潔に記述する「Lombok」

    Javaは言語仕様上の制約により、ボイラープレートコード(自明だが省略できないお決まりのコード断片)がいくつかあります。例えば、メンバ変数を読み書きするだけのgetterメソッドやsetterメソッドがこれにあたります。Lombokを使えば、これらJava特有の冗長なコードを、見やすく簡潔なものにすることができます。記事ではLombokを利用して、ボイラープレートコードをシンプルに記述する方法について解説します。 はじめに 今やJava開発に必要不可欠となったものの一つに、IDEの存在があります。例えばEclipseではメンバ変数さえ定義すれば、getter/setterの自動生成や、equalsメソッドやhashCodeメソッド、toStringメソッドなどの自動生成などさまざまな場面でコーディングを強力にサポートしてくれます。 これは大変便利な機能ですが、裏を返せばJavaの言語仕様

    Java特有の冗長なコードを簡潔に記述する「Lombok」
  • JavaScriptの関数とメソッド

    はじめに JavaScriptはオブジェクト指向言語です。しかし利便性のために、C言語などと同じようにグローバルな関数を定義し、構造化的な手法でプログラミングすることも可能です。 この記事では、JavaScriptにおける関数の基的な性質を見ていくと共に、関数の正体、および関数の使用方法について解説していきたいと思います。 なお、この記事はJavaScriptの解説ですが、その内容は、標準仕様のECMAScriptで扱われる範囲に基づいています。従って、同じくECMAScriptを元にしている言語(JScript、ActionScript)でも通じる内容になっています。 対象読者 プログラミングの基的な知識、ならびにオブジェクトやメソッドと言った基礎的な概念については、ここでは解説しません。最低限、オブジェクト指向プログラミングについて理解をしている人を対象としています。 この記事は、

    JavaScriptの関数とメソッド
  • 『システムテスト自動化 標準ガイド』の第5章 ~ テストウェアアーキテクチャって何かカッコいいね!

    テストウェアアーキテクチャって何でしょうか? ギアでは、システムテストの自動化についての数々のノウハウが説明されています。このノウハウに共通する重要なことは、自動化されたシステムテストが繰り返し実行されるということです。つまり、機能拡張のためのバージョンアップや、バグフィックスによるマイナーリリースを常に繰り返すようなシステムをテストの対象としています。そして、システムテストが繰り返し実施されるシステムにおいて、自動化テストのための様々な資産をどう管理するかを考えることが、テストウェアアーキテクチャを考えるということになります。 テストウェアアーキテクチャという言葉を見て想像するのは、「テストに関連する何か(テストウェア)についての構造や考え方、方針(アーキテクチャ)を示すものではないか」ということでしょう。では、肝心の「テストウェア」とは何でしょうか? テストウェアには、図1のように自

    『システムテスト自動化 標準ガイド』の第5章 ~ テストウェアアーキテクチャって何かカッコいいね!
  • リリースフローを自動化するためのJenkinsの導入/設定手順

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    リリースフローを自動化するためのJenkinsの導入/設定手順
  • ECサイトをバースト負荷から救え! NoSQLの導入を検討すべきケースと製品選びの基準:CodeZine(コードジン)

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    ECサイトをバースト負荷から救え! NoSQLの導入を検討すべきケースと製品選びの基準:CodeZine(コードジン)
  • 実用段階に入ったNoSQLをおさらい 「Cassandra」の概要と導入手順・基本設定

    ビックデータとは はじめに、Cassandraが得意としているビックデータについて解説します。ビックデータという言葉が一般的に使われていますが、実際のところ何を指すのか、これまでとの違いは何かを説明します。 何に使われているのか 「ビックデータ」とは、通常の処理では処理不可能な膨大な蓄積データを指す言葉です。これまでは、処理することをあきらめていた膨大なデータを処理対象とすることで、新しい答えを見出すことを目指しています。しかも短時間で処理することで、タイムリーな活用を目指すのです。 これまでは、ばらばらに発生していたデータが、通信環境の発達でリアルタイムに収集することが可能になりました。個々のデータは小さくても、大量に集まれば膨大なデータです。せっかく集めた膨大データを活用するために時間が掛っては何もなりません。大量に集めたデータを短時間に効率よく処理して、処理結果を得られる必要がありま

    実用段階に入ったNoSQLをおさらい 「Cassandra」の概要と導入手順・基本設定
  • 『システムテスト自動化 標準ガイド』の第2章 ~ 原書の刊行当時から変わったこと/変わらないことと補完すべきこと

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    『システムテスト自動化 標準ガイド』の第2章 ~ 原書の刊行当時から変わったこと/変わらないことと補完すべきこと
  • 「画素と解像度」 ~マンガでプログラミング用語解説

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    「画素と解像度」 ~マンガでプログラミング用語解説
  • Amazon Web Servicesのロードバランサで負荷分散するWebサーバを構築しよう

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    Amazon Web Servicesのロードバランサで負荷分散するWebサーバを構築しよう
  • Amazon Web ServicesでサーバサイドJavaの実行環境を構築しよう

    はじめに 前回は、AWSの提供する仮想サーバサービスであるEC2を使ってWebサーバを構築する手順をご紹介しました。今回は、AWSでWebアプリケーションサーバとデータベースサーバを構築し、サーバサイドJavaのプログラムを動かすためのインフラ構築手順を説明します。 対象読者 記事は、次の方を対象にしています。 クラウドシステムがはじめての人 JavaによるWebシステムのプログラミングを行ったことがある人 システム基盤について勉強したいと思っている人 データベース連携するWebアプリケーションの構成 AWSのサービスを使って、データベース連携するサーバサイドJavaのWebアプリケーションを実行する環境は、いくつか考えられます。AWSでは前回ご紹介した仮想サーバサービスのほかに、リレーショナルデータベースの機能を提供する「RDS」や、PaaSサービスである「Elastic Beanst

    Amazon Web ServicesでサーバサイドJavaの実行環境を構築しよう
  • 私がScalaを選んだ理由

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    私がScalaを選んだ理由
    WhatAmILookingFor
    WhatAmILookingFor 2015/04/17
    "JavaがSmalltalkの後に出てきて、それを仕事にしたとき「退化した」と思った"
  • USP MAGAZINEコラボレーション連載/「シェル芸」に効く AWK処方箋一覧

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    USP MAGAZINEコラボレーション連載/「シェル芸」に効く AWK処方箋一覧
  • 簡単で、奥深くて、超便利! LLの元祖「AWK」にさわってみよう

    編注1:「シェル芸」とは、UNIXシェル(主にbash)のワンライナーを駆使して文字列加工を自由自在に操ることです。また、そのような能力をもつ人をシェル芸人と呼びます。 パターンとアクション AWKはパターンとアクションを組み合わせるプログラム言語です。日語で「もし○○だったら、○○をする」という文章のうち、「もし○○だったら」という部分がパターンであり、「○○する」という部分がアクションです注1。このようにパターンとアクションで構成されるAWKの基文法は直感的であるため、様々な機会で用いられます。これをAWKスクリプトで記述すると以下のようになります。 さて、「パターン」という名前から「正規表現にマッチする」ようなイメージを持たれるかもしれませんが、AWKのパターンは「条件式」そのものであり、その条件式の戻り値による「真偽」にしたがいアクションが実行されます。今回はこのパターンの真偽

    簡単で、奥深くて、超便利! LLの元祖「AWK」にさわってみよう
  • さよなら手作業・人海戦術! HTML5時代のツール「Selenium2」でWebシステムのテストを自動化

    シリーズは、WebブラウザをUIとして利用した業務システムやアプリケーション(以下、Webシステム、Webアプリケーション)のテストをテーマとして、Webブラウザを使ったテストを自動化するOSSのツール「Selenium2」を紹介します。業務システム開発の現場で適用してきたノウハウを元に、これまでSelenium2について知らなかった人から以前使った経験がある人まで、より実践的な「使える」内容を盛り込んでいきたいと思います。 シリーズのスコープと対象読者 シリーズはWebシステム・Webアプリケーションのテストの中でも「Webブラウザを操作して実施するテスト」をスコープにしています。開発工程としては、1モジュールとして単体テストに位置付けられる場合もあれば、複数のモジュールやシステムと連携して結合テストや総合テストに位置付けられる場合もあるでしょう。これらのテストのことを、シリーズ

  • JetBrains、PHP統合開発環境「PhpStorm 7」をリリース

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    JetBrains、PHP統合開発環境「PhpStorm 7」をリリース
  • Perlコミュニティ活動で宮川達彦氏が日本人で初めて「白駱駝賞」受賞

    米国ポートランド(オレゴン州)で開催されているオープンソースの総合カンファレンス「OSCON 2008」(Open Source Convention、米オライリー主催)で、日Perlコミュニティを牽引する宮川達彦氏(シックスアパート株式会社技術担当執行役員)が、Perlコミュニティの貢献者に与えられる「白駱駝賞(The White Camel Awards)」を受賞した。同賞を日人が受賞するのは初めて。 オープンソースのプログラミング言語であるPerlは、多くのボランティアの努力によって支えられている。白駱駝賞(The White Camel Awards)は、そうしたコミュニティ活動における貢献者を称えるため、1999年のPerlカンファレンスではじまった。現在ではPerlファウンデーションが毎年OSCONで発表する形となっており、昨年はティム・オライリー(Tim O'Reill

    Perlコミュニティ活動で宮川達彦氏が日本人で初めて「白駱駝賞」受賞
  • CodeZine(コードジン)

    topコマンドは、CPUをたくさん使っている順に、システムのプロセスを一定間隔で表示します。またプロセスを操作するための対話的なインターフェースがあり、結果を、CPUの使用度、メモリの使用量、実行時間などでソートしたりすることができます。 topコマンドは、デフォルトの設定を「/etc/toprc」と「~/.toprc」の2つのファイルから読み込みます。 また、Solarisではtopコマンドが標準で入っていませんので、prstatコマンドを使用します。 ① d delay 画面を更新する間隔(秒)を「delay」に指定します。実行後は、対話コマンド「s」で変更することができます。デフォルトの更新間隔は5秒です。② p pid 「pid」に指定したプロセスIDのプロセスのみを監視します。このフラグは20回まで指定することができます。③ q遅延時間なしで更新を続けます。スーパーユーザ特権を持

    CodeZine(コードジン)
  • Mozilla、ブラウザベースの認証システム「Persona」ベータ2を公開

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    Mozilla、ブラウザベースの認証システム「Persona」ベータ2を公開