タグ

ブックマーク / gihyo.jp (45)

  • 「『nginx実践入門』出版記念!執筆者らが語る nginx Tech Talks」レポート | gihyo.jp

    「『nginx実践入門』出版記念!執筆者らが語る nginx Tech Talks」レポート 2016年2月8日、エンジニアのためのイベント&コミュニティスペース「dots.」にて、「⁠『⁠nginx実践入門』出版記念!執筆者らが語る nginx Tech Talks」が開催されました。 同イベントは『nginx実践入門』の出版を記念して開催されたもので、執筆陣による制作秘話のほか、nginxを現場で活用しているエンジニアによるさまざまな講演が行われました。以下に同イベントの模様をレポートします。講演の資料は公開されており、記事でも紹介していますので、詳しく知りたい方は参照してください。 nginx実践入門 メイキング - @cubicdaiya 久保達彦氏 発表資料 まずは、書籍の執筆者の一人である久保達彦氏(@cubicdaiya)による講演です。メルカリでプリンシパルエンジニアとし

    「『nginx実践入門』出版記念!執筆者らが語る nginx Tech Talks」レポート | gihyo.jp
  • 第45回 ubuntuBSD登場 | gihyo.jp

    ubuntuBSD登場 SourceForgeに「ubuntuBSD - The power of FreeBSD kernel with familiarity of Ubuntu OS」が登場しました。Jon Boden氏が取り組んでいるプロジェクトで、現在の構成はUbuntu 15.10 Wily WerewolfのカーネルをFreeBSD 10.1カーネルに置き換えたものが提供されています。現在配布物はベータの段階にあるとされ、amd64(x64)版のISOインストールイメージが提供されています。 インストーラはテキストベースで、インストールするとXFceで構成されたデスクトップ環境が起動してきます。ブート領域はUFSですが、それ以外の領域にはZFSを選択することができます。デスクトップ環境としても利用できますが、サーバ構成でインストールしてサーバとして活用することもできるとされて

    第45回 ubuntuBSD登場 | gihyo.jp
    takasick
    takasick 2016/03/25
  • 第3回 memcachedの消去メカニズムと今後の動向 | gihyo.jp

    memcachedはキャッシュなので、特定のデータが常にサーバに存在しないことが前提でシステムに導入されます。今回はmemcachedのデータ削除メカニズム、そしてmemcachedの最新動向であるバイナリプロトコルと外部エンジンサポートをご紹介いたします。 memcachedはデータ削除もリソースを有効活用する memcachedから実際にデータは消えない 前回の記事で紹介させていただきましたが、memcachedは確保したメモリを解放しません。レコードはtimeoutが過ぎたらクライエントから見えなくなる(invisible・透明になる)だけで、その領域は再利用される仕組みです。 Lazy Expiration memcachedは内部的にレコードがexpireしたかの監視を行いません。替わりにgetする際にレコードのtimestampを見ることで、そのレコードがexpireしたかをチ

    第3回 memcachedの消去メカニズムと今後の動向 | gihyo.jp
  • 分散Key/Valueストア、Kaiを使ってみよう! 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    分散Key/Valueストア、Kaiを使ってみよう! 記事一覧 | gihyo.jp
  • 第14回 [iPad発売記念]EPUBフォーマットの電子書籍をつくる! | gihyo.jp

    いよいよ、明日金曜日(28日)にAppleiPadが発売されます。iPad読書端末として活用したいと思っている人も多いのではないでしょうか。iBookstoreは、今のところ米国だけのサービスですが、リーダーアプリのiBooksはダウンロードできるようです。 今回は、予定していた話題を変更し、iBooksで読む電子書籍の作り方について解説します。 リフロー処理される動的な電子書籍のメリット まずは、日電子出版協会でEPUB日語拡張案の策定に関わり、EPUB仕様の日語訳を担当された@lost_and_foundさんのブログ「08th Grade Syndrome」で公開されているOPSの日語訳から、電子書籍の仕様を確認してみましょう。 1.6: アクセシビリティ 仕様には、障害によって読書が困難な人によるコンテンツの利用を確保する機能が盛り込まれている。仕様は World W

    第14回 [iPad発売記念]EPUBフォーマットの電子書籍をつくる! | gihyo.jp
    takasick
    takasick 2010/05/31
  • 第1回 NoSQL、そしてCassandraとは | gihyo.jp

    NoSQLミドルウェアの特徴をもう少し細かく挙げてみます。分量の都合もあり個別には触れませんが、それぞれのNoSQLミドルウェアで差別化部分に関してはかなり詳細に説明がされていますので、ぜひそちらを参照してみてください。 高速に動作する リレーションモデルではないデータモデル スケールアウト型アーキテクチャ コモディティサーバによって構築される スキーマフリー SPOF(単一故障点)を持たない 自動的に複数台へレプリケーションする イベンチュアルコンシステンシまたは一貫性の選択が可能 SQLのような強力なクエリ言語を持たず、シンプルな問い合わせしかできない Cassandraとは何か NoSQLミドルウェアの筆頭といえばGoogle BigTableやAmazon Dynamoですが、オープンソースの世界でもいろいろなものが出てきています。その中でも最近特に注目を集めているのが、Apach

    第1回 NoSQL、そしてCassandraとは | gihyo.jp
    takasick
    takasick 2010/05/03
  • 第1回 ウェブブラウザとJavaScriptの未来 | gihyo.jp

    こんにちは、id:os0xこと太田昌吾です。今回から、クロスブラウザ対策を中心としたJavaScriptの初級から中級の方向けの連載を開始します。JavaScriptの基礎的な文法は理解されているという前提での解説となりますので、ご了承ください(間違いやすい、わかり難いと思われるところは適宜補足します⁠)⁠。初回である今回はJavaScriptやウェブブラウザの背景など盛りだくさんの内容でお届けします。 JavaScriptのイマ JavaScriptは2010年現在において、最も重要な言語となりつつあります。旧来はすべての処理をサーバーで行って、結果をウェブブラウザ上に表示するだけというのがウェブの一般的な姿でした。2005年に登場したGoogle Mapsを一つの契機として徐々にウェブブラウザ・クライアント側での処理が見直され始め、近年ではクラウドやSaas、そしてHTML5の流行によ

    第1回 ウェブブラウザとJavaScriptの未来 | gihyo.jp
    takasick
    takasick 2010/03/28
  • 第76回 計算量の数学 計算量と実際のコード その2 | gihyo.jp

    物事はシンプルであればあるほど記憶しやすく、組み合わせて何事かを処理するのも容易になります。アルゴリズムもシンプルであればあるほど優れていると言えます。ただ、物事をシンプルにする、とひとことで言っても、いくつかの処理のステップをまとめて1つの名前を付けること、つまり、抽象化によってシンプルにした場合には注意が必要です。抽象化してシンプルになった名前の裏では、汗水たらしててんてこ舞いして働いている人がいるかもしれませんから。営業担当者が「簡単です!うちに任してください!」といって取ってきた仕事を、製造現場の労働者が泣きの涙で作って出荷している・・・という笑えない状況と、どこか似ているような似ていないような。いえ、決して営業さんは悪くないんですよ。悪くないんですけど。 図76.1 笑顔の営業、涙の現場 計算量:ハッシュサーチの場合O(1) バイナリサーチは十分高速な検索アルゴリズムです。これ以

    第76回 計算量の数学 計算量と実際のコード その2 | gihyo.jp
    takasick
    takasick 2010/02/12
  • 第7回 転置索引の構築 | gihyo.jp

    はじめに これまで、転置索引の構造や具体的なデータ構造を見てきました。今回は、検索したいテキスト文書から、どのようにこの構造を構築するかを説明していきます。 ディスクベースの構築方法 第3回では、表を作成しそれを転置させることで転置索引を構築しました。実際にコンピュータに処理をさせる場合も、メモリ上の2次元配列で同様に構築することが可能となります。しかし、通常の転置索引は非常に疎な表となるため、この方法ではメモリを使いすぎてしまいます。また、リンクリストなどのメモリ上でのデータ構造を用いることにより、上記の方法と比較して少ないメモリ量で構築することもできます。 これらの方法はいずれも、対象とする文書集合を変換した転置索引が実メモリに収まる場合にのみ可能となる方法となります。しかし多くの場合、転置索引は実メモリよりも大きくなります。そのような場合はディスクを用いた構築方法が必要となり、効率的

    第7回 転置索引の構築 | gihyo.jp
    takasick
    takasick 2010/02/12
  • GMOホスティング&セキュリティ、IaaS型パブリッククラウドサービス「True CLOUD」を提供開始 | gihyo.jp

    GMOホスティング&セキュリティ、IaaS型パブリッククラウドサービス「True CLOUD」を提供開始 GMOホスティング&セキュリティ(⁠株⁠)(⁠GMO-HS)のホスティングブランド「アイル」は、フレキシブルなリソースコントロールが可能なIaaS型パブリッククラウドサービス「True CLOUD(トゥルークラウド⁠)⁠」を2月下旬より提供開始する。 IaaS(Infrastructure as a Service)とは、サーバーやネットワークなどのインフラをインターネット上のサービスとして利用できるようにしたもの。従来のレンタルサーバーやホスティングに近い意味を持つ。 「True CLOUD」は、クラウドノード単位での自由なリソース割り当てや、アクセスのピークに合わせたリソーススケジューリング、大容量Webコンテンツの高速配信を可能にするAkamai CDN(Contents Del

    GMOホスティング&セキュリティ、IaaS型パブリッククラウドサービス「True CLOUD」を提供開始 | gihyo.jp
    takasick
    takasick 2010/02/12
  • 第4回 大規模ネットワークでRIPを使っちゃ、いけませんか? | gihyo.jp

    皆さん、こんにちは。 このコラムを読んでいただいている皆さんの中には、CCNAなどのシスコ資格取得を目指している、またはすでに取得されている方も多いと思います。そうした資格試験などに出てくる各種ルーティングプロトコルの特徴説明として、以下のような記述を目にすることが多いですよね。 「OSPFは大規模向け」 「RIPは小規模向け」 RIPが大規模ネットワークに適していない理由としては、次のような点が挙げられています。 ディスタンスベクターだから ホップ数が最大15に制限されるから ルーティングテーブル全体を30秒ごとにブロードキャストするので無駄な帯域を消費するから トポロジー変化時の収束(コンバージェンス)が遅いから 今日は、これらの点について検証してみたいと思います。 理由1:ディスタンスベクターだから これは意味不明です。 地球上で最も大きなIPネットワークはインターネットで間違いない

    第4回 大規模ネットワークでRIPを使っちゃ、いけませんか? | gihyo.jp
    takasick
    takasick 2010/02/11
  • 第2回 トラブルをやっつけろ | gihyo.jp

    前回はトラブルコールを怖れない、という内容について書いてみましたが、まあ怖れる怖れないには関係なくトラブルコールはやってくるので、今回は、いざやってきたトラブルコールをどう打ち倒そうか、ということについて書いてみます。 トラブル対応のキホンと「省略」 トラブルといっても内容は実にさまざまです。ハードウェアが壊れた、クラッキングされてる、キャパあふれ、ポカミスなどいろんなことが起こります。キャパあふれひとつとっても、アクセス過多(DoS、DDoS含む⁠)⁠、ディスク溢れ、I/O(特にディスク)逼迫などバラエティに富んでいます。 そんなトラブルへの対応は、 原因究明 対応 再発防止 という順番で行われるパターンが多いでしょう。 来これは1→2→3という順番で行われるものですが、原因究明がなかったり、再発防止がなかったりすることもまま(多々)あります。 原因究明がないケースというのは、「⁠とり

    第2回 トラブルをやっつけろ | gihyo.jp
    takasick
    takasick 2009/12/29
  • 第6回 Firebug要らずなChromeのWeb Inspector | gihyo.jp

    こんにちは、太田です。今回はChrome拡張の開発時のノウハウとして、開発ツールの解説をお送りします。Google ChromeにはWebKit由来のWeb Inspectorというデバッグツールが搭載されています。以前にも少しだけ紹介しましたが、今回は具体的な使い方まで掘り下げて解説します。なお、今回のWeb Inspectorの解説はChrome拡張だけでなく、JavaScriptを使ったウェブアプリケーションの開発に一般的に役立つノウハウとなっています。 WebKitのWeb Inspector Chrome拡張の開発の必需品であるWeb Inspectorですが、こちらは元々WebKit(Safari)で開発されたもので、Google ChromeChromium)に搭載されているものはさらに機能が追加されています。FirefoxにはFirebugという定番ツールがありますが、そ

    第6回 Firebug要らずなChromeのWeb Inspector | gihyo.jp
    takasick
    takasick 2009/12/25
  • 第4回 転置索引の詳細 | gihyo.jp

    前回は転置索引の概要を説明しました。今回は転置索引をもう少し詳しく見ていきます。 転置索引=辞書+転置リスト 転置索引は大きく分けて2つの部分から構成されています。文書に出現する単語のリストである「辞書」と、その辞書にある各単語がどの文書に出現するかを表したポスティングリストの集合の「転置リスト」からなります(図1⁠)⁠。ポスティングリストやポスティングに関しては前回簡単に説明しましたが、図を見て再度確認してください[1]⁠。 図1 転置索引の構成 辞書は単語だけでなく、その単語に対応するポスティングリストの位置情報を含んでいます。よって、辞書を探索することで、該当する単語のポスティングリストを取り出すことが可能となります。 一方、ポスティングリストは、どの文書に出現するかを表すのに最低でも文書のID(数値)が必要となります。書籍の場合は、文書はページなのでページ番号が文書IDとなります。

    第4回 転置索引の詳細 | gihyo.jp
    takasick
    takasick 2009/12/22
  • 第7回 性能改善の鍵、インデックスの特性を知る~B-treeとハッシュ (1)B-tree | gihyo.jp

    SQLアタマアカデミー 第7回性能改善の鍵、インデックスの特性を知る~B-treeとハッシュ (1)B-tree はじめに データベースを扱う仕事をしていると、パフォーマンスの問題に悩まされることは日常茶飯事です。とくに最近は、データベースに格納されるデータ量が飛躍的に増え、サーバのCPUやメモリといったハード面の増強だけでは追いつかないことも多くあります。 そのようなケースに対応するため、DBMSは性能改善のための手段を多く用意しています。その中で最もコストパフォーマンスの良い方法が、インデックス(索引)です。アプリケーションにもハード構成にも影響を与えずに実行でき、うまくいかなければすぐに削除できるという手軽さが大きな魅力で、効果はしばしば絶大です。 インデックスにはいろいろな種類があり、またDBMSによってもサポートする種類に差がありますが、稿では最も重要な2つを取り上げます。それ

    第7回 性能改善の鍵、インデックスの特性を知る~B-treeとハッシュ (1)B-tree | gihyo.jp
    takasick
    takasick 2009/12/14
  • 第10回 文字コードが引き起こす表示上の問題点[後編] | gihyo.jp

    前回は、文字コードの引き起こす問題がソフトウェアの処理上だけでなく、人間に対する視覚的な効果という点でも強く影響を与え、攻撃者にとっての強力な道具となることがある、という点について説明しました。今回も前回に引き続き、そのような文字コードが引き起こす視覚的な問題点について説明します。 拡張子の偽装 Unicodeを利用したWindowsにおける拡張子の偽装は、文字コードを利用した視覚的な攻撃の中でも特にインパクトの大きいものだと思います。 Unicodeには多数の文字に加え、さまざまな制御も収録されています。そのような制御コードのうち、U+202E「RIGHT-TO-LEFT OVERRIDE」(⁠RLO)と呼ばれる文字をファイル名に含めることで、見かけ上の拡張子を簡単に偽装することができます。 たとえば、copy-txt.exeという名前の実行可能ファイルがあったとします。 図1 copy

    第10回 文字コードが引き起こす表示上の問題点[後編] | gihyo.jp
    takasick
    takasick 2009/12/14
  • 第5回 PostgreSQL でのデータベース構築の際に必要となる物理設計のポイント | gihyo.jp

    第5回では、PostgreSQL でのデータベース構築の際に必要となる物理設計のポイントとして、データ容量の計算方法とインデックスの張り方を解説していきます。 データベース・サイジング サイジングとは、サービスの開始前に、想定される負荷や格納されるデータ量を見積り、十分な性能や規模のサーバおよびストレージを用意することです。今回は、サイジングの要素のうち、ストレージサイズの計算方法を紹介します。 データファイルの構成 PostgreSQLはデータベース・クラスタと呼ばれるディレクトリの下に、複数のディレクトリやファイルを作成します。容量の多くを占めるのはアプリケーションが使うテーブルやインデックスになるでしょうが、それ以外にも管理領域やログのためのディスク領域が必要になります。 表1 データファイルの構成と容量

    第5回 PostgreSQL でのデータベース構築の際に必要となる物理設計のポイント | gihyo.jp
  • Facebook、オープンソースのノンブロッキングなWebフレームワーク「Tornado」を公開 | gihyo.jp

    濃縮還元オレンジニュース Facebook、オープンソースのノンブロッキングなWebフレームワーク「Tornado」を公開 2009年9月11日、SNSサービスを運営するFacebookは、Pythonで書かれたWebフレームワーク「Tornado」をオープンソースで公開しました。Tornadoは、Facebookによって買収されたフィードアグリゲーションサービスFriendFeedにて使われているWebフレームワークをベースに、依存関係を減らすようリファクタリングしたものです。 Tornadoの大きな特徴として、FriendFeedのようなリアルタイム性、大量接続の要件に応えるべく、ノンブロッキングI/O、epollを用いたアプリケーションを作成できます。ほかにもGoogle App Engine対応、サードパーティ認証、CSRF(Cross-Site Request Forgeries

    Facebook、オープンソースのノンブロッキングなWebフレームワーク「Tornado」を公開 | gihyo.jp
  • MySpace、MapReduceフレームワーク「MySpace Qizmt」をオープンソースで公開 | gihyo.jp

    濃縮還元オレンジニュース MySpace、MapReduceフレームワーク「MySpace Qizmt」をオープンソースで公開 2009年9月16日、MySpaceは.NETプラットフォーム上で動作する分散処理フレームワーク「MySpace Qizmt」をGoogle Code上に公開しました。 MySpace Qizmtの分散処理部分はGoogleMapReduceに基づいて設計されています。オープンソースのMapReduce実装としてはJavaで書かれた「Hadoop」が有名ですが、MySpace QizmtはC#で書かれており、WIndowsサーバ上で稼働することが特徴的です。MySpace自体が数千台のWindows 2003サーバ上で動いていることから、このようなフレームワークが.NETで作られていることもうなずけます。ジョブを記述するにあたってデバッガが付いた専用のエディタも

    MySpace、MapReduceフレームワーク「MySpace Qizmt」をオープンソースで公開 | gihyo.jp
  • 第23回 Rackとは何か(1)Rackの生まれた背景 | gihyo.jp

    はじめに SinatraやRamazeといったRubyのWebアプケーションフレームワークに興味をお持ちの方であれば、Rackという名前をしばしば目にしているかもしれません。どうやら様々なフレームワークに使われているらしいのだけど、そいつが一体なんなのかよくわからない、そんなあなたのために今日はそのRackをご紹介したいと思います。 様々なフレームワーク、様々なアプリケーションサーバ しばらく前なら、Ruby on Railsブームの真っ只中、Rubyと言えばRails、Webアプリケーションを作るならRails、といったイメージを持たれていた方も多かったと思います。実際にWebアプリケーションを作ったり、Rubyに触れたりしたきっかけがRailsだったという方も多いでしょう。 しかし最近は、RubyのWebアプケーションフレームワークと一口に言っても、非常に簡単にアプリケーションが書けて

    第23回 Rackとは何か(1)Rackの生まれた背景 | gihyo.jp