Help us understand the problem. What is going on with this article?
![ベンチマークツール"wrk"で自由にリクエストを送る - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/a7c8e035f72aeb434a6cf7069e4deb83939a5397/height=288;version=1;width=512/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fqiita-fb-fe28c64039d925349e620ba55091e078.png)
はじめに New RelicのAPMでPythonアプリを監視してみます。Pythonはフレームワークが多種多様で、Webでの公開手法も幅が広いのですが、まずはなるべくシンプルな形でNew RelicとPythonアプリの連携方法をご紹介したいと思います。今回はFlaskで作った単純なアプリにNew Relicのコードを埋め込んで監視画面に表示させるまでの流れを確認します。 環境 CentOS 7 Python 2.7.5(default) New Relicのアカウントがあることが前提です。LICENSE-KEYは適宜読み替えてください。 New Relic APMのセットアップ Python Agentのインストール 公式の手順に沿ってインストールします。 私の環境の例。若干古いので最新版はこちら。 # wget https://download.newrelic.com/python
今回は「pt-query-digest」を使用して、チューニングしたいSQLがスローログに記録されている場合の調査方法について説明します。 pt-query-digestとは pt-query-digestはPercona社が開発・配布するMySQL用のユーティリティーキットで、「Percona Toolkit」の1つです。最新ドキュメント(2016/3/22現在)はこちらにあります。pt-query-digestの基本的な使い方は「スローログをノーマライズ・集計し、人間が判断しやすい形式で出力させる」です。基本的にはスローログ用と考えますが、スローログ以外にもジェネラルログやバイナリーログ(mysqlbinlogコマンドの出力を入力する)、パケットキャプチャー(tcpdumpコマンドの出力を入力する)などが利用可能です。 Percona Toolkitのインストール まずはPercona
タグ 保湿RTX1210VagrantVirtualBoxAnsibleLarabelClamAVCentOS7SWX2200ゆるいハッキング大会RTX1100MySQLPlesk12おりょりょんNFSPostfix基板修理linux 入門atomゆるいハッキングDrupalVisual Studio 2017RabbitMQMVCAsteriskベンチマークBINDGitMastodonwindows10GeoIPApacheAWS S3AWS CLIFuelPHPVulsH2OSSHFSAWS EFSZabbixRDPELBロードバランサsshバックアップ負荷分散AWS EBSCybozu Office10ElasticsearchSWX2300LogstashKibanaLaravelKubernetes仕事猫現場猫ゆるいハッキングセミナーALBDNSConoHa Vlanデッドロッ
rmコマンドで大量のファイルを削除しようとするとjournaldがめっちゃリソース持っていく件— bokko (@cubicdaiya) 2017年8月3日 今時のファイルシステムはみんなジャーナルもってて何かあったときにそこからリカバリする仕組みになってるので、当たり前といえばそうなんだけども。 (TODO: ここにファイルシステムのツリー+ジャーナルのポンチ絵を手描きでも何でも描く) ご本尊のデータのツリーと何らかのWALを1セットで持っておくのはRDBだろうがファイルシステムだろうがそうは変わらない、で、削除についても並行制御をうまくやるために削除フラグをログに入れておいてあとで本尊のデータを整理するというのが基本的な設計になる。そこで私は立ち上がった(TL;DR: 特にオチとかはないです)。 rm -rf が遅いのは人類にとって損失ではないか。もっと速く完了するようにすれば、 rm
詳細情報を出力しながら、execlのテストを5回繰り返したい場合は次のように指定します。 ./Run -v -i 5 execl 測定可能なテストケース 標準で実行されるテストケースは次の通りです。個別に実行したい場合は、カッコの中のテスト名を指定します。 Dhrystone 2 using register variables テストケース : dhry2reg 整数演算処理の性能をベンチマークします。Dhrystoneというベンチマークツールを利用しています。 Double-Precision Whetstone テストケース : whetstone-double 浮動小数演算処理の性能をベンチマークします。Whetstoneというベンチマークツールを利用しています。 Execl Throughput テストケース : execl システムコール処理性能をベンチマークします。execl
SREの深尾です。kurashiru [クラシル] のインフラを担当しています。 タイトルのとおり、クラシルのwebサイトではRailsを使っており、1サーバあたり10,000人程度のアクセスに耐えることができます。実際には余裕を持たせて5,000人/サーバを目安にスケールさせており、TV CMをガンガンやったり、国内外のTV番組で特集されたり、芸能人にSNSで拡散されても動じませんが、実は過去に1度だけWebサイトがダウンしてしまったことがあります。それは2017年3月11日にSmaSTATION!!というTV番組でクラシルが取り上げられた時のことでした。 以下はその時のリクエスト数を表すグラフです。ダウンしてしまったので計測できなかったユーザの数字は含まれませんがそれでもアクセス数は1分で数万人を超えていました。 それまで、Webサイトの負荷対策はあまり行っておらず、2台のWebサーバ
「いますぐ実践! Linux システム管理」はこちらです。 メルマガの解除、バックナンバーなども、以下からどうぞ。 https://www.usupi.org/sysad/ (まぐまぐ ID:149633) その他、作者に関するページは、概ね以下にございます。 https://www.usupi.org/kuri/ (まぐまぐ ID:126454) http://usupi.seesaa.net/ (栗日記ブログ) https://twitter.com/kuriking/ (twitter) https://facebook.com/kuriking3 (facebook) https://jp.pinterest.com/kuriking/pinterest) https://www.instagram.com/kuri_king_/ (instagram) [バックナンバーのトップへ
たまたまTwitterのTLで拾ったので、入れてみました。 https://pypi.python.org/pypi/Glances A cross-platform curses-based monitoring tool 理由は、pipyでのスクリーンショットが良かったから、です^^; Install CentOSではrpmが提供されているので、yumでインストールできます。(python-glance-2012.2.4-3.el6.noarch) わたしの場合は、VagrantのCentOS6.5に追加してみました。(yumではなく、easy-installでも、pipでも簡単に入ります) 起動してみます コマンドを打つだけです。 スクリーンショット 起動してしばらくすると、一括でリソース状況が描画されます。 ヘルプ画面。 デフォルトでいろんな情報を一画面に表示なのですが、オプション
久しぶりにvyosネタではない市田です。 今回は、netdataというLinux向けのモニタリングツールについてご紹介します。 netdataとは netdataは、ZabbixやNagiosなどの監視ツールとは異なり、リアルタイムパフォーマンスモニタリングができるツールです。 その代わりと言ってはなんですが、長期間の監視データの蓄積などはできないので、過去のパフォーマンスグラフを参照すると言ったことはできません。 以下のようなリアルタイムなリソースグラフを見ることができます。 下記のgifではカクカクしていますが、実際はもっと滑らかな動きのあるグラフになります。公式サイトが参考になるかと思います。 NetData - Real-time performance monitoring, done right! netdataの特徴 githubでは以下の特徴を謳っています。 Stunnin
PyData.Tokyoは「Python+Dataを通じて、世界のPyDataエクスパートと繋がれるコミュニティーを作る」ことを目的として設立され、これまでに勉強会3回およびチュートリアル1回が開催されました(過去のイベントのリスト)。4回目の勉強会となる今回は「データ解析アルゴリズムの高速化」をテーマに、株式会社ブレインパッドの佐藤貴海さん(@tkm2261)とシルバーエッグ・テクノロジー株式会社の加藤公一さん(@hamukazu)の2人に話していただきました。 登壇者のレベルの高い講演に加え、ヤフー、日本IBM、NTTデータ、AWS、Gunosy、Preferred Networksなど、第一線で活躍されている非常に質の高い聴講者にも参加いただき、大変充実した会になりました。 Pythonは書きやすい言語仕様と豊富なライブラリが特徴で、手軽に複雑なデータ分析を行えますが、他言語と同じ感
やったこと Scikit learnのチュートリアルを参考に ラベル付のデータセットを使って kの値や重みを変えて pythonでk近傍法を実装 サンプルデータのimport irisデータセットを使う。入力データは4次元だけど、可視化しやすいように最初の2次元だけを使う。 import numpy as np import matplotlib.pyplot as plt %matplotlib inline from matplotlib.colors import ListedColormap from sklearn import neighbors, datasets, metrics iris = datasets.load_iris() # 4次元、150サンプルのデータセットで # 植物の萼(がく)の長さ、幅、 花びらの長さ、幅、単位はcm。 iris_X = iris.d
サーモン大好き横山です。 Pythonのコードを書いていて、どの処理で遅延しているか調べるとき、どうしていますか? 今回は関数の行ごとに実行速度を計測出来る line_profiler を紹介します。 準備 今回はMac上でやっていきます。 $ sw_vers ProductName: Mac OS X ProductVersion: 10.10.4 BuildVersion: 14E46 $ python -V Python 2.7.9 環境はPython2.7でvirtualenvの準備をします。 $ mkdir -p /tmp/line_profiler $ cd !:2 cd /tmp/line_profiler $ virtualenv -p /usr/bin/python2.7 venv27 Running virtualenv with interpreter /usr/bi
tl;dr map が遅いとされるのは関数呼び出しの差があったため 現在では(list にこだわらなければ) map は (2017/3/10 11:00追記)イテレータを生成するときは 圧倒的に速い 総合的に見ると,式のみのときはfor内包表記が速く,関数のときは map が速い様子か 追記が増えてきたので,追記部分も読んでもらえるとよさそう. はじめに 「Python の map とfor内包表記(リスト内包表記)は結局どっちが速い?」というのは,Python 使いなら誰しもが抱く疑問かと思われる.そういう記事もいっぱいある. そこで,今回はバイトコードと実行時間を見ることで,どちらが速いのかを検証してみた. Python2.7.12 の場合 次のようなコードを用意した.どちらも0から9までの自然数の2乗のリストを返す. 初めに逆アセンブルされたバイトコードを出力し,次に timeit
速度改善が求められるのは、上記の∂E/∂ω の勾配計算の部分です。 この勾配計算の処理速度を改善していきます。 計算グラフ 誤差逆伝播法の話をする前に、計算グラフという考え方に触れておきます。 簡単な例として以下のような例題をあげてみます。 計算グラフではノードと矢印で計算過程を表現します。 上記の例は以下のような表現になります。 りんご100円の金額が、5個購入の「×5」のノードに流れ、さらに消費税の「×1.08」のノードに流れる、局所的な計算の伝播が行われる表現が「計算グラフ」です。 上記の表現では、入力パラメータはりんご1個でしたが、個数や消費税も入力パラメータと考えると、以下のような計算グラフで表現されます。 この表現ではノードが汎用的な乗算ノード「×」に変化しています。 また、追加で80円のみかんを3個買うような場合、以下のような表現になります。 このように、局所的な単純計算のノ
はじめに いやーついにRyzen発売しましたね。 みなさん並びましたか?僕は当然並びました。並ぶ気なかったけど。 さて、巷ではAMD復活の狼煙だとかIntelを超えたとか非常にパワーなワードが並ぶRyzenへの評価ですが、それはいかほど真実なのでしょうか? コストパフォーマンスとかそういうのはどうでもいい、絶対性能としてどこまでまともになったのか、というのを評価してみたいと思います。 全体的にこれから追記するんで、そのつもりでごらんください。 この記事で使ったコードは https://github.com/telmin/YAMADABenchmarkSuite においてあるので、時間がある人は結果を送ってくれると喜びます。 評価環境 CPU : Ryzen 1800X MEM : DDR4-2133 16GB(8GB * 2) OS : CentOS7.3 これ以外はテキトーなSSDがつい
達人プログラマーを熟読中、今まで考えないようにしていた計算量の見積もりが出てきたのでメモ 規模のスケールでそのアルゴリズムのパフォーマンスはどう変化するか? データを200万回追加しました。 毎日1000件データが増えます。 サービスは2019年の3月までがサポート予定です。 などなど、処理の内容は変わらないが、処理対象の規模が変動するのが一般的だと思う。 プログラマーなら現在のシステムの処理速度がどのように変化するか?という点を常に意識したい。 単純なループ 基本は1からnまでの繰り返し 具体例としては、 順次検索 配列の最大値取得 チェックサムの生成 forループの中でSQLを実行する(ぐるぐる系) テーブルのフルスキャン 等 データの量に応じて処理時間は比例の関係にある。 ネストしたループ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く