Rhythm & Biology

Engineering, Science, et al.

ファイルの先頭を指定行数ぶん読み飛ばす

ファイルの先頭から指定行数ぶん取り除きたいことがよくある。 例えば固定行数のヘッダがついており、それを除去したい場合。 tailコマンドを使えば簡単にできるが、他にどんな方法があるか色々試してみた。 8行のファイルを用意し、最初の3行を読み飛ばす。…

Python3.xでLocustを使う

現状、LocustはPython3.xには対応しておらず、2.xで利用しなければならない。 ただ、Python3.x対応版も準備されていて、それを利用することが可能。 普通にpipでLocustをインストールすると、locustio-0.7.5が入る。 $ pip install locustio ...(中略)... Su…

Zabbix 3.0 LTSの構築(Proxy利用)

Zabbix 3.0 LTSの構築手順。 バージョン番号的には3.4が最新だが、実利用上はLTSである3.0のほうが都合が良い。 https://www.zabbix.com/download 公式ドキュメントはここ。 Zabbix Manual [Zabbix Documentation 3.0] 構成 今回は、Zabbix Server、Zabbix P…

CentOS7でPacemaker×Corosyncを動かす

公式資料(ClusterLabs)を参考に構築していく。 ClusterLabs - RHEL 7 Quickstart Clusters from Scratch RedHat社の資料も役に立つ。 第1章 Pacemaker を使用した Red Hat High Availability クラスターの作成 High Availability Add-On の概要 仮想マシンの…

gulp-sass-variablesで環境ごとの変数の値を変える

環境によってCSSの中身を切り替えたいということがある。 たとえば、background画像のURLを、開発環境ではローカル、本番環境ではCDNのものにするといった場合である。 gulp-sassを使っている場合は、gulp-sass-variablesを利用するとこれが実現できる。 www…

DNAストレージの容量

digital universe(地球上で生成されるデータ全体)は、2017年に16ゼタバイトと予測されている。 一方で、保存可能なキャパシティはすでに生成されるデータに間に合わなくなっている。 http://www.idc.com/downloads/where_is_storage_infographic_243338.pd…

loader.ioを試す

loader.ioはWebサイトの負荷テストをしてくれるサービス。 制限つきだが、無料で使えるので試してみる。 https://loader.io/pricing ユーザ登録してログインすると、まずこのような画面になっている。 New Hostで先に進むと次はこのような画面。ここにテスト…

macにLaTeXiT環境を整える

新しいmacbook proに買い換えてからLaTeXiT環境を整えていなかったので整備。 LaTeXiTがあれば資料に貼る用の綺麗な数式を簡単に作れる。 まず、brew(cask)にLaTeXiTがあるか調べたらあったのでそれを入れてみた。 $ brew search latexit caskroom/cask/late…

odeintでMAPK cascadeのシミュレーション

odeintを試す題材としてMAPK cascadeのモデルを利用してみる。 成果物はここ → GitHub - mythosil/odeint-mapk モデルの入手 モデルはBioModelsから取得。 BIOMD0000000010 - Kholodenko2000 - Ultrasensitivity and negative feedback bring oscillations i…

Weld: Java SE環境でCDI利用

Java EEのアプリケーションコンテナを利用せず、Java SE環境でCDIを利用する方法。 CDIコンテナにはWeldを利用。 ソースコード pom.xml

WildFly: JBoss Forgeによるアプリケーション開発

