なぜDMMがweb3に参入したのか。Seamoon Protocolが目指す新たなエンタメ体験の未来とは
なぜDMMがweb3に参入したのか。Seamoon Protocolが目指す新たなエンタメ体験の未来とは
サーバーのリソースを見るにはグラフ化は重要ですが、推移ではなくリアルタイムな状況、例えば秒単位のスパイキーな負荷を見るには、サーバー上でvmstatやiostatなどの*statファミリーを叩く必要があります。 さて、vmstatはメモリの状況やブロック数単位のI/O状況は見られますが、バイト単位のI/O状況やネットワークの送信、受信バイト数を見ることはできません。 # vmstat 1 procs -----------memory---------- ---swap--- -----io----- --system-- -----cpu------ r b swpd free buff cache si so bi bo in cs us sy id wa st 3 1 0 4724956 355452 726532 0 0 54 484 3 3 1 0 99 0 0 2 0 0 47
以前、モニタリングコマンド『nmon』を紹介したが、今回は同様に便利な『Glances』というコマンドについて紹介する。 このコマンドの特徴としては、多くの情報をひと目で確認出来るということだ。 さて、それでは早速インストールをしてみよう。 以下のコマンドを実行する事で、インストールが行える。 sudo apt-get install python-pip build-essential python-dev sudo pip install Glances sudo pip install PySensors インストール完了後、以下のコマンドで『Glances』を実行する。 glances ぱっと見で多くの情報を参照出来て、かなり便利なコマンドだ。 これはいいね!! 他には、どんな事が出来るんだろう?ヘルプの内容を見てみよう。 test@test-vm-ubuntu:~$ glance
日本アニメ初の快挙!海外アニメ賞を受賞した『スキップとローファー』海外ライセンス部長&プロデューサーが語る、奮闘の舞台裏
サーバをnetstat -anで様子をみると、TIME_WAITが大部分を占めていた。 これってこのままでいいのか? と思い、TIME_WAITについて調べてみました。 TIME_WAITをなんとかしたい場合は、以下の方法が考えられます。 1, サーバ増強 分散させたり、性能を上げます。あくまで一時的な対応になります。 2, 利用可能なTCPポート番号のチューニング 増加量が上回る場合は、焼け石に水です。 3, tcp_tw_recycleを有効 + tcp_fin_timeout値を短くする。 パケットのタイムスタンプの影響で通信に問題が出てきます。webサーバなどでは新たな障害にも。 4, TIME_WAITの値を60秒→15秒に変更(参考リンク引用) TIME_WAITが減り安定動作するそうです。 以上の4点を順番に見て行きましょう。 注意としてはどれもカーネルパラメータのチューニン
WEBコンテンツ配信にLinuxを使うのは一般的になりましたが、CentOSやUbuntuをはじめ、大抵のディストリビューションが低スペックなマシンでも動くような初期設定になっています。 トラフィックの上限でもない CPUリソースの枯渇でもない HDDのIOが遅い問題でもない コンテンツが重くなる(接続できない) というケースで、見落としがちなLinuxのネットワーク周りのチューニングについてです。 iptables関連 iptablesを使用している場合、下記のパラメータを注意して下さい。 /proc/sys/net/ipv4/ip_conntrack_max ip_conntrackに記録できる最大値です。65536あたりが初期設定になっているかと思います。これだとパケットの取りこぼしがすぐに起きてしまいます。1コネクションあたり約350バイト消費するので、実装されているメモリに応じて
しばらくLinuxネタが続く・・。 近いうちに最近出たJava8ネタを書いてみようと思います。が、もう少しLinuxネタにお付き合いください。 前回はsshdを対象に親プロセスをkillした場合の動作を確認した。 killされたプロセスの子プロセスは孤児プロセスとなり、カーネルによって自動的にinitプロセスの子として扱われる事を説明した。(この動作を「リペアレンティング」と呼ぶ) 今回はこの続き。 Linuxで作業していてCtrl+Cしてプロセスを終了した場合、フォアグラウンドのプロセスやその子プロセスも一緒に終了する。 ということは、子プロセスは孤児として扱われず、リペアレンティングされていないことになる。 今回の記事ではこの振る舞いの違い(リペアレンティングされるか否か)に着目し、kill -SIGINTコマンドとCtrl+Cの違いについて考えていく。 そもそもkillコマンドやCt
何の話かというと RHEL7/CentOS7では最小構成でインストールすると、ifconfig、route、netstat、arpなどのネットワーク関連のコマンドが使えません。これは、次のコマンドで「net-tools」パッケージを導入すると解決します。 # yum -y install net-tools しかしながら! RHEL7/CentOS7では、net-toolsを「deprecated(廃止予定)」としており、今後は、iproute2パッケージに含まれる「ip」「ss」などのコマンドを使用することが推奨されています。 ・お客さんのRHEL7サーバーのメンテを頼まれたらnet-toolsが入ってなかった! ・「えー。まだifconfigつかってんのー。」と若い同僚に冷たい目で見られた! ・などなど といった事態に備えて、RHEL7/CentOS7を導入した際には、iproute2
これはちゃんとチェックしておかないとなぁ。 Deprecated Linux networking commands and their replacements « Doug Vitale Tech Blog ==== この記事で詳しく説明する非推奨のLinuxネットワークコマンドは:arp, ifconfig, iptunnel, iwconfig, nameif, netstat, route である。iwconfig以外の コマンドは、net-toolsパッケージという、数年間メンテナンスされていないパッケージに含まれている。これらのユーティリティによって提供される機能は、新しいipコマンドを主に使うiproute2 スイートで再提供され、改善され続けている。iproute2ソフトウェアのコードとドキュメントは、Kernel.orgとLinux Foundationで見ることができ
前回の問題とはまた別件で、今度はbinlogのローテート切り替わりタイミングに更新クエリが停滞する、という問題を調べることになりました。 調査の過程で何を誤ったか、Twitterという魔法陣から最強クラスの重鎮魔神を召喚してしまい、恐れ多くも原因の特定と対応方針の決定ができてヘコヘコな感じでございます。 binlogローテート時の障害 数十分に1回、更新クエリが停滞してアプリケーションにエラーログが残るということから、他のエンジニアが、どうもbinlogの切り替わり時にそれが起きているっぽいことを特定してくれました。発生時は1~3秒は更新機能が停止するので、結構なレベルの障害ということでした。 binlogは1GBでローテートするように設定していたのですが、dstat -d でwrite容量を見ていると、確かに切り替わり時に800~900MBの書き込みを確認できました。 このことから、bi
昔、『「ping -a」で音が鳴る!』なエントリでも書いたのですが、何らかをリアルタイムにチェック/監視したい時に、視覚だけではなくアラート音が一緒に出ると、モニタリングしやすいものです。 というわけで、Linuxなんかで、とあるログファイルの出力から、ある文字列が検出された際に、ビープ音を鳴らすワンライナーは以下。 $ tail -f ログファイル | sed -e 's/\(対象文字列\)/\1^G/'上記を実行中に、指定ログファイルに対象文字列が出力されるとビープ(Beep)音が鳴るはず。 「^G」(0x07)の部分が、ASCIIのBELキャラクタのリテラルです。 $ echo -n "^G"などとしてやれば、ベル(ビープ音)が鳴りますよね。 ちなみに、「^G」は、[Ctrl-V] ⇒ [Ctrl-G] の順に入力してやればOK。emacsだと[Ctrl-Q] ⇒ [Ctrl-G]か
アクセスログなど流速が早いログをtail -fしているときに特定文字列を見ておきたいときがあります。 grepしてもいいんだけど、それだと見逃すログがあるためlessコマンドで実現します。
注意 このエントリは、会社の公式見解などでは全くありません。 社内のエンジニアたちのグループチャットで聞いて、集まった意見をまとめただけです。 このエントリはただの備忘録として書き留めただけだったのですが、 全く予想外に、多くの反響を頂き戸惑っています。。 頂いたコメントの中には「このレベルも知らないでクックパッドに入れるのか」といったものもありましたが、 一応、個人的には、例えばDB周りだとオラクルシルバ取得程度の知識はありますm()m 「良い環境にいるのだから改めて初心で勉強したい」という旨で皆に尋ねた結果であり、、 もしガッカリさせるようなことがあれば非常に心苦しいです。 良くも悪くも自分がこれらを消化できるかという話なので、 ここに並んでいる本を見てクックパッドをどうこうは思ってほしくないです。。 申し訳ありません。。。 summary the books which I have
man zshoptions zshoptions のマニュアル(訳) 名前 zshoptions - zsh のオプション オプションの指定方法 オプションはまず、名前によって参照される。この名前では大文字小文字の区別はなく、アンダースコア(_)は無視される。たとえば、 `allexport' は `A__lleXP_port' と等価。 オプションの名前の意味は、先頭に `no' をつけると逆転する。つまり、 `setopt No_Beep' は `unsetopt beep' と同じ。この反転は一段しか行われないので、 `nonobeep' は `beep' と同じではない。同様に、 `tify' は `nonotify' と同じではない(これは `notify' の逆転)。 オプションは1つ以上の単一文字名を持つことがある。単一文字オプションには2つの種類がある。ひとつはデフォルト
先日人力検索で GNU screen の設定TIPSについて質問してみたところ、かなーり役立つ設定とかをたくさん教えてもらうことができました。みなさん感謝。 そんで、教えていただいた通りにカスタマイズした結果、こんな感じのスクリーンショットが撮れました。MacOSX のターミナルです。 おかげさまでかなり便利になって作業効率が上がったと思います。いろいろ教えてもらったお礼とまではいきませんが、やった設定とかをはまりどころとかも交えて紹介してみます。名付けてリバースNDOメソッド。ちなみに、知ってる人にはごく当然のことが当たり前のように書いてるので、あんまり役に立たないかもしれません。 hardstatus alwayslastline で最終行にウィンドウ一覧を表示 これは今回の質問とは直接関係ないのですが、やるとやらないとでかなり使い勝手が違うので。 hardstatus alwaysl
Linux の連続稼働時間が 208.5 日を過ぎた段階で突如 Kernel Panic を引き起こすという過激な挙動で2011年の年の瀬に話題となった "旧208.5日問題" ですが、あれから二年が経った今、Linux Kernel 内の bug と Intel Xeon CPU の bug の合わせ技により再度類似の不具合が発生することが分かっています。 旧 208.5 日問題の発生原理に関しては以下の blog が参考になります。 okkyの銀河制圧奇譚 : sched_clock() overflow after 208.5 days in Linux Kernel 追記(2014/1/4) 新208.5日問題の簡易チェックツールを作成しました。よろしければお使い下さい。 tsc_checker - 新208.5日問題簡易チェックツール また、Linux Kernel における時間
HAProxyを使う上で、どうやったらパフォーマンスが上がるのかを模索するメモ。 基本的に、万能なパフォーマンスチューニングはないので、今回はCPS(Connections per Second)のパフォーマンスを上げることに焦点を絞ります。CPS(Connections per Second)は、ロードバランサの性能指標の1つとなっている数値です。 あくまで軽くやってみた過程のメモ書きみたいなものなので、まとまりもなく、まだまだ改善の余地があるとは思いますが、何かの参考にしてください。 前提 HAProxyを動かすのに使用した環境は以下の通り。 Server: DELL PowerEdge R420 CPU: Intel Xeon E5-2430L @ 2.00GHz * 2 Memory: 96GB Ethernet controller: Intel Corporation Ethe
コンパイルやバックアップなどの時間の見積もりを間違えて、 いつまで経っても終わらない(帰れない)ときの解決方法 Ctrl+zでジョブを一時停止 bgでバックグランドで再開させる jobsで実行中のジョブを表示 disownでログアウトしても実行されるようにする $ mysqldump -uroot > dump.sql # ここでCtrl+z押下 [1]+ Stopped mysqldump -uroot > dump.sql $ bg 1 [1]+ mysqldump -uroot > dump.sql & $ jobs [1]+ Running mysqldump -uroot > dump.sql & $ disown %1
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く