我有一个现有的Web API 2项目,我打算将其移至Azure Service Fabric。我正计划在Fabric中创建一个单一的无状态服务,详情如下here(主要是因为我目前不了解演员/服务!)并将API移到整个范围。将Web API移动到结构时的注意事项
我的API使用Entity Framework作为后端,使用OWIN构建个人帐户。
移动服务时我需要考虑什么(我主要认为数据库和身份验证可能是问题),还是只是将服务结构层置于顶层?
感谢
编辑
我有更多的思想关于这一点,有一些更多的问题(根据@米哈伊尔的评论)!
所以我将有很多无状态的服务,(所以我分裂我的Web API项目上),这将通过一个Web API项目(基于this)
所以暴露了两个问题真的:
我需要基于个人帐户验证用户。我认为我应该在Web API前端执行此操作,以便只有经过身份验证的用户才能访问Fabric服务,但这意味着API可以访问数据库,并且它不仅仅是一次通过。这个可以吗? API是否应该调用微服务进行身份验证,然后调用它需要的服务,或者这是否过分矫枉过正?
- 实体框架。如果我有很多服务(和API前端)访问相同的数据库,我不得不担心并发连接/锁定,否则Entity Framework会为我处理?
数据库和认证应该没有问题。要考虑的是为什么你需要SF,如果你只有Web API,但我认为这只是开始。 – Mikhail
@Mikhail我已经更新了我的问题,因为我已经进行了关于Fabric的进一步调查,以及您对仅有一个API的评论。这仍然不是问题吗? – ADringer
对你的问题:1.两者都OK。将身份验证分离为单独的服务可能会更简洁。 2.再次,这里没有特定的SF。如果您使用.NET的标准连接池,则不会出现并发问题。 – Mikhail