環境 Mac OSX 10.9 Eclipse Luna Red Hat JBoss Developer Studio (Luna) 8.0.0.Beta3 Eclipse Market Placeからインストール プロジェクト作成 Forge Consoleを開きます Show View → Forge Console 緑の▶ボタンを押して起動 Forge 2.7.2.Finalを起動 (1.4.4…

WildFly: Arquillianを利用したテスト

WildFly+Arquillianでテストを実行してみたログ 環境 Mac OSX 10.9 NetBeans 8.0 WildFly 8.1.0.Final プロジェクト新規作成 新規プロジェクト → Maven → Webアプリケーション プロジェクト名: arq-base パッケージ: com.mythosil.arqbase サーバ: WildFly J…

WildFly: ポート番号の変更方法

ポートを変更する方法を何種類か、備忘録 デフォルト HTTPポート: 8080 管理ポート: 9990 起動時にポート番号指定 HTTPポート: 18080 管理ポート: 19990 $ ./standalone.sh \ -Djboss.http.port=18080 \ -Djboss.management.http.port=19990 起動時にオフセ…

WildFly: MySQLをデータソースとして利用 (CLI設定)

CLIツールにこだわって、WildFlyへのMySQLのドライバインストール、データソース追加までやってみます。 WildFlyのバージョンは8.1.0.Finalです。 ドライバのダウンロード WildFlyにはドライバは標準ではついてこない(?)ため、ダウンロードしてきます。 $ cd…

WildFly: デプロイ時のnameとruntime-nameの役割

WildFlyへのCLIツールを利用したデプロイ時に--nameオプションと--runtime-nameオプションがあり、それぞれが何を意味しているのか分からなかったため、実験しつつ調べてみました。 まずはヘルプを読む ざっくり把握した内容 nameはユニークでなければならな…

WildFly 8.1.0.Finalのインストールからアプリケーションのデプロイまで

環境 MacBookAir MacOSX 10.9.3 インストール ダウンロードしてきて展開するだけ $ curl -LO http://download.jboss.org/wildfly/8.1.0.Final/wildfly-8.1.0.Final.tar.gz $ tar xvfz wildfly-8.1.0.Final.tar.gz 起動 standalone.shを実行するだけ $ cd wil…

Dockerでapacheを動かす

Dockerのコンテナでapacheを動かすまでのメモ 環境 Mac OS X 10.8 Ubuntu 12.04 (Vagrant) Ubuntu 12.04 (Docker) ファイル構成 vagrant$ find . . ./Dockerfile ./htdocs ./htdocs/index.html vagrant$ cat htdocs/index.html <html> <body> <h1>Hello Docker!</h1> </body> </html> Dockerfil…

さくらVPS(CentOS6.4)でDockerを使う

Docker 0.7からaufs以外のstorage driverがサポートされてCentOSでもDockerが使えるようになりました。 aufsがサポートされていなければ、起動時にdevicemapperを利用してくれるとのことです。devicemapperもサポートされていなければvfsを利用。CentOSにはe…

選択文字列を検索するChrome Extension

選択文字列をキーバインド一発でYahooなりGoogleなりで検索する方法が無いかなと思って探してみたけれども、意外と見つからなかったので作ってしまいました。Chromeのデフォルトの機能として、選択文字列を右クリックすれば検索するメニューが表示されますが…

oil refine install時に"It is not safe to rely on the system's timezone settings"と出る場合の対処法

FuelPHPのプロジェクト作成時に $ oil refine installとしたら以下のようなエラーが表示されるようになりました。 Fatal error: Uncaught exception 'Fuel\Core\PhpErrorException' with message 'date(): It is not safe to rely on the system's timezone …

GitLabのインストール

さくらVPS(CentOS)にGitLabをインストールした際のメモ。参考:https://github.com/gitlabhq/gitlabhq/blob/stable/doc/installation.md yum 今回はDBにsqlite3を利用するため、あらかじめyumでインストールしておきます。 その他、gitは当たり前として、wge…

FuelPHP入門を読んだ

今月はじめに発売されたばかりのFuelPHP入門を読みました。 といっても、前半の半分を読んで、残りはまだざっと目を通した程度です。 まだ情報も少ない中で、これだけまとまった情報が得られるのは非常に貴重だと思います。 1.1をベースに書かれていますが、…

FuelPHPを動かす

インストール FuelPHPをインストールする方法は2種類あるようで、1つはoilコマンドというものを使う方法。2つ目はzipでダウンロードしてくる、もしくはgit cloneする方法。 oilコマンドを使ってインストールするには、 $ curl get.fuelphp.com/oil | sh $ cd <document_root></document_root>…

jQueryのgetJSONでハマった

JSONPのAPI叩くときにjQueryのgetJSONは非常に便利ですが、 var url = "http://some/where?callback=?"; var param = { q: query, callback: callback, // NG }; $.getJSON(url, param, callback); function callback(json) { console.log(json); } なんて書…

Perlで手軽に非同期TCPサーバ

yokohama.pmに行ってきて、またperl熱が上がってきたので、久しぶりにコード書いてみた。 AnyEvent::TCPServer AnyEvent::Socketを使って非同期サーバ書こうとすると色々面倒くさかったりするので、もっと手軽に書けるモジュールを作ってみました。こんな感…

AES128暗号化 - Java編 -

先日iPhone(というかObjective-C)でのAES128暗号化について触れましたが、今回はJava編です。未確認ですが、おそらくAndroidでも動きます。 /* * $ javac CryptAES.java * $ java CryptAES <secret_key> <iv> <message> */ import java.security.spec.AlgorithmParameterSpec; import </message></iv></secret_key>…

iPhoneでAES128暗号化

ios

iPhoneアプリ開発で暗号化を行う必要が出てきたので、試しに書いてみました。 暗号方式にはAES128を、Padding方式にはPKCS7を使っています。ここで使っているCommonCryptoはiOS SDKについてくるものですが、mac上でも普通に使うことができます(iPhone Simula…

libeventでHTTPサーバを試す

libeventに含まれるevhttpを使って、簡単なhttpサーバを作ってみました。 404を返す まずは404 not foundを返すコードを書いてみます。ただし、GET以外のメソッドの場合はBad Requestを返すようにします。 #include <stdio.h> #include <stdlib.h> #include <errno.h> #include <event.h> #include <evhttp.h></evhttp.h></event.h></errno.h></stdlib.h></stdio.h>…

libeventでタイマー処理をする

libeventでタイマー処理をする方法について書きます。 まずは3秒後に指定の関数を呼ぶコードです。 #include <stdio.h> #include <sys/time.h> #include <event.h> void say_hello(int fd, short event, void *arg) { printf("Hello\n"); } int main(int argc, const char* argv[]) { struc</event.h></sys/time.h></stdio.h>…

libeventでechoサーバをつくってみた

memcachedで使われていることで有名なlibeventを試してみました。 以前libevを試したことがあるのですが、libeventの方が少し書きやすいという印象です。パフォーマンスに関してはlibevのほうが上という噂ですが。libeventやlibevに関して少し説明しておくと…