Code Archive Skip to content Google About Google Privacy Terms
1.はじめに Webアプリケーション開発の現場で使用されている開発言語には、Java、Perl、PHP、最近であればRuby、Pythonなどがあります。この分野ではC言語も、CGIによるWebアプリケーション開発で旧来から用いられていますが、最近の開発者にはあまり馴染みがないかもしれません。当時の新技術であったJavaと比較して、あまりにも遅い結果が出ていたからとも言われています。 しかし、Webサーバの「Apache」、データベースの「PostgreSQL」「MySQL」、OSの「Linux」など、各所でオープンソースソフトウェア(OSS)の開発言語には、依然としてC言語が多く用いられています。このようにC言語は、Webアプリケーション開発の現場で使われるケースは減ったものの、現在でも重要な開発言語の一つです。 そこで今回は、Apache 2.2のmod_dbdで実装された「データベー
なんか、2/6 の夜に「修士論文の代わりに退学願を提出してきた」が Twitter でばずったらしく、Yahoo 砲よろしく突如としてアクセスが集中しました。下の方にリソースモニタリングのグラフを貼りつけてますが、今までがほぼ 0 に見えてしまうくらいに来てたのでびっくりでした。 まぁ色々コメントつけて頂いたりしてますが、もう2 年も前なんでこのエントリについて今更僕から突っ込むことは無くて、あのエントリはあのエントリとして見て頂ければと思います。ここでは今回そんな突然のアクセス集中にも見事耐えてくれたさくら VPS に感謝しつつ、アクセス集中の状況を鯖管的立場から分析してみましょう。 ちなみに、以前エントリに書いていますがサーバの構成としてはさくら VPS1 台で、CentOS+Apache+mod_fastcgi+PHP-FPM+MySQL5.5(InnoDB)で WordPress
※2011年11月30日 追記 Tomcat 7、Solr 3.5.0でのインストールを試してみました。 DebianにOpenJDK + Tomcat 7 + Solr 3.5.0 の環境を構築する 以前、Apache Solr をインストールしてみましたが、 その後放置してました。 Debianで全文検索サーバー「Apache Solr」を動かす http://symfoware.blog68.fc2.com/blog-entry-131.html 改めて調べてみます。 Tomcatの導入 前回はSolr同梱のjettyで動作させましたが、今回はTomcatで 動かしてみようと思います。 ※Tomcatの方が経験が多いので。 Javaはインストール済の前提で話を進めます。 今回はJava1.6.0_16を使用しました。 Tomcatのダウンロードは Tomcat 6 Downloads
オープンソースの分散データベース管理システムApache Cassandra Projectは2月18日、Apache Software Foundationのトップレベルプロジェクト(TLP)として承認されたことを発表した。 Cassandraは米Facebookが開発したデータベース技術で、2008年にオープンソースプロジェクトとなった。Facebookはオープンソース化にあたってコードをASFに寄贈、これまでインキュベータプロジェクトとしてホスティングされていた。 Amazonが開発する分散データベースシステム「Dynamo」の完全な分散設計と、Googleが開発する分散データベースシステム「BigTable」のColumnFamilyベースデータモデルを合わせ、拡張性の高い第2世代の分散データベース開発を目指す。CassandraはFacebookのほか、Rackspace、Dig
SSOの構成 SSOを実現するシステムは、一般的にリバースプロクシ型とエージェント型に分類されます。この分類に従えばOpenSSOはエージェント型です。 しかし一般的なエージェント型から受ける印象とは少し違い エージェントに相当するモジュールがpolicy agentとして提供されているので(apacheのモジュールやtomcatのフィルタ)、対応済みのWebサーバやアプリケーションサーバであればSSO対象Webアプリにエージェントのコードを組み込む必要はありません (後述するように)policy agentをモジュールとして組み込んだapacheをリバースプロクシにすれば、リバースプロクシ型としてOpenSSOを動かせます 個人的に、この分類はそれほど重要だとは思っていません。より重要な分類は、SSO対象アプリ側のコードに「手を入れる必要があるか否か」の分類の方です。これは後述します。
ApacheのFilterモジュールを作った話しをしたらid:c9katayamaに情報公開しろと言われたままでしたので公開します。 C言語の勉強しようかな、Apache2.xのモジュールを作ってみようかな、gdb使ってデバッグしてみようかなと考えてた人にお勧めです。 JavaでのServletの開発経験のある人であれば、Filterの処理の動きやリクエストコンテキストの考え方は分かり易いはずなので、エントリを読み終わる頃にはApacheのモジュールをgdbでデバッグしながら作る事が出来るはずです。 mod_orzを作成 今回はmod_orzというApacheモジュールを作成します。 Apacheモジュールを作成する際には、apxsというモジュール開発用のコマンドを使用しテンプレートを作ります。 # apxs -g -n orz Creating [DIR] orz Creating [F
Apacheをシングルプロセスで立ち上げる Apache ハンドラーを開発しているときなど、httpd を 直接 gdbにかけたい場合、シングルプロセスで起動するとデバッグしやすい。 具体的には下記のように、「-X」オプションをつけて、apacheを起動します。 ブレークポイントをソース中に設定する gdbで、”’break 30”’とかやってもいいが、ソース中でbreak pointを設定することもできる。 特定の条件下の場合のみbreakさせたい場合などに便利。 signal.hをincludeしてSIGTRAPを投げるとbreakする。 サンプルコード #include <stdio.h> #include <signal.h> int main() { printf("a\n"); raise(SIGTRAP); printf("b\n"); return 0; } 参考書籍
Netcraft - Internet Research, Anti-Phishing and PCI Security Services Netcraftは2009年5月におけるWebサーバシェアを発表した。5月はMicrosoftがシェアを落とし、ApacheやGoogle、nginxがシェアを伸ばした。シェアの変動はあるものの、Apache 1位とMicrosoft 2位の構図はかわっておらず、ほかのWebサーバを引き離してシェアを確保している。 配置ベースでみたシェアランキング Apache (46.49%↑) Microsoft (28.35%↓) qq.com (12.25%↓) Google (3.68%↑) nginx (2.69%↑) アクティブサイトベースでみたシェアランキング Apache (48.89%=) Microsoft (35.69%↓) Google (9
目次 目次 気持ちのいいウェブプログラミング Wicketの使いどころ Wicketの考え方 まずはダウンロード インストール おなじみの設定 - Javaサーブレットとしての設定 Wicketアプリケーションの作成 Pageクラスの作成 Wicketのモデルとモデルオブジェクト モデルへの値のセットと検証 フォーム全体の検証 メッセージを変える フォーム毎にメッセージファイルを持つ まとめ 次回は... ご意見などは... 気持ちのいいウェブプログラミング このページでは、ウェブ・アプリケーション・フレームワークWicketの使い方について紹介します。Wicketの特徴は「HTMLとJavaだけですべてが完了する」ということでしょう。 Struts以降、ほとんどのウェブ・アプリケーション・フレームワークはJSP + Java + XMLで構成されて
完全先取り! iPod touch開発 第4回:夢のオフラインRSSリーダを作ろう! 著者:masuidrive 公開日:2007/12/4(火) iPod touchでオフラインモードを持ったRSSリーダを作る 「第3回:iPod touchで動作するテキストエディタはこう作る!」では、非公認SDKとObjective-Cの組み合わせで簡単なテキストエディタを作ってみました。iPod touchでのアプリケーション開発は、ほとんどの人が触れたことのないObjective-Cを使用し、さらにAPIのリファレンスがないといった、非常に敷居が高い状況です。このため、実用的なアプリケーションを作るのは困難でした。 そういった意味でAppleがSafari上で動作するWebアプリケーションを推奨することは、iPhoneやiPodの可能性を高める上では、良い戦略なのかもしれません。しかしiPod t
今回は、Webサイトやサービスをメンテナンス中にする場合に、どのURLにアクセスしても「メインテナンス中です」の画面を出す正しいやり方を、人間にも検索エンジンにも適切にする作法を主眼に解説します。 この週末の土曜深夜~日曜早朝にかけて、データセンターの設備メインテナンスのため、Web担を含むインプレスグループのほとんどのWebサイトが、どのURLにアクセスしても「メンテ中です」という表示になっていました。 なのですが、その実装がちょっと気になったので、「正しいメンテナンス画面の出し方」を説明してみます。 ※2010-01-16 Retry-Afterを指定するHeaderの指定を修正しました(コメント参照) ※2009-06-17 RewriteCondから [NC] 条件を削除しました(コメント参照) ※2009-06-16 Retry-Afterの記述をGMTに変更しました(コメント参
認証APIについていろいろ調査をしていて、TwitterAPIでPOST系APIで認証にBasic認証を利用している箇所で、どうやって実装しているんだろう?という話になりました。「まさか全ユーザの情報を.htpasswdファイルなんかに格納しているはずは無いだろうに。。。」と思いながら調べていると、Basic認証のユーザ情報を既存のMySQLのDB/Tableと統合するためのApacheモジュール「mod_auth_mysql」なるものを発見しました。この利用方法について、まとめてみたいと思います。 MySQL以外もOK 普段はRDBMSにはMySQLを利用しているので、mod_auth_mysqlについて調査をしていましたが、他のRDBMS用にもモジュールは用意されているようです。たとえば、Apacheのmoduleの公式サイトで「mod_auth」で検索すると、mod_authn_db
ab(apache bench)はApache HTTP Server付属のbenchmarkツールだそうです.いままでWebの案件では付加テストなどを求められたことがなかった(たぶん必要もなかった)ので初めて使うことになりました GETでのリクエストはあっさりできたのですが,POSTをどうすればよいのかわからず.検索するもののなかなか探せませんでした.というわけでメモ pオプションでPOSTするデータが入ったファイルを指定.-TオプションでContent-typeを指定します % ab -n 10 -c 10 -p postdata.file -T "application/x-www-form-urlencoded" http://localhost/ この場合のpostdata.fileの中身はこんな感じ.GETのときにURIに付加される文字列と一緒ですね.URLエンコードが必要だと
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く