オープンソースCMS「DotNetNuke」のセットアップ
前回はMicrosoft Web Platform Installerを利用して、DotNetNukeとWebMatrixをインストールする方法を紹介した。今回は、DotNetNukeのインストール方法を紹介する。
ブックマークされました!
ブックマークがエラーになりました。もう一度お願いします。
作者 Werner Schuster , 翻訳者 徳武 聡 投稿日 2011年5月16日
今日、Akka 1.0にいくつかの改善が加わったAkka 1.1がリリースされた。また、Scala 2.9(Akka 1.1 requires Scala 2.9)も今日リリースされた。両方とも現在はMartin Odersky氏とJonas Bonér氏の新しい会社Typesafeが管理している。同社はAkkaとScalaのトレーニングを提供すると同時にこの2つの技術を使った商用製品を提供している。integrated stackは同社の製品だ。
Akka 1.1 (akka-actor)はScala 2.9に依存しない。他の変更に加えて、Futureたくさんの作業がに対してたくさんの改善がなされた。発表によると、
- 限定継続を使ったFuture向けのデータフローAPI。これを使えば、実際はブロックしないが、見かけ上はブロックするように見えるコードが書ける。
- Futureは完全にモナドになった。したがってfor内包表記を利用できる。
- Futureはノンブロッキングメソッドを持つようになったので、ブロックなしでFutureの合成ができる。
- FutureはすべてのDispatcherからネイティブで実行できる。
関数型言語のプログラマはFutureがモナドになり、mapとflatMapメソッドを備え、for内包表記が使えるようになったと聞けば喜ぶだろう。ドキュメントによれば、
val f = for {
a <- Future(10 / 2) // 10 / 2 = 5
b <- Future(a + 1) // 5 + 1 = 6
c <- Future(a - 1) // 5 - 1 = 4
} yield b * c // 6 * 4 = 24
val result = f.get()
Scalaのfor内包表記はモナドなコードに対してHaskellのdoのように使える。例えば、処理を直列に並べるための簡単な方法として利用できる(モナドの簡単な紹介は"Monads Made Easy")。
InfoQはGotoCon Copenhagen 2011にてJonas Bonér氏にAkka 1.1と将来の展望について話を聞いた。
InfoQ: Akka 1.1にはScala 2.9が必要ですが、なぜこうしたのですか。Scala 2.9の新しい機能を使っているのですか(どんな機能ですか)。Scala 2.8から2.9への移行でなにか問題にぶつかりましたか。
Scala 2.9.0は多くの点において2.8.xよりも優れています。私たちはバグフィックスや性能改善、新機能の恩恵を受けています。移行も大きな問題はありませんでした。スムーズに行えました。
InfoQ: Agentのawait/futureメソッドはどうですか。 awaitメソッドが返ったら現在のアクターを停止して再スケジュールしますか。
Agent.futureはアクターの現在の値を問い合わせるためにメッセージを送信します。これは!!!メソッドで行われます。このメソッドはFutureを伴ってすぐに返ります。
Agent.awaitはAgent.future.await.result.getの別名です。なのでブロッキングコールになります。Agent.futureは新しいノンブロッキングのFuture合成を利用できます。
InfoQ: Akka 1.1のデフォルトディスパッチャは1.0に比べてどの程度改善していますか。HawtDispatchは使いやすくなったり、高速になっていますか。
これは簡単には説明できません。繰り返し小さな改善を重ねてきたからです。HawtDispatchは決して早くなっていません。AkkaのHawtDispacherはAkkaのコアから取り除かれ、利用は非推奨になりました。低レベルのネットワークIOを実行するときだけは便利だと思います。下記は最新のベンチマークの結果です。
このベンチマークの結果の詳細はAkkaユーザリストでの議論を参照ください。
InfoQ: Akka 2.0で計画されている大きな機能/変更はありますか。
ええ、商用のAkkaのクラスタサポートをオープンソース版に移植するべく鋭意開発中です。秋にリリースする予定のAkka 2.0に盛り込みたいと思っています。クラスタリング(リモーティングでも分散配置でも好きな呼び方でかまいませんが)は完全に構成作業に抽象化されます。つまり、ローカルのアクターだけを使ってクラスタリングするよう(外部から)構成したり、複製したりするだけでAkkaのアプリケーションが利用できるようになるのです。
また、下記は他の特徴です。
Akka 2.0では、Akka 2.0移行は、
- 透過的で柔軟なロードバランシング/ルーティング
- 透過的で柔軟なクラスタリバランシング
- 自動リプリケーションとノードクラッシュ時の自動フェールオーバ
- 永続的なアクーターメールボックス
- サブスクリプションベースのクラスタメンバシップサービス(ノードの無停止での追加/削除)
- 高可用でスケーラブルなトランザクションログに基づくイベントソーシング
- 高可用な構成の一括管理サービス
Cloudy Akka(例えば、商用のアドオン製品)が監視や管理、プロビジョニング、ダッシュボードやEC2サポートのような運用を一手に引き受けるようになるでしょう。
- 計算グリッド/マップリデュース
- データグリッド
- 分散STM
前回は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
スレッド表示 返信