タグ

ブックマーク / thinkit.co.jp (41)

  • 巷で話題のDockerとは?

    Dockerが利用される背景 今、世界中の開発者やIT部門において「Docker」(ドッカー)が注目されています。もともと、DotCloud社(現 Docker Inc.)が、開発者やIT部門をターゲットとしたアプリケーションやOSの開発・配備を行うための基盤ソフトウェアとして開発され、2013年にリリースされました。このソフトウェアは、オープンソースソフトウェアの「Docker」として公開され、その使い勝手の良さから、多くの開発者、IT部門の管理者で瞬く間に利用されることになりました。Dockerは、仮想化ソフトウェアにみられるような性能面での劣化を極力排除したコンテナ技術の採用により、仮想化ソフトウェアに比べ、極めて集約度の高いITシステムを実現することができます。しかし、このDockerが注目される理由は、ハイパーバイザー型の仮想化ソフトウェアに比べてのハードウェア資源の消費や性能劣

    巷で話題のDockerとは?
  • Arduinoを用意して簡単なプログラミングをはじめよう

    前回はミニ四駆の紹介と、FULLERで作製したミニ四駆の紹介で終わりましたが、今回は実際にモノを動かしていきます。まずは、Arduinoに触れるところからはじめます。 Arduinoキットや工具を準備しよう まずは今回必要となるArduinoのキットやテスター、USBケーブルなど以下のリストの道具を揃えます。ショップに行くのが面倒という方は、リンク先(Amazon)を参照してください。 購入するものリスト Arduinoをはじめようキット MAS830L 高精度 デジタルマルチテスター Amazonベーシック USB 2.0 A-Male to B-Male Cable 1.8 m テスターはあまり必要でないと思う方がいるかもしれませんが、必ず用意してください。Arduinoを使ってデバイスを開発する時に、テスターはデバッガの役割を果たします。ソフトウェアを開発する上でデバッガが欠かせない

  • 業務ソフト開発と組み込み開発の違い

    「組み込み」という言葉は、業界用語としてはもちろんですが、一般用語としても通じるくらいに普及してきました。「組み込み」という言葉の後には、もちろん「コンピュータ」が省略されています。正しくは「組み込みコンピュータ」です。 「組み込み」もコンピュータです。このため、プログラムによって動作するという点で、パソコンやサーバー機と同じです。しかし、組み込みコンピュータは、パソコンやサーバーとは特性が異なっており、プログラムの開発には独特の難しさがあります。このため、組み込みコンピュータを対象としたソフトウエア開発者が、著しく不足しています*1。 *1: 2009年に経済産業省とIPAが発表した『2009年版組み込みソフトウエア産業実態調査報告書』によれば、組み込みソフトウエア開発の従事者は日全体で約25万8000人で、約6万9000人程度不足している。 連載では、組み込みコンピュータを取り巻く

  • 業務ソフト開発と組み込み開発の違い

  • [ThinkIT] はじめてのMySQLチューニング 第3回:max_connectionsとthread_cacheのチューニングを行う (1/3)

    前回「第2回:負荷によるベンチマークを試す」の測定結果では、測定途中でmax_connectionsに達してしまい、計画していた測定を完了することができませんでした。そこでmax_connectionsを増やして、再度測定してみましょう。 max_connectionsを増やすには2通りの手段があります。まず「/etc/my.cnf」に設定を追記する方法です。設定値は450に変更します。

  • Androidによる開発

    ライフサイクル 今回は、今までよりもより実践的なアプリケーション開発を紹介します。 実際のアプリケーションを作成する前に、まずはAndroidの特徴的な仕組みについて解説します。 Androidは画面を持つアプリケーションはアクティビティ(Activity)を持ち、フォアグラウンドのアクティビティは1つだけ存在する構造になっています。そして、フォアグラウンドのアクティビティに変化がある時にアクティビティが継承している以下のメソッドが呼ばれます。 ・onCreate(Bundle) アクティビティが最初に起動する時に呼ばれます。onSaveInstanceStateメソッドで保存された情報がある場合は、引数のBundleにその情報が渡されてきます。 ・onStart() アクティビティが表示される直前に呼び出されます。 ・onResume() アクティビティがユーザーの入力を受け付けるように

  • [ThinkIT] 第1回:開発ドキュメント体系と業務フロー (1/4)

    ソフトウェア業界の仕事は、下請け・孫請けのピラミッド構成となることが多く、常駐・派遣型のビジネスがかなりのパーセンテージを占めています。そんな中、他の業界と同じように、下請け脱却を目指して"一括請負"で仕事を引き受けたいとする会社もあります。 その志は善しとしましょう。しかし、肝心の"実力"が伴っていないと発注者も受託者もお互いに手痛い目に遭います。ここで言う"実力"とは、単なる技術力のことではありません。スケジュール管理や品質管理、コスト管理などのプロジェクト管理の技術・体制を社内で持っているかどうかが成否の鍵となるのです。 筆者の会社は創立11年目なのですが、創業以来「常駐・派遣の仕事はやらない!」という起業時のポリシーを貫いて来ました。C/SやWebのシステム開発を主体としているのですが、10年間の中では当然(?)、いくつかの失敗プロジェクトもありました。その苦い経験の中で「成功率と

  • 基本設計書

    第1回で「業務フロー」、第2回で「機能一覧表とI/O関連図」について説明しました。今回は残りのアウトプットを取り上げて、基設計フェーズのドキュメント標準を完了させることにします。「DUNGEON」の標準で定義されている基設計工程のアウトプットは、表1の通りです。

  • 人体の連続した動作を音声でキャプチャするKinectのサンプルプログラム

    今回のサンプルは、音声認識によってプレイヤーのモーションキャプチャを行います。将来的には、ゴルフのスイングのチェックや運動流体力学等に使用できる可能性がある「かも」しれません。利用方法にいろんな可能性のあるサンプルではないかな、と思っています。 各動作の画像はシステムの特別なフォルダである「マイピクチャ」内に、「KINECT_Separate」というサブフォルダを自動的に作成して、その中に保存されます。ただし保存される画像数が多くなり、ストレージの圧迫にもつながりますので、データの削除は手動で行ってください。また動作確認後はデータの削除を忘れないようにしてください。 試す場合は、Kinectセンサーから2m離れてお試しください。2m以上離れすぎるとうまく分身ができない場合もあります。その場合は、2mの位置で再度お試しください。実際の動きは図1と動画を参照してください。 サンプル一式は、会員

  • ハイパーバイザー選択の戦略

    KVMを管理するツールは、非常にたくさん存在しており、どのツールを使えば効率的に管理できるのか迷うところですが、管理ツールの詳細は、こちらのページにまとめられていますので、参考にしてください。 KVM管理ツール1:OpenQRM OpenQRMは、データセンターの業務を一つのアプリケーションで管理するというコンセプトで 設計されています。複雑なデータセンター業務を、コンポーネントごとに分けて、プラグインの組み合わせで業務ができるようになっています。 データセンター業務の中のひとつとして、仮想化という業務が存在し、さらに仮想化の中には、今回紹介するKVMの管理だけでなく、VMwareやXenなどの仮想サーバーも管理できるようになっています。他にも、DNS,Natios,nfs-storageなど、たくさんのプラグインが用意されています。 詳細は、openQRM Pluginsのページを参照し

  • OSSを活用したLinuxのデータ・バックアップ

  • [ThinkIT] 第1回:オープンソースMondo Rescueによるバックアップ手法 (1/3)

    PCの世界でバックアップというと、CD-ROMやDVD-RAM、DVD-Rへのデータ退避を想像しますが、エンタープライズシステムにおけるバックアップは非常に多種多様です。 一口に「バックアップをしたい」といっても、バックアップ装置の構成やデータの取得方法、データの種類、圧縮方法、ツール、ネットワーク経由やSAN経由でのバックアップなど様々な手段やツール、製品が存在しています。 連載では表1に示すLinuxシステムのバックアップ手法から、「オープンソースソフトウェアMondo RescueによるリカバリDVDの作成」と「NetVault for Linuxを使ったバックアップ」を取り上げ、解説していきます。 オープンソースソフトウェアMondo RescueによるリカバリDVDの作成 レスキューモードによるシステムリカバリ rsyncによるデータレプリケーション NetVault for

  • [ThinkIT] 第5回:サーバの追加とロードバランシング (2/2)

    mod_proxy_balancerを使ったリバースproxyの設定は以下のようになります。 まず、コンパイル時にmod_proxy_balancerを有効にしてください。先ほどのコンパイルオプションに、リスト3のように--enable-proxy-balancerのオプションを追加すればOKです。 リスト3:mod_proxy_balancerを有効にする $ ./configure --prefix=/usr/local/httpd_docs \ (省略) --enable-proxy-balancer (省略) <Proxy balancer://bookmark> BalancerMember http://192.168.0.10 loadfactor=10 BalancerMember http://192.168.0.11 loadfactor=10 </Proxy> Rew

  • 大量データのバッチ処理を高速化するHadoop

    Hadoopというソフトウエアが、いま注目を集めています。米Googleが発表した論文のアイディアをオープンソース・モデルで実装したソフトウエアです。膨大な量のデータを処理する必要に迫られた企業や研究組織が、続々とHadoopを実際に活用しはじめています。 私たちの研究グループでは、Wikipediaなどの巨大なテキスト・データを解析するために、2007年頃からHadoopを利用しはじめましたが、日国内でも2009年あたりからHadoopを使った事例を多く見聞きするようになりました。国内で初めてのHadoop関連イベントが2009年11月に東京で開催され、オライリー・ジャパンから2010年1月にHadoopの邦訳が出版されるなど、Hadoopが多くの開発者の注目を浴びています。 しかしながら、「Hadoopは何となくすごそうなんだけど、複雑だし、どんなソフトなのかいまいち分からないんだ

  • ESXiって何だ?

    VMware ESX ≒ VMware ESXi? もはや、x86サーバー仮想化ソフトウエアの代名詞となり、多くの番環境でも利用されるようになった「VMware ESX」(以下、ESX)ですが、その進化系とも言えるべき「VMware ESXi」(以下、ESXi)が、2008年7月より無償提供されることになりました。 現在、VMwareのWebサイトからもダウンロードできます。 連載では、この無償提供されることになったESXiに焦点を当てその特徴や利用方法を解説していきます。 まずは、ESXiの位置づけから説明します。しばしば、ESXiはフルセットのESXよりも機能が少なく、非力であるという意見を聞きます。しかし、これは大きな間違いです。 ESXiの基機能はすべてESXと同じです。肝心なハイパーバイザ部分のアーキテクチャも同じコードで構成されています。 これまでも、2005年12月に「

  • [ThinkIT] 第2回:ZABBIXエージェントのインストール (1/3)

    前回はZABBIXサーバのインストールまでの手順を紹介しました。今回は実際に監視対象となるLinuxおよびWindowsマシンへエージェントをインストールする方法について説明します。 ZABBIXエージェントはinetd/xinetdを利用する方法(zabbix_agent)と、単独のサービスとして起動させる方法(zabbix_agentd)があります。 inetd/xinetdを利用した場合、ドメイン名やIPアドレスなどに基づいた詳細なアクセス制御を行うことが可能です。しかし監視サービスという性質から、一定量のアクセスが発生し、中には応答時間に関わる監視項目も存在し得る点と、ZABBIXエージェント単体でもIPアドレスによるアクセス制御が可能であることから、今回は単独のサービスとして起動するzabbix_agentdについて説明します。 なお、ZABBIXサーバのインストールと重複する手

  • 第4回 iPadで稼働するアプリケーションへの発展 | Think IT

    iPadの登場で変わるiPhone開発 4回シリーズの一連の記事は今回が最後です。前回までにiPhoneのアプリケーションを作りましたが、今回はiPadです。 ちょうどこの原稿を書いているときに、5月28日に発売されることがアナウンスされたので、 図らずもドンピシャなタイミングでiPadの記事をお届けできます。 もっとも、多くの開発者は、すでにSDKがリリースされており、あれこれ試して見ているところかと思います。 前回までにiPhoneで作った業務システムのクライアントソフトを、iPadでも作ってみるという視点から、 新しいデバイスであるiPadの開発面を見て行くことにしましょう。 iPadも「iPhone OS」ですが、iPad発売時点では、iPhoneはVer.3.1.3、iPadはVer.3.2で利用することになっています。 つまり、Ver.3.2はiPad専用バージョンということで

  • [Think IT] 第2回:携帯サイトの制作から公開まで (1/3)

    サイト規模に合わせて作り方を選ぶ 前回(http://www.thinkit.co.jp/article/143/1/)は、携帯サイトとPCサイトがどのように違うかを紹介しました。今回は、汎用的な携帯サイト作りを行うための制作の基から、実機テストまで含めた公開までの手順を解説します。 携帯サイトでは、キャリアによる仕様の違いがあるため、これをどの程度まで考慮するか、はじめに考えなくてはなりません。携帯サイトの作成法には、下記の5つの方法がありますが、ここでは「3キャリア対応の静的サイト+プログラム」について紹介します。 1.キャリア別に静的なサイト 2.3キャリア対応の静的サイト+プログラム 3.プログラムによる動的生成 4.CMSを使ったジェネレータ型 5.MobaSiF(http://sourceforge.jp/projects/moba)などのフレームワーク型 3キャリア対応の静

  • [ThinkIT] 第3回:5分でXAMPPをWindowsにインストール (3/4)

    Apacheに引き続き、MySQLの起動を行います。Apacheの起動と同様に「MySQL」の横に表示されている「開始」ボタンをクリックします。さらにMySQLの「管理ツール」をクリックし、「WinMySQLadmin」も続けて起動します。 XAMPPがインストールされたマシンでWebブラウザを起動して、以下のURLを開きます。図8のような管理画面が表示され、MySQLが起動していることを確認できます。

  • [Think IT] 第4回:AIRでメニューウィンドウ作成! (1/3)

    さて、前回「第3回:Adobe AIRで付箋風クライアントを作ろう」では、Adobe AIRの開発環境を作り、「はろーわーるど」と表示するプログラムを構築しました。 今回はこの環境を使って、付箋紙を表示するプログラムを構築しましょう。 前回にも説明しましたが、AIRは「HTML+JavaScript」と「ActionScript 3」を用いた開発スタイルがあります。 HTML+JavaScriptは、基的にFirefoxやInternet Explorerなど多くのWebブラウザ上で実現できることは、そのまま行うことができます。そのため、Ajaxと呼ばれるJavaScriptを用いたアプリケーションは、ほぼそのまま動かすことが可能なのです。またセキュリティに関する制約は、今のところ存在していませんので、XMLHttpRequestを使ってすべてのドメインへアクセスすることもできます。 A