1、什么是Service Febric

贴一段微软官方的介绍

Service Fabric 是一种分布式系统平台,可让你轻松打包、部署和管理可缩放、可靠的微服务。Service Fabric 还解决了开发和管理云应用程序中的
重大难题。开发人员和管理员不仅可以避免解决复杂的基础结构问题,而且可以专注于实现可扩展、可靠且易于管理的所需的任务关键型工作负荷。Service Fabric代表用于生成和管理这些企业级的一级云规模应用程序的下一代中间件平台。

或许这个简介还是没办法清晰的明白Service Fabric究竟是做什么用的,可以用于解决什么问题,若是我来介绍我可能更愿意将其比喻为服务容器,如同Docker一样的容器,只不过它可以说是专门作为微服务平台而诞生,不仅支持跨平台部署集群也可以部署包含.Net,Java,Python,Nodejs等其他类型应用,它还提供了全面的应用程序管理功能,用于设置、部署、监视、升级/修补和删除部署的应用程序,更多介绍可以参考官方文档

2、开发环境准备

支持使用以下操作系统版本进行开发:

Windows 7
Windows 8/Windows 8.1
Windows Server 2012 R2
Windows 10

首先安装如下两个安装文件
Servie Fabric Tools For Visual Studio 2015
Service Fabric SDK

因为Service Fabric项目的部署和升级是基于PowerShell的,因此需要执行如下命令用于执行PowerShell脚本。

使用管理员打开PowerShell,执行如下命令。
Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Force -Scope CurrentUser

更详细的参考设置Service Fabric开发环境

3、创建Web API类型的Service Fabric 项目

在完成第二步的安装之后,打开Visual Studio 2015,选Visual C# > Cloud > Service Fabric应用程序 > 确定 > 无状态Web API > 确定。


我们观察一下创建出来的项目,发现实际上是一个控制台项目,用的SelfHost方式实现的WebAPI,

4、运行项目

在第二步安装好SDK之后,在应用程序中找到 Service Fabric Local Cluster Manager 并打开,然后点击 Start local cluster

回到vs直接F5就可以调试项目了,通过观察输出,不难发现实际上在我们调试的时候vs先使用项目内的脚本Deploy-FabricApplication.ps1来做本地集群部署,让后将应用发布到本地集群,我们通过Service Fabric Local Cluster Manager 点击 Manage Local Cluster 打开本地集群的页面,可以看到我们的应用已经部署上去了。

WebAPI项目的端口是设置在项目目录下PackageRoot文件夹的ServiceManifest.xml文件内,如图

在集群上的节点也能看到对应的地址

我们调用一下该地址的接口,可以看到数据正确返回

Azure Service Febric 笔记:Web API应用的更多相关文章

  1. windows service承载的web api宿主搭建(Microsoft.Owin+service)

    今天突然想起改良一下以前搭建的“windows service承载的web api”服务,以前也是直接引用的类库,没有使用nuget包,时隔几年应该很旧版本了吧.所以本次把需要nuget获取的包记录一 ...

  2. Web Service ,WCF以及Web API的对比

    Web Service 1.基于SOAP和XML形式的返回数据. 2.只支出HTTP协议. 3.只能运行在IIS环境下. 4.不是开源的,但可以由任何支持xml的客户端下使用. WCF 1.基于SOA ...

  3. 《ASP.NET MVC4 WEB编程》学习笔记------Web API 续

    目录 ASP.NET WEB API的出现缘由 ASP.NET WEB API的强大功能 ASP.NET WEB API的出现缘由 随着UI AJAX 请求适量的增加,ASP.NET MVC基于Jso ...

  4. 《ASP.NET MVC4 WEB编程》学习笔记------Web API

    本文截取自情缘 1. Web API简单说明 近来很多大型的平台都公开了Web API.比如百度地图 Web API,做过地图相关的人都熟悉.公开服务这种方式可以使它易于与各种各样的设备和客户端平台集 ...

  5. ASP.NET MVC Web API 学习笔记---Web API概述及程序示例

    1. Web API简单说明 近来很多大型的平台都公开了Web API.比如百度地图 Web API,做过地图相关的人都熟悉.公开服务这种方式可以使它易于与各种各样的设备和客户端平台集成功能,以及通过 ...

  6. Asp.net core 学习笔记 ( Web Api )

    asp.net core 把之前的 webapi 和 mvc 做了结合. mvc 既是 api. 但是后呢,又发现, api 确实有独到之处,所以又开了一些补助的方法. namespace Proje ...

  7. windows service宿主web api使用"依赖注入"和“控制反转”的技术实践

    前言 自从几年前抛弃wcf,使用web api 来做服务器端开发之后,就不再迷惑了.但是因为本来从事传统行业管理软件开发,一般都以分布式应用开发为主.纯BS还是比较少,于是比较喜欢用windows s ...

  8. web service, wcf, wcf rest, web api之间的区别

    在.NET Framework中,有很多种技术可以创建基于http协议的服务,譬如说web service, wcf,wcf rest和web api等等.网上有很多的文章教我们如何开发.使用这几种技 ...

  9. web API的概念

    11月20日 纷乱的术语 接口:从接口测试说起,接口是某个对象和外界交互的部分,应用程序可能有很多接口. 用户界面UI(user interface) 消息交互接口,外界是其他程序:diameter, ...

随机推荐

  1. ubuntu 安装phpstorm

    1.清除 sudo apt-get purge openjdk* 2.添加源及更新源列表 sudo add-apt-repository ppa:webupd8team/java sudo apt-g ...

  2. cassandra写数据CommitLog

    cassandra 两种方式: Cassandra-ArchitectureCommitLog Cassandra持久化-Durability 一种是配置commitlog_sync为periodic ...

  3. NAIPC-2016

    A. Fancy Antiques 爆搜+剪枝. #include <bits/stdc++.h> using namespace std ; typedef pair < int ...

  4. hdu1532网络流

    (双倍经验题) 第二次写dinic模板,居然一遍写对了,而且短了不少O(∩_∩)O~ #include <cstdio> #define INF 2147483647 int n,m,an ...

  5. 深度学习框架搭建之最新版Python及最新版numpy安装

    这两天为了搭载深度学习的Python架构花了不少功夫,但是Theano对Python以及nunpy的版本都有限制,所以只能选用版本较新的python和nunpy以确保不过时.但是最新版Python和最 ...

  6. jQuery中prop() , attr() ,css() 的区别

    1.  HTML属性是指页面标记中放在引号中的值,而DOM属性则是指通过JavaScript能够存取的值. (1)在jQuery中,prop()是操作DOM属性,attr()是操作HTML属性. HT ...

  7. C# webBrowser 开新窗口保持Session(转)

    首先为项目添加引用 Microsoft Internet Controls public Form1() { InitializeComponent(); this.webBrowser1.Allow ...

  8. QT 文件对话框(QFileDialog)

    1.选择文件(上传.打开...) QString QFileDialog::getOpenFileName( QWidget *parent = , //parent,用于指定父组件.注意,很多Qt组 ...

  9. 在C#中调用EXE文件

    1. 如果exe文件的返回值是int类型,标识操作执行的结果是否成功,例如: class Program { static int Main(string[] args) { return args. ...

  10. 1001. A+B Format (20)

    原题连接:https://www.patest.cn/contests/pat-a-practise/1001 题目如下: Calculate a + b and output the sum in ...