You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
今から2年前の2012年の6月20日、レンタルサーバー会社のファーストサーバは、大規模な顧客データの消失事故を引き起こした。あのときなにが起こったか? ファーストサーバのさまざまな部門の担当に、当時の状態を振り返ってもらった。 ファーストサーバは今も変わらずビジネスを展開している ファーストサーバの顧客データ消失事故に関するドキュメンタリーを書きたいと思った。事故の原因究明や責任の所在を明らかにするのではなく、当事者の話を積み上げていくような記事が書きたいと思った。 そして、今回ファーストサーバの全面的な協力により、事故当時から現場を統率してきた現代表取締役社長の村竹昌人氏をはじめ、営業、開発、運用、マーケティング、広報、サポート、管理など各部門の担当者に話を聞くことができた(以下、敬称略・役職は現職)。 事故から2年間の間、ファーストサーバはひたすら事故の影響を受けたユーザーへの対応と再
第1回のアジェンダ編では、高速化に関わる要因と解決策の全体像を紹介しました。 アジェンダ編にもかかわらず多くのブックマーク、シェアをいただきありがとうございます! 余談ですが、記事にブックマーク、シェアをしていただくと、このブログでは執筆者に経験値がたまるような仕組みになっています。 たくさん経験値を貯めると四半期ごとに良いことがあるかもしれないので、気が向いたらこの他の執筆者の記事もシェアしていただけるとうれしいです。 言葉にせずとも、わかっていただけると思いますが、この記事も・・・ね? 右上にあるボタンをちょちょっと。 本題 余談はさておき、本題に入りましょう。 今回は「無駄なリクエストとレスポンスの削減」に視点を置き、解決策について調査、計測して紹介してみたいと思います。 と思ったのですが、長くなりすぎたため、まずは「検証ツールとHTTPについて」紹介することにしました。 この記事の
Chrome Apps v2's socket api Chrome の Web appsが manifest v2 に変わり、その機能、特に Packaged Apps が大幅に変わっています。 What Are Packaged Apps? その中で僕が特に注目しているのが、socket api。ChromeのPackaged Appsから、生のソケットコーディングが出来るようになります。 この socket api ですが、これまで tcp ソケットでサーバーを立てることができなかった(listenとかacceptのメソッドが無かった)のですが、昨日 Google API Expert MTGで 吉川さんから、「昨晩Chromiumで実装されたみたい」との情報が。ということで、早速簡単なWebサーバーを動かしてみました・・・というのが今日のEntryです。(執筆時点では、すでに、ca
こんにちは nakamura です。そういえば 4/1 から 神奈川県公共的施設における受動喫煙防止条例 が施行されましたね。今のところよく行くお店でそれらしい光景は見掛けませんが、先日行った居酒屋はものの見事に禁煙になっていて心なしか客足もまばらな感じでした。神奈川県の飲食はこれから厳しそうですな。 さてさて思わず関西弁になってしまうほど便利な find コマンドを今日はご紹介します。比較的有名なコマンドですが、オプションが相当な数あり正直全てを把握するのは無理かもしれません。ただ、よく使うものだけでも頭に入れておくと何かと便利な優れものなのです。 基本的なオプション まずは基本的な使い方。 -type ファイルタイプの指定に使用するオプションです。スペシャルファイルや名前付きパイプ等様々な引数がありますが、よく使うのはディレクトリを示す d と通常ファイルを示す f でしょうか。 -n
RedisをCentOSにインストールする手順を記載します。 Redisとは ・ 全てのデータをメモリ上で保持(インメモリベース)でするため、高速であるc ・ キー・バリュー・ストアである ・ 非同期でディスクで書き込みを行うため、サーバ再起動しても永続される ・ Ruby、Scala、Python、PHP、Perl、Java、、C++等の言語でサポート ・ Linux、BSD、Mac OS X、Solarisなど移植可能(Windowsは正式にサポートされていない) ・ github、digg、craigslist、ニコニコ生放送等で実績がある。 Redisをダウンロード 今回は、ver2.4.0をダウンロードします。(githubからも取得できます。) # wget http://redis.googlecode.com/files/redis-2.4.0.tar.gz Redisをイ
前書き この文書は DJB 氏の daemontools パッケージに興味を持たれる方やこれから導入・運用を行おうとする方に向けて書かれたものです。daemontools パッケージの概要、導入・設定方法、使用例などをまとめています。しかし、各ツールを詳細に説明するものではありません。そのため、この文書を読んだ後に、マニュアル*1 を読んでください。日本語訳*2もあります。 また、新山さんの daemontools FAQ*3もありますのでそちらもご覧下さい。 註記 *1) "daemontools" http://cr.yp.to/damontools.html *2) "daemontools(日本語訳)" http://www.emaillab.org/djb/tools/daemontools/top.html *3) "daemontools FAQ" http://tanaka
よく,データベースの運用に関する相談の中では,バックアップと可用性(アベイラビリティ)を混同してい場合がある。データベースは,ある瞬間のデータを保存することが目的である。障害が発生した際に保存したデータを再現することにより,復元をおこなう。 可用性は,障害対策として,できるだけ止めずにデータベースを運用することを目的としている。もし,止める場合にも最小限の時間で,復旧することを目的としている。 障害が発生した場合に,速やかに復旧することは,非常に重要なことである。そのため,「レプリケーションやクラスタリングを使用すれば万全」と考えるのは,間違いである。もし,レプリケーションやクラスタリング自身に障害が発生すれば,必ずバックアップデータによって,復旧する必要がある。 また,誤ったデータベース更新を実行した場合,レプリケーションやクラスタリングは,すべてのサーバーが即座に更新を実行する。そのた
■はじめに cron とは、ジョブ(スクリプト)を自動実行するためのデーモンプロセスです。そして、Linux システムの管理を行なう場合、ログのローテートや、バックアップなど、定期的に自動実行したいジョブが数多くあります。特に、バックアップなどは、システムへの負荷が大きいため、通常は、ユーザからのアクセスが少ない、深夜や早朝に行なわれます。 このように、定期的に実行されるジョブは、crond というデーモンによって、自動的に行なうように管理することができます。そこで、今回は、cron の設定を行なうために必要なコマンドや、設定ファイルについて説明していきたいと思います。 ■設定手順 このページでは、以下の順番で cronの設定について説明します。 まず、Linuxシステム上で、cron を使用するために、サービスの起動で、サービスの状態を確認し、停止している場合には、サービスを起動します。
[root@centos ~]# vi /etc/my.cnf ← MySQL設定ファイル編集 [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 character-set-server = utf8 ← 追加(MySQLサーバーの文字コードをUTF-8にする) [root@centos ~]# /etc/rc.d/init.d/mysqld start ← MySQL起動 MySQL データベースを初期化中: Installing MySQL system tables... OK Filling he
今回は、前回紹介し切れなかったrcスクリプトについて解説する。rcスクリプトも、理屈を理解してしまえば容易に管理できる。管理方法のついでに、rcスクリプトの書き方もマスターしてしまおう。 前回のLinux起動の仕組みを理解しよう[init/inittab編]では、カーネルがinitプロセスを起動して、さまざまな処理を行うことを説明しました。今回は、各種サービスの起動を行うrcスクリプトについて見ていきましょう。 rcスクリプトの管理の仕組み rcスクリプトは、Windowsのautoexec.batに相当すると考えればいいでしょう。もちろん、rcスクリプトとautoexec.batでは異なる点があります。rcスクリプトは、対応する作業ごとに1つずつ、複数のファイルで構成されています。また、ランレベルごとに実行するrcスクリプトを変えることができます。 rcスクリプトの実体は、/etc/in
以前は su でユーザの制限をしていましたが su コマンドでは rootのパスワードを直接入力するので セキュテリティ的にもう少し配慮した sudo にて root権限にて コマンドが実行されるようにします。 さて sudoの設定ですが次のとおりです。 sudoがinstallされているか確認しましょう [aaa@localhost ~]$ yum list installed |grep sudo sudo.i386 1.6.8p12-10 installed [aaa@localhost ~]$ もしinstallされていなければ、rootになり次のようにinstallします。 yum install sudo sudo設定は、sudoコマンドのヘルプで確認します [aaa@localhost ~]$ man sudo コマンドの使用方法の説明があります、最後の方に 関連項目 sta
今回から、いよいよApacheの設定編に突入する。Apacheの設定ファイルは、長大で複雑怪奇に見えるが、実際には単純な項目の羅列にすぎない。まずは最も基本的な設定を行って、Webサーバとしての体裁を整えよう。 (2/2)
Socket.IOBidirectional and low-latency communication for every platform PerformantIn most cases, the connection will be established with WebSocket, providing a low-overhead communication channel between the server and the client. ReliableRest assured! In case the WebSocket connection is not possible, it will fall back to HTTP long-polling. And if the connection is lost, the client will automatical
node.jsに関する基礎やチュートリアルのまとめ。 リアルタイムなWEBを実現するには必須のサーバサイドJS、node.jsについて色々とまとめてみました。 node.js node.jsについて node.js なんとなく凄そうだけどよく分からないという方も多いかもしれないので簡単に解説。 一番最初見た時は何かのJavaScript ライブラリかと思ったのですが、全く違って、V8というChromeにものっている高速JavaScriptエンジン上で動くサーバを動かせる仕組み。 サーバ自体を具体的に言うと次のようなコードで実現します。 var http = require('http'); http.createServer(function (request, response) { response.writeHead(200, {'Content-Type': 'text/plain
Macで簡単に静的コンテンツを配信するサーバーを立ち上げる方法を紹介します。 Macには最初からApacheが入っているのでこれを有効にすればいいんですけど、バーチャルホストの設定とかが面倒だし、XAMPPみたいのはインストールして設定するのが面倒です。そこでpythonのSimpleHTTPServerというモジュールを使います。これは最初からMacにインストールされているので特にインストールなどは必要ありません(たぶん10.5からはデフォルトで入ってる)。 まずターミナル.appを開きます。次にドキュメントルートに設定したいディレクトリに移動します。以下のようにcdコマンドで移動できます。 $ cd /Users/hokamura/Sites パスとかよくわかんない人はFinderでフォルダをターミナルにドラッグアンドドロップすればそのディレクトリのパスがコピーされます。 cdしたら以
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く