我和一个朋友想创建一个网站来操作 Facebook 数据。
结构是:
- 一个 PHP Web 角色(包含网页、用户 OAuth 登录、与队列交互以及与 SQL Azure 数据库交互)
- F# worker 角色(进行统计和大量数据提取)
该过程是(假设一个新用户):
用户到达网页并通过 OAuth 登录 Facebook,然后 PHP Web 角色在工作待办事项队列中发布一条消息,其中包含登录信息和令牌。
F# worker 角色从 worktodo 队列中读取消息并开始进行数据处理(使用 Facebook API)和统计信息,然后将结果写入 SQL Azure 数据库。最后,它向 workdone 队列发布一条消息,说明它已成功为用户进行数据处理。
最后,PHP Web 角色读取 workdone 队列并通知工作已完成,并显示算法结果。
我有两个问题:
这个设计有很大的缺陷吗?
最好的协作方式是什么:一个人编写 PHP,另一个人编写 F#,有没有办法使用两台不同机器的开发存储?
非常感谢!(抱歉,如果有些人觉得这些东西太基本了,我在所有这些事情上都是初学者)。