简体   繁体   English

开发大型服务结构应用程序

[英]Developing large service fabric application

We are developing an application on service fabric and it is getting larger with time, more code and more service types. 我们正在开发基于服务结构的应用程序,并且随着时间的推移,越来越多的代码和更多的服务类型,它正在变得越来越大。 Each developer of the team uses local cluster to develop and debug. 团队的每个开发人员都使用本地群集进行开发和调试。

The problem is that the build time + local deployment time gets around 15 minutes sometimes (depends if SF is doing application refresh or not) which is frustrating from a developer perspective. 问题在于,构建时间+本地部署时间有时会达到15分钟左右(取决于SF是否正在刷新应用程序),这从开发人员的角度来看是令人沮丧的。

I want to reduce the build and deploy time. 我想减少构建和部署时间。 What is the recommended pattern for large applications. 大型应用程序的推荐模式是什么。 Should I consider some kind of build-farm & a remote development cluster ? 我应该考虑某种形式的农场和远程开发集群吗?

Note: We are using 'Refresh Application' debugging mode. 注意:我们正在使用“刷新应用程序”调试模式。 This does not resolve the problem as sometimes SF chooses to re-deploy the whole app. 这无法解决问题,因为有时SF选择重新部署整个应用程序。

Use 'Refresh Application' as the Application Debug Mode . 使用“刷新应用程序”作为应用程序调试模式

I recommend you create multiple small applications that can be deployed and upgraded separately. 我建议您创建多个可以分别部署和升级的小型应用程序。 If you're using SF remoting , the built-in retry logic will allow for some remote downtime. 如果您使用的是SF远程处理 ,则内置的重试逻辑将允许一些远程停机时间。

But instead of doing RPC calls, see if you can use the pub/sub pattern. 但是 ,与其进行RPC调用, 不如看看是否可以使用pub / sub模式。 (See this OSS project). (请参阅 OSS项目)。 This will allow indefinite remote downtime (decoupling services), without the caller having to wait around for an answer. 这将允许无限的远程停机时间(解耦服务),而呼叫者不必等待答案。 Note that the downside of this decoupling approach is eventual consistency . 注意,这种去耦方法的缺点是最终的一致性

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM