2017-02-27 18 views
0

私はTA割り当てシステムを自動化したい個人プロジェクトに取り組んでいます。私はこのためにNodeとMongoDBを使いたい。私はMongoDBについていくつかのアイデアを持っていますが、私はNodeJSを初めて使っています。プロジェストの目的は、次のようなことです:nodeJS内のジョブキュー

  1. 学校管理者は、TAを雇用したいコースを提出します。
  2. データベースには既に資格のある学生(2人以上)が入居しています。各生徒のフィールドは、[学生ID、セニョリ(セカンダリー、ジュニア、シニア)、コースの有無、グレード、現在のステータス]です。コースでは、彼はdbで利用可能な最も高級の資格のある学生を取得します。
  3. 学生が割り当てられると、彼のステータスはHiredに変更されます。

これはキューを使用して実装する予定でした。 (利用可能なすべての生徒をそのコースに入れてキューに入れ、キューの前で利用可能なシニア生徒にTA-shipを割り当てる)。 TAが割り当てられるとすぐに、キューから削除され、PresentStatusが「Hired」であるdbにプッシュバックされます。私が直面している問題は、NodeJSを使用してキューの機能を実装する方法を理解できないことです。このアプローチに関する私の研究の中で、私はmonueとブログに関連するものを見つけましたが、Kue(Redisの代わりに)の実装について議論しましたが、まだこのアイデアをどのように実装するべきかを視覚化することはできません。 NodeJS。どんな助けもありがとう。

答えて

1

あなたが探しているオプションです。

メッセージ送信者とメッセージコンシューマを作成する必要があります。コンシューマには対応するキューがあります。キューにメッセージがいっぱいになると、消費者はそれを取得して処理を行います。あなたのシナリオでは、生徒のステータスを確認して、データベースに雇われた人を変更します。送信者が行うことは、学生の情報をパッケージ化して消費者の待ち行列に入れることです。私は、あなたの場合に何が起きるか想像することができます:学生は、彼/彼女の側で要求を提出する。 node.js apiはそれを受け取って情報をパックします。その後、それを顧客のキューに送信します。あなたの顧客は無料であればそれを処理します。ビジー状態の場合、情報はキュー内で待機します。異なるコンポーネントが通信しなければならないときに、学生の情報にjsonを使用することをお勧めします。​​

はそれが役に立てば幸い:

は、ここでのRabbitMQの公式ウェブサイトです。

関連する問題