首页 文章

Azure PHP Web角色,F#worker角色:在不同的机器上开发

提问于
浏览
2

我和朋友想创建一个网站来操纵Facebook数据 .

结构是:

  • PHP Web角色(包含网页,用户OAuth登录,与队列交互以及与SQL Azure数据库交互)

  • 一个F#工作者角色(进行统计和非常繁重的数据提取)

该过程是(假设一个新用户):

  • 用户到达网页并通过OAuth登录Facebook,然后PHP Web角色在worktodo队列中使用登录信息和令牌发布消息 .

  • F#worker角色从worktodo队列中读取消息并开始进行数据处理(使用Facebook API)和统计信息,然后将结果写入SQL Azure数据库 . 最后,它向workdone队列发送一条消息,说明它已成功为用户进行数据处理 .

  • 最后,PHP Web角色读取workdone队列,并通知工作已完成,并显示算法结果 .

我有两个问题:

  • 这个设计有一个很大的缺陷吗?

  • 最好的协作方式是:一个人会编写PHP而另一个人编写F#,有没有办法从两台不同的机器上使用开发存储?

非常感谢! (如果有些人发现这些东西太基础,我很抱歉,在所有这些问题上我都是初学者) .

2 回答

  • 2

    我认为这个计划没有任何问题 .

    我认为没有办法让两台机器指向同一个开发存储,但你可以只使用 Cloud 存储(即使在本地运行) . 我一直这样做;您将为带宽和存储交易付费,但对于大多数测试应用程序而言,这笔费用是微不足道的 .

  • 1

    如果你想要更多的实验路径,你也可以尝试查看Phalanger . 这是一个将PHP代码编译为.NET的项目,因此可以直接在Azure上运行它并与F#很好地协作(Phalanger有一些语言扩展,允许您调用任何.NET对象和一些API for calling Phalanger objects来自C#) .

    我不久前参与了这个项目,但它现在已经被其他人开发了(正如你从签到中看到的那样,它再次非常活跃,他们肯定会对协作解决可能的Azure问题感兴趣) . 如果您有兴趣,请告诉我 - 我可以给您一些联系方式,以便您可以与他们讨论Azure上的Phalanger状态 .

相关问题