博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用MicroService4Net 快速创建一个简单的微服务
阅读量:4500 次
发布时间:2019-06-08

本文共 1887 字,大约阅读时间需要 6 分钟。

“微服务架构(Microservice Architecture)”一词在过去几年里广泛的传播,它用于描述一种设计应用程序的特别方式,作为一套独立可部署的服务。目前,这种架构方式还没有准确的定义,但是在围绕业务能力的组织、自动部署(automated deployment)、端智能(intelligence in the endpoints)、语言和数据的分散控制,却有着某种共同的特征。

“微服务(Microservices)”——只不过在满大街充斥的软件架构中的一新名词而已。尽管我们非常鄙视这样的东西,但是这玩意所描述的软件风格,越来越引起我们的注意。在过去几年里,我们发现越来越多的项目开始使用这种风格,以至于我们身边的同事在构建企业级应用时,把它理所当然的认为这是一种默认开发形式。然而,很不幸,微服务风格是什么,应该怎么开发,关于这样的理论描述却很难找到。

简而言之,微服务架构风格,就像是把一个单独的应用程序开发为一套小服务,每个小服务运行在自己的进程中,并使用轻量级机制通信,通常是 HTTP API。这些服务围绕业务能力来构建,并通过完全自动化部署机制来独立部署。这些服务使用不同的编程语言书写,以及不同数据存储技术,并保持最低限度的集中式管理。

 

在本文中,我介绍老外的(MicroService4Net)https://github.com/TheCodeCleaner/MicroService4Net,在C#程序中使这种类库非常简单的创建一个微服务。

你可以选择Windows 服务控制台应用程序其中一种托管方式 
 
第一步:新建控制台项目,命名为:MicroService4Net.Example,再通过Nuget包管理器安装 MicroService4Net
 

 

第二步:添加命名空间 using MicroService4Net;

在Main方法中添加以下代码

static void Main(string[] args){    var microService = new MicroService();    microService.Run(args);}

默认端口:8080 。如果你想要更改端口,如下

static void Main(string[] args){    var microService = new MicroService(port: 8086);    microService.Run(args);}

  

第三部:添加一个新ApiController,如ExampleController

using System.Web.Http;namespace MicroService4Net.Example.Controllers{    public class ExampleController : ApiController    {        [Route("Example")]        public string GetExample()        {            return "Example";        }    }}

 

完成启动控制台

在浏览器输入http://localhost:8086/Example:

到目前为止,我们就这么傻瓜的简单创建一个小型的微服务,让我们更多的时间花在业务逻辑上。

如果您希望托管在“Windows服务”上运行,您需要添加两个空类

public class MicroServiceInstaller : ProjectInstaller { }public class MicroServiceService : InternalService { }

重新生成解决方案后,接下来就简单多。以管理员身份打开CMD,使用cd切换到项目编译的目录, 执行 MicroService4Net.Example.exe -install (MicroService4Net.Example 是项目名称,根据你自己定义的名称进行替换),安装成功后,打开服务管理控制台就会发现我们安装成功的服务。

 

 

如果你想卸载服务,执行 MicroService4Net.Example.exe -uninstall

大功告成,如需要源码,点击 https://github.com/TheCodeCleaner/MicroService4Net 

 

转载于:https://www.cnblogs.com/CrazyAnts/p/5627106.html

你可能感兴趣的文章
ActionMapping、ActionForward笔记
查看>>
带你入门机器学习
查看>>
fragment 重叠问题
查看>>
三层架构,四层模型
查看>>
[HAOI2008]硬币购物
查看>>
纯C语言跑分(详细注释)
查看>>
.Net分布式架构(一):Nginx实现负载均衡
查看>>
POJ 2485 Highways(最小生成树Prim算法)
查看>>
文本界面听歌神器--moc
查看>>
Ubuntu上安装谷歌第二代机器学习系统TensorFlow
查看>>
Linux:xargs命令详解
查看>>
Flex 布局教程:语法篇
查看>>
明天你好
查看>>
Spring 分散装配
查看>>
漫话爬取
查看>>
sublime js插件
查看>>
C# 添加,修改,删除Xml节点
查看>>
float浮点数的四舍五入
查看>>
QQ消息记录、接收文件、图片、拍照照片等保存位置
查看>>
IOC与AOP介绍
查看>>