タグ

ブックマーク / tdoc.info (6)

  • CPUやメモリなどの情報を取得するgopsutilのご紹介 — そこはかとなく書くよん。 ドキュメント

    CPUやメモリなどの情報を取得するgopsutilのご紹介¶ Go Advent Calendar 2015 の16日目です。 Pythonには psutil という、CPUやメモリなどの情報を取得するライブラリがあります。 拙作 gopsutil はこのpsutilをgolangに移植しようと始まりました。 gopsutilは、以下の特徴があります。 Linux/Darwin/FreeBSD/Windowsで動作します もちろん、対応状況はかなり違います (ほぼ) pure golangで実装されています。そのため、クロスコンパイルが容易です ほぼ、というのはdarwinのCPU利用率だけcgoを使っています。cgoを使わない場合は単にnot implementedが返ってきます。 psutilにない情報も取れます docker(cgroup)の情報だったり、仮想化状況だったり、好き勝手

  • Goのバイナリサイズを削減する — そこはかとなく書くよん。 ドキュメント

    あれ、 "-s"では変わってないですね…darwin環境ではでないのかななld周りのなにかだと思うのでそれはあとで追うとして、元々が26MBだったのが、5.2MBまで減りました。 圧縮に upx -9 を使った場合、かかった時間は15.70秒でそこそこ時間がかかりますね。3回ほど実行してだいたい同じぐらいでした。伸長時は0.10秒ほどでした。もちろんメモリなどにも依存しますので、この結果は鵜呑みには出来ませんが、あくまで目安として。 さらにいうと、 upx -1 で圧縮した場合は 0.78秒しかかかりません。それでいて、6.4MBと充分な圧縮効率となりました。この辺りはターゲットとする環境に合わせて決めればいいと思いますが、 -1 で十分な気もします。 まとめ¶ Goのバイナリが大きい問題は、ldflagsとUPXを使うことである程度解決できるのではないか、という話でした。 UPX知らなか

  • MQTTについてのまとめ — そこはかとなく書くよん。 ドキュメント

    注釈 MQTT As a Service: sangoをリリースしました 2014年8月に、GitHubアカウントで簡単に登録できてMQTTを使い始められる sango を 時雨堂 がリリースしました。 無料プランもありますので、MQTTを一度使ってみたいという方はsangoを使うことをお勧めします。 最近voluntasさんが 活動 してお り、にわかにMQTT関連が熱くなってきました。たぶん観測範囲が狭いからだと は思いますが。 とはいえ、M2M (Machine to Machine)やIoT(Internet of Things)というバズワー ドもあり、モノがインターネットにつながる時代になってきて、MQTTの価値が 高くなってきている気もします。また、モバイル時代に適したプロトコルとい う意味でも注目されているのかもしれません。 ということ、MQTTについて一旦ここでまとめてみ

  • pipの使い方 (2014/1バージョン) — そこはかとなく書くよん。 ドキュメント

    pipの使い方 (2014/1バージョン)¶ 以前 pipの使い方 と いう記事を書いたのですが、これは2011年の1月と、ちょうど3年前です。これ から随分変わったので、ここでもう一度まとめたいと思います。 pip: http://www.pip-installer.org/ ここで述べているpipのバージョンは1.5です。お使いのpipのバージョンが古い場合は pip install -U pip として、更新してください。 警告 大きな変更点: pip 1.5から"pre"や"b"などがバージョンに付いているパッ ケージはデフォルトで検索やインストールの対象からはずされました。その ため、1.5未満のバージョンのpipでインストールしたパッケージが1.5では 入らない場合があります。 --pre を付けることで、これらのバージョンを入れることができます。

  • PostgreSQLをPythonからpsycopg2を使っていじる — そこはかとなく書くよん。 ドキュメント

    で簡単です。ただ、C関数を作るので、Python.hなどのdevライブラリやgccといっ たツールを事前にインストールしておく必要があります。 簡単な使い方¶ >>> import psycopg2 # コネクション作成 >>> conn = psycopg2.connect("dbname=test host=localhost user=postgres") # カーソル作成 >>> cur = conn.cursor() # SQLコマンド実行 (今回はテーブル作成) >>> cur.execute("CREATE TABLE test (id serial PRIMARY KEY, num integer, data varchar);") # SQLコマンド実行 (プレースホルダー使用。エスケープも勝手にされる) >>> cur.execute("INSERT INTO test

  • psqlのちょっと便利な使い方 — そこはかとなく書くよん。 ドキュメント

    psqlのちょっと便利な使い方¶ PostgreSQL Advent Calendar 2012 の20 日目です。他の人とは違ってゆるふわ記事です。 みなさま、フロントエンドにはなにを使ってらっしゃるでしょうか。pgadmin はGUIでかなり便利ですが、標準で使えるpsqlもかなり便利です。 特にリモートのサーバーに入って作業するときなどpsqlの方が手軽ですよね。 というわけで、今回はpsqlのちょっとした使い方のご紹介です。「そんなの知っ てるよ」とおっしゃらずにお付き合いください。 入力系¶ psqlSQLを実行させるときには、 -f でファイルを指定したり、 -c で指 定したりしますね。 これに加えて、標準入力からも受け取れます。 さて、自分はEmacsな人なのですが、Emacsでは M-| で選択したリージョンを 標準入力として、指定した外部コマンドを実行出来ます。つまり

  • 1