![http://blog.umentu.work/%E3%80%90mac%E3%80%91matplotlib%E3%82%92import%E3%81%97%E3%81%9F%E9%9A%9B%E3%81%AB%E3%80%8Cpython-not-installed-framework-%E3%80%8D%E3%81%AE%E3%82%A8%E3%83%A9%E3%83%BC/](https://cdn-ak-scissors.b.st-hatena.com/image/square/1eb25f3a0b9be51ab6f340e0afd86992272e0824/height=288;version=1;width=512/https%3A%2F%2Fi2.wp.com%2Fwww.blog.umentu.work%2Fwp-content%2Fuploads%2F2015%2F06%2FPython-logo-notext.svg_.png%3Ffit%3D750%252C750%26ssl%3D1)
はじめに Macでは現在標準でPython2系がインストールされていて、すぐに使える状態です。 そこでこの記事では、Python3系へのバージョン切り替えをpyenvで行っていきます。 目次 はじめに 環境 homebrewのインストール pyenvのインストールとパスの設定 pyenvとは pyenvのインストール pyenvのパスの設定 Pythonのインストールとpyenvによるバージョン変更 Python3系のインストール Python3系へのバージョン切り替え 補足: OSX El Capitanでpyenv installに失敗する場合 環境 ・Mac OSX 10.11.3(OSX El Capitan) homebrewのインストール まずは、homebrewをインストールします。 これはこちらの記事で。 pyenvのインストールとパスの設定 pyenvとは pythonの
サーバー台数の増加による諸問題 サーバーのノード数が増えてくると、各サーバーにログインしてコマンドを実行したり、設定ファイルを変更したりする行為が大変になってきます。数台程度ならまだ良い方でしょうが、ソーシャルゲームなどでは200台を超えるサーバーを管理することなどはザラにあるので、そのような運用効率手段として、複数台にコマンドを一括適用できるマルチSSHのシャルスクリプトがあると便利です。 SSH公開鍵認証とssh-agent まず、SSHの秘密鍵と公開鍵を作成して各対象サーバーに配布します(鍵の作成や配布に関してはここでは省略します)。SSHの秘密鍵は、ノンパスで作成すると流出したら大変なことになりますので、パスワードありで設定しましょう。その後、接続元のbash_profileとbash_logoutにssh-agentの設定をします(これでログイン時に1回パスワードが聞かれて、それ
最近書いている imosh の紹介です. Bashはほとんどの環境でインストールされているので,プログラムを配布するときのインストーラー等の簡単なスクリプトとして使うのに非常に便利で,多くの場面で使われています.しかしながら,Bashは単体では不便な言語です.そこで imosh を開発しています. 導入 imosh本体を開発中のスクリプトと同じディレクトリに配置します.以下が imosh を用いた最小のスクリプトです. #!/bin/bash source "$(dirname "${BASH_SOURCE}")"/imosh || exit 1 eval "${IMOSH_INIT}" この時点でスクリプトを安全に書くのに便利な機能(未定義変数に対する参照の検出する機能,コマンドが異常終了した時にスタックトレースを表示し終了する機能)が追加されます. フラグの追加 imosh はスクリプ
multiprocessingモジュール multiprocessingモジュールは、Python2系列では2.6以降、3系列では3.0以降に標準となったモジュールです。このモジュールはthreadingモジュールに似たAPIでプロセス間通信などの機能を提供します。このモジュールにより、GILの問題を回避することができ、複数のCPUやCPUコアの性能を生かすことができます。また、このモジュールはローカルのみならず、リモートでのプロセス間通信も行うことが可能で、簡単に分散処理などを実装することができます。 まず、GIL(Global Interpreter Lock)とはPythonのインタプリタ上で一度に1つのスレッドだけが動作するよう保証するためのロックです。このロックによって、同時に同じメモリにアクセスするスレッドが存在しないことを保証します。 しかしながら、このロックによって、一度に
ページコンテンツ multiprocessing で MapReduce を実装する SimpleMapReduce ファイルの単語を数える ナビゲーション コンテンツテーブル 前: プロセス間通信 次: readline – GNU readline ライブラリのインタフェース This Page Show Source サンプルプログラム PyMOTW の全てのサンプルプログラムの出力は、 注記されていない限りは Python 2.7.2 で生成されています。 標準ライブラリの初期のバージョンでは利用できない機能も紹介している 可能性があります。 multiprocessing で MapReduce を実装する¶ Pool クラスは1サーバで簡単な MapReduce 実装を作成するために使用することができます。それは分散処理の最大限の利点を得るものではないですが、ある問題を個々の分
OpenFlowでは、Controllerというソフトウェアで、対応したスイッチングハブが受け取ったすべてのパケットのコントロールができます。 Controllerを自作することで、スイッチングハブにいろんな機能を持たせることができます。 今まで、 VMWare Serverで、OpenFlowの環境を作ってみた[1/2] VMWare Serverで、OpenFlowの環境を作ってみた[2/2] とOpenFlowの基本的な環境を作りましたが、普通のスイッチングハブと同じ動作のサンプルなので、面白みがありません。 そこで、ちょっとした負荷分散機能をNOXというフレームワークを使って実装してみます。 (あくまでサンプルなので、実用性や性能は考慮していません。あしからず。) なお、本記事ではControllerのプログラム言語にPythonを使用しています。 仕様 DNSラウンドロビンという
大量のリクエストを捌くWebサイトを構築するには、さまざまなノウハウがあります。例えばオライリーの書籍『ハイパフォーマンスWebサイト』では、クライアントに配信するコンテンツを最適化することでパフォーマンスの向上を図っています。今回は、Pythonを使って月間10億を超える(!)リクエストを捌いている、株式会社クロスリスティングの方に、そのノウハウの一部を寄稿していただきました。 また、本記事の内容はPython Hack-a-thon 2010.07でのプレゼンテーションを元にしています 自己紹介 現在、私はクロスリスティングという会社で、広告配信システムとか、その周辺の新規商品関連の研究開発をやっています。メインのプログラミング言語はPythonです。自社でのシステム開発は基本的に全てPythonを使っています。自分は研究開発的なポジションですが、技術チームが開発しているプロダクション
ここでは軽量・コンパクトをウリにしているPythonのWebアプリケーションフレームワークであるBottle、Flask、Falconについて比較します。これらのフレームワークに対して、同様のリクエストを送り、同様のレスポンスを返させます。 記事を書くにあたり使用したもののバージョンは下記の通りです。 Ubuntu 14.04.2 Python 3.4.0 Bottle 0.12.8 Flask 0.10.1 Falcon 0.2 準備 "/foo"にアクセスすると"Hello foo"と応答するように、各フレームワークで極力同じように書きます。FalconはCythonに公式に対応していますが、今回はCythonを使用していません。 Bottle import bottle app = bottle.Bottle() @app.route('/<name>') def index(nam
PythonのWebフレームワークで間違った選択をすることは非常に困難であると、Pyramidのintroductionページに記載されています。調査した結果まったくもってその通りだという結論に至りました。2015年12月に個人でWebサイトを構築する時に、どのWebフレームワークで構築するかで迷いに迷いました。この記事はそのときの検討メモです。 速度 みんな大好きTechEmpower Web Framework Benchmarksで速度比較。サーバ費用をケチって運用費をとにかく下げたいので、その時点で重大長厚なdjangoは検討対象から外れました。bottleはやはり早い。 Webフレームワーク Yes/Noチャート Yes/Noチャートにまとめてみました。ログイン機能は構築しないためSessionは必要ありません。シンプルで学習コストが低く高速に動作するFlaskで構築することにし
ISUCON の季節ですね。 ISUCON では慣習的に各言語で代表的なマイクロフレームワークが使われるのですが、 Python では今のところ Flask がずっと使われています。 Flask は確かに、簡単なサンプルアプリを書くときの見た目はマイクロフレームワークになっています。 しかし、構造的には沢山のフック、シグナルがあったりしていて、重量級の設計になっています。 Flask 本体と Werkzeug を合わせると数万行のサイズです。単なる Hello World アプリでも、数十の関数呼び出しが裏で動いています。 Bottle も、 Flask と同じくマルチスレッド対応で、スレッドローカルを使ったコンテキストスタックがある、拡張機能もあるフレームワークですが、構造は Flask よりも大分質素です。 ソースコードも1ファイル3000行代で、その分フレームワークのオーバーヘッドも
TL;DR libcのように実行もできる共有ライブラリを作成する方法まとめ 基本的には共有ライブラリのビルドに -pie -rdynamic を付加すれば良い。 $ /lib/x86_64-linux-gnu/libc-2.19.so GNU C Library (Ubuntu EGLIBC 2.19-0ubuntu6.6) stable release version 2.19, by Roland McGrath et al. Copyright (C) 2014 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PA
Posted on January 30, 2015 at 23:16 (JST) Spring Bootで実行環境ごとに値を切り替える方法について記述します。 DB接続情報やキャッシュのON/OFFなど、開発時と本番稼働時に設定を切り替えたい設定が多々あります。 Spring Bootでは上記のような用途に対し、Profileという仕組み(概念)を用意しています。 作成したサンプルはGithubにて公開しています。[ simple-mvc-app-env-val ] application.ymlの分離とProfileの指定 [設定ファイルの用意] まず、Profile名を決めます。今回は下記にしました。 開発環境: dev 本番環境: production 次に、設定ファイルを用意します。 resources/configディレクトリを作成し、その下に3ファイル用意しました。 [ ap
はじめに この記事自体は随分古くなったものの、未だに時々proxyに心を折られた方からいいねを頂くことがある。 そして、現在では遥かに優れた素晴らしい記事を書かれている方がおり、より簡単にproxyとの戦いに終止符を打つことができるようになった。是非そちらを参照頂きたい。 概要 通常、proxy環境下においてクライアントがproxyを通過して外部ネットワークに(間接的に)アクセスするには、環境変数http_proxy等、明示的に設定を行う必要がある。 しかし、ソフトウェアによっては設定方法が違ったり対応していなかったり、そもそも環境変数を差し替えるのが難しい状況があったりして、このあたりが問題で作業に支障をきたしているような状況を最近良く見る。 規則違反(あるいはセキュリティインシデント)になってもよければ踏み台を準備するなど対処方法はいくらでもあるが、そこは規則を遵守したい。 そこで、T
初稿ではAVX2による効果ではないかと記述をしておりましたが、stitchedではなく、multi bufferのサポートやその他要因が混合しており数値検証が完全ではないという指摘をいただきました。 記事内容の訂正を行います。検証が不十分なままの掲載となり申し訳ございません。また、数値や技術的な裏付けは今後再検証を進めていこうとおもいます。 サイトオペレーション本部(*1)を兼務させていただいている匿名希望の社員Mです。 私はハードウエアとソフトウエアの両面から指数関数的に増えるデータ処理にコツコツ対応する仕事をやっております。 今回の取り組みは以下の投稿に影響を受けた取り組みです。 Accelerating SSL Load Balancers with Intel® Xeon® v3 Processors https://software.intel.com/en-us/article
CentreCOM GS908M (RoHS) 価格比較 ホーム > パソコン > スイッチングハブ(ネットワークハブ) > アライドテレシス(Allied Telesis) > CentreCOM GS908M (RoHS) アライドテレシス CentreCOM 2009年 4月 3日 登録 CentreCOM GS908M (RoHS) お気に入り登録 2 最安お知らせメールが受け取れます 価格情報の登録がありません 価格推移グラフ お気に入り製品に登録すると、価格が掲載された時にメールやMyページでお知らせいたします 価格帯:¥―~¥― (―店舗) メーカー希望小売価格(税別):¥64,800 ポート数:8 メーカー製品情報ページ スイッチングハブ(ネットワークハブ)の人気売れ筋ランキング ―位 5.00 1人 1件(2011年 7月 2日更新) この製品をキープ ピックアップリスト
インテル コンパイラーの特徴の1つに「自動ベクトル化」がある。これはSSE(Streaming SIMD Extensions)と呼ばれるCPUの機能を利用することで数値演算の高速化を図るものだ。インテル コンパイラーは最新のCore i7といったCPUに搭載されているSSE4.2に対応しており、現行のほとんどのインテルCPUにおいて高速化が期待できる。本記事では、インテル コンパイラーでのSSEの使用と、その効果について解説する。 インテル コンパイラーには生成するプログラムの処理速度を向上させるためのさまざまな機能が備えられているが、その1つに「自動ベクトル化(Auto vectorization)」というものがある。これは、forループなど同一の演算を繰り返すような処理を、インテル製のCPUが持つ「SSE(Streaming SIMD Extensions)」という命令群を利用して複
ニーズがあるのかさっぱりわからない機械学習超入門だけどひっそり続けていきたい。 前回は識別関数の基礎であるパーセプトロンの簡単な説明とPerlによる実装を解説した。実はこの時点でかの有名なSVM(Support Vector Machine、サポートベクターマシン)もほぼ完成していたのだ!というわけで今回はSVMをPerlで作ってしまうお話。 参考: これからはじめる人のための機械学習の教科書まとめ - EchizenBlog-Zwei 機械学習超入門 〜そろそろナイーブベイズについてひとこと言っておくか〜 - EchizenBlog-Zwei 機械学習超入門II 〜Gmailの優先トレイでも使っているPA法を30分で習得しよう!〜 - EchizenBlog-Zwei 機械学習超入門III 〜機械学習の基礎、パーセプトロンを30分で作って学ぶ〜 - EchizenBlog-Zwei さて
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く