サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
GPT-4o
dreammind.hatenadiary.org
C++を使って作成した共有ライブラリをJavaから簡単に利用する方法を紹介します。JNI(Java Native Interface)を使うよりはるかに簡単です。 用意するものは、jnaerator: http://code.google.com/p/jnaerator/ です。 jnaeratorは、JNA(Java Native Access): https://jna.dev.java.net/を利用して簡単に共有ライブラリへのアクセスを実現しています。 C言語についてのJavaから共有ライブラリへのアクセスの情報はいろいろとあったのですが、C++を使った共有ライブラリの情報が少なかったので、この記事を書きました。 C++のソースを作成. ここは定番のHelloWorldでしょうか。 $ vi HelloWorld.h #ifndef _HELLO_WORLD_H_ #define
ConcurrentHashMapとmemcachedとjdbcの性能比較を行いました。memcachedのクライアントライブラリは、com.dangaとnet.spyの両方で実施しました。 計測は、それぞれ100万件のデータを生成したり、読み取った時間です。単位はmsecです。 対象 Create Bulk Create Read Bulk Read ConcurrentHashMap 4,586 --- 859 --- Memcache(com.danga) 422,290 216,359 592,190 90,960 Memcache(net.spy) 60,074 --- 425,191 49,515 jdbc(mysql) --- 88,974 654,895 11,554 計測時の注意点を列挙します。 com.dangaのmemcachedの「Bulk Create」は、複数ス
rails2.3.2でmemcachedにセッション情報を保存する方法が少し変わったのでメモを残します。 セッション関連の設定は、config/initializers/session_store.rbに記述します。 ActionController::Base.session = { :memcache_server => 'memcachedのサーバ名:11211', :expire_after => 86400, :namespace => "あなたのrailsアプリ-#{ENV['RAILS_ENV']}", } ActionController::Base.session_store = :mem_cache_store 以前の設定方法よりシンプルになりましたね。
rubyのTimeout::Errorにはまってしまったので、記録しておきます。 net/httpを使ってWebサーバに接続するデーモンプログラムを書いていました。例外はすべてキャッチするつもりでrescueを書いていました。 require 'net/http' begin Net::HTTP.start("www.foo") do |http| ... end rescue =>e # エラータイプを省略 ... end しかし、net/httpではTimeout::Error例外を発生させるではありませんか。 しかもさらに悪いことに、接続先のサーバはめったにタイムアウトしないのでTimeout::Errorが発生することに気がつきませんでした。 いろいろ調べてみると、 rescueはエラータイプを省略するとStandartErrorのサブクラスの例外を捕捉する Timeout::Er
selinuxをEnforcingにしたFedora 10で、passenger(mod_rails for Apache)を動かす方法を記述します。 動作確認した環境は次のとおりです。 OS:Fedora 10 Selinux: Enforcing passenger:2.1.2 全体の手順は以下のとおりです。 selinux関連の必要なパッケージをインストール passenger用のselinuxのポリシーをインストール passengerのインストール httpdを起動 1. selinux関連の必要なパッケージをインストール $ yum install selinux-policy selinux-policy-targeted 2. passenger用のselinuxのポリシーをインストール 1)passengerが利用するselinuxのポリシーを作成 $ mkdir /et
古いバージョンのrailsのscaffoldで生成したviewのコードがうまく動作しなかった。 1. link_toの引数が変更されていた。post=>trueではなく、:method=>:postが正解。 間違い <%= link_to 'Destroy', {:action=>'destroy', :id =>foo }, :confirm => 'sure?', :post=>true %> 正解 <%= link_to 'Destroy', {:action=>'destroy', :id=>foo}, :confirm=>'sure?', :method=>:post %> 2. end_form_tagがなくなっており、start_form_tagでは、do,endのブロックの記述が必要。 間違い <%= start_form_tag :action=>'update', :i
1. memcachedのインストールと環境設定 % yum -y install memcached % /etc/init.d/memcached start % chkconfig memcached on #memcachedのデフォルトポート(11211)を開ける % vi /etc/init.d/iptables % /etc/init.d/iptables restart 2.memcache-clientのインストール % gem install memcache-client 3. railsのmemcachedの設定。environment.rb # Be sure to restart your web server when you modify this file. ... ENV['RAILS_ENV'] ||= 'production' ... # memca
このページを最初にブックマークしてみませんか?
『dreammind.hatenadiary.org』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く