在试验示例SF应用程序并玩升级和版本控制时,我注意到它保留了相当长的版本历史。以下是我在SFExplorer中的应用程序的屏幕截图。有没有办法控制保留多少历史记录,或者我可以剔除我永远不会再使用的版本。
或者我甚至不应该关心这个? (即使我是!)
答案 0 :(得分:3)
您在这里看到的是应用程序注册。在创建应用程序实例之前,必须注册应用程序类型和版本。升级应用程序时,注册相同应用程序类型的新版本。这是执行此操作的PowerShell命令(Visual Studio在您通过它时代表您使用此命令):
Register-ServiceFabricApplicationType
随着时间的推移,您会看到许多版本的应用程序已注册。如果您不想再注册它们,可以使用相关命令取消注册它们:
Unregister-ServiceFabricApplicationType -ApplicationTypeName SFDemoType -ApplicationTypeVersion 1.0.2
虽然我们面前有截图,但这里有一些关于应用程序注册的很酷的事情:
您可以随时使用新命令创建任何已注册应用程序类型+版本的实例:
New-ServiceFabricApplication -ApplicationName fabric:/SFDemo2 -ApplicationTypeName SFDemoType -ApplicationTypeVersion 1.0.7
这意味着您可以执行很酷的操作,例如创建相同应用程序类型但具有不同版本的并行实例。假设您要在不升级现有实例的情况下测试新版本的应用程序。您可以注册新版本,但不是升级该应用程序类型的现有实例,而只需创建新版本的应用程序类型的新实例。
您可以使用升级命令将正在运行的应用程序实例从任何版本的应用程序类型“升级”到任何其他版本的应用程序类型:
Start-ServiceFabricApplicationUpgrade -ApplicationName fabric:/SFDemo -ApplicationTypeVersion 1.0.20 -FailureAction Rollback -Monitored
例如,假设您刚刚将应用程序实例从1.0.15升级到1.0.20。过了一会儿,你会发现1.0.20中的一个错误。您可以使用相同的应用程序升级命令“升级”回1.0.15。实际上,版本字符串只是字符串 - 它们可以是您想要的任何内容。如果需要,您可以从版本“banana”升级到“Tuesday”版本。
所以是的,如果您认为自己再也不需要它们,可以取消注册旧版本。但是拥有一个版本历史很棒,因为你可以用它做一些有趣的事情!