これはJava Advent Calendar 2014の6日目の記事です。 昨日はbiblichorさんの「Jersey2×SpringSecurityのハマりポイント三選」でした。 Webシステム等、多数の処理を同時に行う場合、処理に使用するリソース毎に同時に処理ができる上限値を決めたくなることがあります。 たとえば、某拝承系SIerが開発しているCosminexusではURL毎に同時アクセスの最大数を設定でき、同時アクセス数を超えた場合はキューに溜めるという機能が存在します。 http://itdoc.hitachi.co.jp/manuals/link/cosmi_v0870/APSE/EU030187.HTM このようなエンタープライズなアプリケーション・サーバーを使わなくてもJavaではjava.util.concurrent.Semaphoreを使用することで、単純なアクセス