【问题标题】:Actor Pattern - How to model Room Booking Structure ?演员模式 - 如何建模房间预订结构?
【发布时间】:2016-07-29 13:55:36
【问题描述】:

我正在尝试以演员模式对酒店客房预订系统进行建模。仅供参考,我在 .Net 中为此使用 akka.net。

现在我已经创建了以下演员。 1. HotelActorRoomsActor(RoomActor 的集合)
3.BookingsActorBookingActor 的集合)
4.EmployeesActorEmployeeActor的集合)
4.UIActor

目前我已计划如下创建系统。
1. UIActorBookingInformation(入住、退房、房间数)
2. 将信息告知BookingsActor
3.BookingsActor创建/启动一个新的BookingActor并传递信息

4.在BookingActor启动它会
4a。安排预订房间
4b。告诉房间有关日程安排,以便他们阻止自己
4c。为房间安排员工任务
4d。告诉选定的员工他们的任务
4e。告诉系统预订已创建
4楼。告诉 BookingsActor 在某个特定时间重新启动 BookingActor 未来(实际预订登记前 24 小时)并关闭。


我面临的问题是
1. 如何让 UIActor 与预订信息保持同步
2. UIActor 还应该能够保存有关多个预订的信息(对于特定客户等),它应该如何以及在 Actor 模式中的何处完成?
3. 假设我想要从 Date1 到 Date2 的多个预订信息,我应该在哪里保存这些信息以便以后检索它?

【问题讨论】:

    标签: akka reporting actor akka.net


    【解决方案1】:

    ad 1. 你可以在akka bootcamp看到同步调度器的例子

    例如source:

    dispatcher = akka.actor.synchronized-dispatcher 
                 #causes ChartingActor to run on the UI thread for WinForms
    

    ad 2. UI Actor 应该只从用户那里收集数据并显示结果,所有其他操作都需要下推进行处理才能让存储 Actor 说

    ad 3. 您需要一个存储提供程序 - 可以是 mongoDB 或 SQL 解决方案。将消息传递给存储参与者,您可以保留保留数据或在需要时检索。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-11
      • 1970-01-01
      • 2015-11-13
      • 1970-01-01
      • 2018-12-15
      • 1970-01-01
      • 2012-08-30
      • 1970-01-01
      相关资源
      最近更新 更多