革新とバージョン
現在、0.0.71と0.1.2の2つの現在のバージョンがあり、それぞれインストールできます。
npm install impress@0.0.71 # npm install impress@0.1.2 #
年末年始はすべて、Impressのサンドボックス化とリファクタリングの実装に冷笑的に費やされました。 カーネルの最大80%が書き換えられ、バージョン0.1.2は最小限の修正で0.0.71用に作成されたアプリケーションでテストされました。 機能的には、これらのバージョンでは、サンドボックス化とアプリケーション作成の機能を除き、すべてが同じです。 古いスタイルから新しいスタイルへのリファクタリングは非常に簡単で、アプリケーションサーバーAPIへの呼び出しを置き換えるだけです。 先日、私は、次のような小さな移植指示をリリースします Impressを使用する外部開発者はすでに十分な数になっていますが、NGに対してそうした贈り物をしたくありません。 指示があれば、彼らは数分で移植に対応できると思います。
したがって、両方のバージョンに存在する機能革新:
- ZeroMQ ( サーバー間相互作用)を介したプロセス間のブロードキャストメッセージの形式でのプロセス間通信の実装
IPC(同じサーバー内)。 これは、プロセスに接着しているユーザーが互いに対話できるようにするために必要です。 - WebSocketのサポートが追加され (長い間リクエストされていました)、 Server-Sent Eventsの実装が更新されました。 デモアプリケーションには、その使用例があります。 さらに、これらのプロトコルは同じポート(たとえば80)でアクセスでき、アプリケーションはページを送信しますが、単に異なるURLで、 CORSなしで実行できます(何らかの理由で、クロスドメインリクエストと他のポートはすでに別のドメインと見なされています) 。
- 多くの依存関係が削除され 、モジュールはインストールされて構成に追加された場合にのみ使用されます。 これはすべて、 geoip-liteライブラリのおかげです。突然、120 MBの一時ファイルと重いデータベースドライバーをすぐに残す必要がなくなりました。 私はすでにgeoip-liteのパッチを作者に送りました。npmではまだありませんが、誰にとっても重要です-githubを介してインストールしてください、ここですでに利用可能です 。 UPD :2014-01-13ちょうど新しいバージョンがnpmにヒットしました。
- テンプレート、静的、およびビジネスロジックハンドラーの最適化されたキャッシュ。ファイルシステムの最適化された追跡や、ディスク上のファイルを変更する際のキャッシュの更新が含まれます。 また、新しいバージョンでは、サンドボックス内のアプリケーションのスクリーニングを提供するために、キャッシュが完全に書き直されています。
ルアーにスライドしてプレゼンテーションを表示(クリック可能)
今、説得力のために、 プレゼンテーションからのクールなスライドを示します。 プレゼンテーション内のコード例はバージョン0.0.71にのみ関連しており、誤解を招くようなパトステキストは0.1.2にも関連しているため、アプリケーションサーバーに関する一般的なアイデアを得るために見てください。 プレゼンテーションの英語版もあります。 Impressをよく理解するには、優れたスクリーンキャスト、さまざまな例、およびこれらの例を説明する記事が絶対に必要であり、準備中であり、まもなく利用可能になることを理解しています。 サポート、バージョンの開発とリリースの強度、検出されたバグを修正するアクティビティ、および改善の希望に関しては、 Githubの印象に追加できます。 質問を送信したり、 問題をロシア語または英語で投稿してください。
参照資料
Github: https : //github.com/tshemsedinov/impress
npm: https : //npmjs.org/package/impress