まだ重たいCMSをお使いですか?
毎秒1000リクエスト を捌く超高速CMS「adiary

2008/01/15(火)Apache 2.2/worker で ServerLimit が効かない?

PerlInterpMaxを解析後、正しくApacheに ServerLimitを設定しているにも関わらず、またデータベース接続エラーが。ps ax すると、httpd(Apache)のプロセスが9個ぐらい起動してました(汗*1

あれバグ? それとも仕様??

検索してみても、同様の報告しかみつかりませんでした*2。調べてみると

    MaxRequestsPerChild   1000

を越えたときに、古いプロセスがうまく殺せていないようです。mod_perl が影響しているかどうかは不明です。とりあえず、MaxRequestsPerChild 0 にして様子をみようと思います。

*1 : サービスを受付ない親プロセスが1つ多く起動しますが、それは除く

*2 : このサーバはSolarisではないですが

推測

MySQL環境で同様の設定もしても再現しないことから、おそらく PostgreSQL で Connection を永続させているため、ネットワークコネクションがすべて切れない(Apacheがコネクション=クライアント接続中)と勘違いしてプロセスが Kill されないせいと思われます。*3

PostgreSQL への接続に UNIX ドメインソケットを使っているせいでタイムアウトの設定ができない(汗

*3 : MySQLではコネクションを永続させても、MySQL側が自動的にタイムアウトをして接続を切る。

2008/01/14(月)Ver1.44パッチ集

adiary 1.44の中で問題が多そうなバグのパッチのみを集めて配布します。

パッチ集

patch-for-1.44.lzh

  • 【fix】はてなスターがつけられない問題を修正しました。(Thanks to ひとぅ)
  • 【fix】印刷用の表示で画像が表示されない不具合を修正しました。([ml:users:162:Thanks to 小沼])

Ver2.00β

すこしずつ準備中ですが、システムの中心に手を入れるため(表向きの部分はさほど変更はないのですが)手間取ることが予想されます。ご迷惑をおかけしますが、しばらくはパッチという形でご理解頂ければ幸いです。

2007/12/26(水)AGPLv3 第13条の日本語訳

AGPLv3は、第13条以外はGPLv3とほとんど相違ないとのことなので、第13条のみ翻訳(not 直訳)しました。翻訳の正確さは一切保証しません。突っ込みはどうぞ。

13 リモートネットワークにおけるやりとり(GNU GPLと共に)

13. Remote Network Interaction; Use with the GNU General Public License.

Notwithstanding any other provision of this License, if you modify the Program, your modified version must prominently offer all users interacting with it remotely through a computer network (if your version supports such interaction) an opportunity to receive the Corresponding Source of your version by providing access to the Corresponding Source from a network server at no charge, through some standard or customary means of facilitating copying of software. This Corresponding Source shall include the Corresponding Source for any work covered by version 3 of the GNU General Public License that is incorporated pursuant to the following paragraph.

このライセンスの他の規定にかかわらず、あなたがプログラムを変更した場合、コンピューターネットワーク(またはあなたの改変したプログラムがサポートするやりとり)を介してすべてのやりとりを行うユーザーに対し、このプログラムはあなたが変更したバージョンであり、標準的または慣例的なソフトウェアコピー手段により、無料のネットワークサーバから対応するあなたが変更したバージョンのソースコードにアクセスし受信できることを目立つ場所に掲示しなければならない。GNU GPLv3によって保護される任意の著作物に対応するソースは、以下の項目に従うものとする。

Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the work with which it is combined will remain governed by version 3 of the GNU General Public License.

このライセンスの他の規定にかかわらず、あなたはGNU GPLv3の元でライセンスされ保護された著作物を結果としての単一の著作物となるようにリンクまたは内包することを許可する。その際、このライセンスの条件は、保護された著作物の一部に対して引き続き適用される。しかしながら、複合物の残りの部分(残りの著作物)については、GPLv3によって決定される。

注意

ちょーいい加減な訳ですので、あしからず。