tamuraです。
blogをhexoでやってみることにしました。
tamuraです。
Common Lisp用のSQLライブラリを作りました。 業務用アプリなどSQLをガリガリ書く人におすすめです。
tamuraです。
最近、CL-DBIでデータベースをコネコネしていたのですが、本格的なWebアプリを作ろうとしたらコネクションプールが必要なのではないかと思い、コネクションプールを作りました。
https://github.com/tamurashingo/cl-dbi-connection-pool
コネクションプーリングとは、データベースにアクセスする時、アクセスのたびに接続(コネクション)を確立するのではなく、あらかじめ一定数のコネクションを確立しておき、それを使い回す手法。データベースアクセスの負荷を減らすために用いられる。 http://e-words.jp/w/%E3%82%B3%E3%83%8D%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%83%97%E3%83%BC%E3%83%AA%E3%83%B3%E3%82%B0.html
tamuraです。
ローカルで開発しているときは問題なかったのに、 本番環境は reverse proxy を使っているので、 Thymeleafが生成するURLが違ってしまう場合がある、ということがあります。
/xxxx/app に来たアクセスを Tomcat の /app に横流しする
<Location /xxxx/app/>
ProxyPass ajp://localhost:8009/app/
ProxyPassReverse ajp://localhost:8009/app/
ProxyPassReverseCookiePath /app/ /xxxx/app/
</Location>
tamuraです。
ローカルで開発しているときは問題なかったのに、 本番環境は reverse proxy を使っているので、 JSFが生成するURLが違ってしまう場合がある、ということがあります。
/xxxx/app に来たアクセスを Tomcat の /app に横流しする
<Location /xxxx/app/>
ProxyPass ajp://localhost:8009/app/
ProxyPassReverse ajp://localhost:8009/app/
ProxyPassReverseCookiePath /app/ /xxxx/app/
</Location>
tamuraです。
spymemcachedでバックアップサーバを使わない方法についてまとめました。
失敗時の動作を再接続しないに定義します。
MemcachedClient client = new MemcachedClient(new DefaultConnectionFactory() {
@Override
public FailureMode getFailureMode() {
return Failure.Cancel;
}
}, AddrUtil.getAddresses("host1,host2,host3"));
String message = (String)client.get("key");
tamuraです
memcachedでクラスタリングをしたところ、思わぬ事象にはまりました。
spymemcachedの検証を行っていてその事象が発生したので、「spymemcachedこのやろ~」と思い他の言語のmemcachedクライアントのソースを見てみると、他の言語のクライアントもそのような動きをしていました。
幸いにしてspymemcachedはこのバックアップサーバを使うという動きを止められます。