Rhythm & Biology

Engineering, Science, et al.

Spring Boot: 複数DB利用時に初期化が期待通りに行われない問題と解決法

概要 複数DB利用時、初期化スクリプト(schema.sqlやdata.sql)が適切に実行されないという問題が発生。 具体的には、@Primary指定したDataSourceでは実行されるが、それ以外では実行されずテーブル作成などの初期化処理が行われないというもの。 調査の結果…

Firebaseの認証情報を外部に移行する

Firebaseでプロダクトを作ってたけど、色々キツくなって、やはりAWSに乗せ替えたいという話をよく聞く。 EC2の上に普通にアプリケーション組んでRDSにデータを移行すれば済む話だが、Firebase Authenticationのデータ移行ができない問題にぶち当たる。 どう…

IntelliJ: Could not determine Java version using executable ...

macbookのロジックボードが壊れて修理に出したため、開発環境がすべて消え去ってしまった。 IntelliJでJavaを書くための環境を再セットアップしようとしたところ、gradleのバージョン問題でちょっとつまづいたのでメモ。 環境 macOS Sierra 10.12.6 IntelliJ…

Solrに入門する

文書検索のシステムを導入しようとしており、詳しい人に相談したら、まずはSolr試そうという話でまとまって帰って来た。 今回の要件にSolrはマッチしないだろうな、というなんとなくの両者コンセンサスはあるが、仮にマッチしたら楽で済むし、マッチしないに…

Swift: typealiasのスコープ

Type Aliasのスコープってどうなってるんだろうという単純な疑問。 ドキュメントを見ても書いてない(見てるところが違う?)。 The Swift Programming Language (Swift 4.0.3): Declarations 通常の変数と同じスコープ管理されてるだろうという仮説のもと、…

2018年 Rustチャレンジ

2018年に新しく学ぶ言語としてRustにチャレンジしてみる。 Rustのドキュメント(邦訳)を見ながら進める。 http://rust-lang-ja.github.io/the-rust-programming-language-ja/1.6/book/ ドキュメントの本家はこっち。 https://doc.rust-lang.org/book/ 環境…

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

ファイルの先頭から指定行数ぶん取り除きたいことがよくある。 例えば固定行数のヘッダがついており、それを除去したい場合。 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); } なんて書…