オープンソースCMS「DotNetNuke」のセットアップ
前回はMicrosoft Web Platform Installerを利用して、DotNetNukeとWebMatrixをインストールする方法を紹介した。今回は、DotNetNukeのインストール方法を紹介する。
ブックマークされました!
ブックマークがエラーになりました。もう一度お願いします。
作者 Jean-Jacques Dubray , 翻訳者 金森 諭 投稿日 2008年3月25日
Dan Grossman氏(source)はワシントン大学の助教授でコンピュータ理工学部に在籍している。彼の研究内容にはプログラミング言語の設計、実装、理論が含まれる。
彼の講義の焦点は、プログラミング言語の意味論と実装におけるトランザクションの効果を探ることと、マルチスレッドのトランザクションがどれだけスケールできるかを研究することだ。
彼の講義の焦点は、プログラミング言語の意味論と実装におけるトランザクションの効果を探ることと、マルチスレッドのトランザクションがどれだけスケールできるかを研究することだ。マルチコアプロセッサにより並列コンピューティングが一般に広まったことで、並列処理プログラミングをより簡単に行いたいという要望が出てきました。ソフトウェアトランザクションは共有メモリの並列処理を簡素化する大きな可能性を秘めていて、ここ2年のうちに研究団体から非常に大きな関心を集めるようになりました。
彼はトランザクションメモリとガベージコレクションとの関係についておもしろい例え方をしている。
トランザクションメモリ(TM)が共有メモリの並列処理において担う役割は、ガベージコレクション(GC)がメモリ管理において担う役割のようなものです。
彼は並列処理プログラミングはメモリ管理が難しいのは正確性とパフォーマンスのバランスを取らないといけないためだと説明する。callerと callee(呼び出し側と呼び出された側)のように、双方ともバラバラには扱えずお互いを知っている必要がある、そして少しの変更のために大幅にコードを変更しないといけないこともしばしばだ、とも述べる。
彼はGCと同じように、TMについてもこれまで自前で作られていたプロトコルを言語の実装に組み入れるのが解決策だと提案する。一方で彼はTMが次のような問題を抱えているのも認識している。
並列実行不可能ということを近似で不正に得ることでメモリコンフリクトが起きる時があります
彼は3つの隔離性レベルに分けたソースレベルの形式意味論を紹介する。
彼はある誤認が世に広まっていることを示唆する。
”弱い”隔離性はロックを行うコードが複数実行された時にだけプロパティのロックを行うのです
続けて彼はキーとなる理論の証明をおこなう。それには以下のことも含まれる。
弱いワンロックができないことでも弱いアンドゥにはできることがあります。
講義の第二部はこれらの意味論をマルチコアシステムに適用することに費やされる。最初に、単一プロセッサが特別で重要なケースだと指摘することから始まる。彼はこう言及する。
- 共有メモリ経由のスレッド通信は実際には並列で行いません
- 多くの言語の実装ではこれが前提となっています
- マルチコアは一つのアプリケーションを一つのコアに割り当てることになるでしょう
単一プロセッサの場合、トランザクションメモリの強い隔離性にはほとんどコストがかからないとGrossman氏は述べる。メモリアクセスのオーバーヘッドはほとんどなく、ロールバックが起きることも稀だ。さらに書き込みにはログが残る。彼はまた、非トランザクションコードでパフォーマンスを上げるためのバイトコードレベルでの静的な最適化についていくつかの例を説明している。
Grossman氏のチームではマルチスレッドのトランザクションのケースについて取り組みを始めている。彼は人々が想定していることである重要な点についてこう問う。
ほとんどの(ハードウェアまたはソフトウェアの)実装ではトランザクション内のコードはシングルスレッド化されるのが条件とされていますが、隔離性と並行処理は直行性、つまり隔離することと並列処理できることは違うのです(そしてAmdahlの法則(Amdahl’s Law)がマルチコアを襲うでしょう)。
この条件によって実装がシンプルになるため、それなりの根拠はあると彼は指摘する。しかしコアの数が増えるにつれて、この条件のためにシステムのパフォーマンスが下がることになる。もしこの条件に縛られたくないなら、言語レベルでネスト・トランザクションを導入する必要がある。またログの並列化はスケーラビリティを実現する上での重要な問題のひとつだとも指摘する。彼はどの時点でAmdahlの法則(コア数が増えてもある比率でしか性能向上が見込めず、例えば16個のコアでは4倍しか向上しないという考え方)がネックになり、これまでに挙げた機能強化を施す必要があるだろうかと考えているが、それはコアの数が100単位になった時のことかもしれないと言っている。
原文はこちらです:http://www.infoq.com/news/2008/03/software-transactions
前回はMicrosoft Web Platform Installerを利用して、DotNetNukeとWebMatrixをインストールする方法を紹介した。今回は、DotNetNukeのインストール方法を紹介する。
DotNetNukeは、Windows Serverで動作するCMS(Contents Management System)である。この記事ではWeb Platform Installer を利用して人気CMS「DotNetNuke」と無償Web開発環境「WebMatrix」のインストールする方法を紹介する。
クラウドコンピューティングを前提とした大規模データ技術が利用可能となってきています。Big Dataが一過性のブームで終わるかどうかにかかわらず、スケーラブルな分散アーキテクチャーの基盤はデータベース技術に主導されつつあります。RDBとORM主体のエンタープライズシステムは、HadoopやNoSQLとの組み合わせにより複合的なデータモデルに発展しました。
2011年12月8日~2011年12月9日に、ロンドンのSkills Matter eXchangeにて開催された「Groovy & Grails eXchange 2011」の参加報告を、日本Grails/Groovyユーザーグループのメンバーが3回に渡って紹介します。
Googleのクラウド環境をつかったGoogle App Engineによる開発するにあたり、初めての試みで苦悩する開発者達の経験をもとに、各開発フェーズにあわせて問題点やどう解決したかをご紹介します
去る1月12日、定理証明支援系ツールCoqの初心者向けチュートリアルが開催さ れた(http://kokucheese.com/event/index/23667/)。今後も2月2日 (http://kokucheese.com/event/index/23744/)、2月9日、2月16日と引き続���開 催されていく予定である。本記事では、開催の様子をレポートする。
Neal Gafter氏はOracleによるJava買収の影響に関する議論、Javaにセグメンテッドスタックやメタオブジェクトプロトコルを追加することについての主張、そしてJavaとC#との比較について話をしてくれた。
No comments
スレッド表示 返信