えいのうにっき

a-knowの日記です

昨日・今日の2日間の日程で行われたプレゼンテーション研修が終了。最後には実演もあったのだけれど、個人的には、研修の内容を踏まえ、上々のプレゼンテーションができたのではないかと思ってたりする。

**今日のWeb -モチベーションの源泉:何のために働くのか、転職か起業か - Social Change!  --“会社における評価の仕組みとビジネスモデルは強い関連性があります。もし技術者のままで評価される側に居続けるなら、既存の評価の仕組みを変えることはできないということに気付かないといけません。既存の組織にいながらにして、その組織を変えていきたいと思うならば、まず技術者であることを捨てて何にでもなるという覚悟が必要でしょう。組織を変える一番の難しさは、偉くならないと組織は変えられないけど、偉くなるためには自分自身を変えないといけない、そうするうちに組織に染まって変えられなくなる、ということに尽きるでしょう。”

**WEB+DB PRESS(vol.63)読んでる -実録・pixivが明かす 段階的サービス拡張 --第1章・pixivの誕生(上谷隆宏 氏) ---pixivとは ----“今でこそ大きなサービスですが、リリース当初は1台のサーバからはじめ、” ---pixivの開発に至った経緯 ----“未経験だということも言いわけにせずに、PHPMySQLを猛勉強しました。” ----“イラストが好きだからこそのサービスを思いつく” ----“開発で重視したのは、どのWeb頁からでも作品にアクセスできるようにした点と、作品を軸にコミュニケーションが発生するサービスにした点です。” ----“サービスの説明やヘルプ、利用規約などのテキストもすべてそろった状態でのリリースを目指しました。” -----“ユーザからの信頼に直接つながる大事な部分だと考えています。” ----“フルスクラッチで2ヶ月かけて、pixivの最初のバージョンを1人で開発しました。” ---リリース ----“「本気でやるならちゃんと宣伝したり、プレスリリースを打ったほうがよい」” ---個人運営から組織での運営へ ----“「pixivがなければ生まれなかった作品が生まれている」” ----“自分の性格はどう考えても会社経営に向いておらず、それに会社を立ち上げる時間があるなら機能を追加したり、プログラムを改善して、もっとサービスを良くしたいと考えていました。” --第2章・サービスの成長に伴う負荷との闘い(青木俊介 氏) ---サービスイン当初 ----“pixivはサービスイン当初、さくらインターネットの専用サーバ1台、しかも他サービスとの共用ですべての機能を動かしていました。” ----“インフラ担当者はとっさの判断で、ApacheMySQLのパラメータをチューニングすることで、なんとかプレスリリース当日を乗り切ることができました。” ---DBサーバを増設 ----“MySQLのプロセスを見ると、SELECT文が応答を返さないまま、終了せずにいくつも残ってしまうという状態でした。” ----“スケールアウトの第一歩としてアプリケーションサーバとデータベースサーバを分け、DBサーバを新規に投入することにしました。” ---自作サーバで行こう ----“サーバを多く持っている知人の会社で運用までお願いする、という選択肢も浮上しましたが、アプリケーションとの切り分けができていない現状では難しそうです。” ----“それまでの社内の運用経験では、メーカー製のサーバマシンでハードウェア障害が繰り返し発生していました。” -----“サーバマシンとはいえ、一概に信頼性が高いとは言えない、というのがインフラ担当者の感覚にありました。” ----“自作サーバでの運用を開始して3年以上経過し、現在では200台以上ありますが、ハードウェア障害は年に数回しか発生していません。” ---スケールアウトの実現 ----“マスタサーバ上では更新系の処理のみを行い、参照系の処理をレプリケーション先のスレーブサーバで実行するようにすれば、大きな手間をかけずに負荷分散が実現できそうです。” ----“レプリケーションを使用することで、DBの冗長性も同時に実現しています。” ----“DNSラウンドロビンによって複数のIPアドレスにリクエストを分散させる” ---最適化を行う日々 ----“スレーブDBを投入することでDBサーバの負荷がある程度落ち着いてきた時点で、インデックスの張り替え・クエリの見直しを行いました。” -----全文検索、当初はLike検索で実装していたが・・・ ------“Tritonnを使用してMySQLから全文検索エンジンSennaを使用する構成” -----“Tritonnをセットアップした検索専用のDBスレーブサーバを用意”・・・「参照分割」 ------“参照分割を行うと、DBの中で特定のデータや特定のパターンのクエリが多く使われやすくなるため、キャッシュの効果が上がりやすくなります。” -----“特にパフォーマンスが大きく改善したのはカーディナリティ(取り得る値の種類)の低いカラムについているインデックスを消した場合” ----“画像サーバに関しては、noatimeというマウントオプションをつけることで、画像の表示が大幅に高速化されました。” -----“ファイルシステムのマウント時に、ファイルへのアクセス時間(atime)を更新しないようにする”

WEB+DB PRESS Vol.63

WEB+DB PRESS Vol.63

  • 作者: 竹迫良範,和田卓人,おにたま,中島聡,角田直行,はまちや2,上谷隆宏,青木俊介,大塚知洋,生尾剛士,大和田純,永安悟史,馬場俊彰,久保達彦,白土慧,じゅんいち☆かとう,太田昌吾,小野修司,ミック,嶋田裕二,個々一番,みやけん,清水亮,WEB+DB PRESS編集部
  • 出版社/メーカー: 技術評論社
  • 発売日: 2011/06/24
  • メディア: 大型本
  • 購入: 20人 クリック: 434回
  • この商品を含むブログ (22件) を見る