使用MicroService4Net 快速创建一个简单的微服务

“微服务架构(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服务”上运行,您需要添加两个空类


1

2

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

转载至:疯狂的蚂蚁

时间: 2024-10-05 07:23:32

使用MicroService4Net 快速创建一个简单的微服务的相关文章

利用Maven快速创建一个简单的spring boot 实例

Spring Boot的好处:spring boot 大大减少了 使用spring的配置 和大量 xml 文件,并有效解决的项目之间的依赖问题,为想使用 spring项目 大大减轻的工作量 1.先创建一个Maven项目 2.配置pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:s

使用python2与python3创建一个简单的http服务(基于SimpleHTTPServer)

python2与python3基于SimpleHTTPServer创建一个http服务的方法是不同的: 一.在linux服务器上面检查一下自己的python版本:如: [[email protected] ~]# python -V Python 2.7.5 如果是在2.7的环境下创建,则使用如下命令: [[email protected] ~]# python -m SimpleHTTPServer 8880 Serving HTTP on 0.0.0.0 port 8880 ... 后面88

创建一个简单的HTTP服务(自动查找未使用的端口)

var t = new Thread(new ThreadStart(() => { HttpListener listener = new HttpListener(); var prefix = string.Format("http://localhost:{0}/", port); listener.Prefixes.Add(prefix); listener.Start(); HttpListenerContext context = listener.GetConte

Unity 2D游戏开发快速入门第1章创建一个简单的2D游戏

Unity 2D游戏开发快速入门第1章创建一个简单的2D游戏 即使是现在,很多初学游戏开发的同学,在谈到Unity的时候,依然会认为Unity只能用于制作3D游戏的.实际上,Unity在2013年发布4.3版本的时候,就开始提供对制作2D游戏的支持了.例如,提供了一些专用于开发2D游戏的Unity工具.现在Unity已经发布了版本4.5,对2D游戏的支持更是完善了不少.为了说明Unity对2D游戏所提供的支持,本章会使用这些在Unity中原生的工具,开发一个简单的2D游戏.本文选自<Unity

【译】使用python创建一个简单的restful风格的webservice应用

这是一个如何使用python快速构建简单restful风格webservice的应用教程. 1.分析rest路由规则 rest风格的服务通常使用web.py来创建服务器端脚本,一般情况下包含两个url路径: 一个是为了查询所有用户,一个是为了查询单个用户. 例如下面的url: http://localhost:8080/users http://localhost:8080/users/{id} 2.搭建web.py环境 首先你应该安装web.py模块到你的python环境下.如果你之前没有的话

Django入门第一步(安装和创建一个简单的项目)

目录 Django入门第一步(安装和创建一个简单的项目) 一. Django项目目录结构 二.注意事项 三.Django安装 3.1.安装命令 3.2.验证django是否安装成功 3.3.使用方法 Django入门第一步(安装和创建一个简单的项目) 在使用Django框架开发web应用程序时,开发阶段同样依赖wsgiref模块来实现Server的功能,我们使用Django框架是为了快速地开发application. 如果使用的是我们自定义的框架来开发web应用,需要事先生成框架包含的一系列基础

通过beego快速创建一个Restful风格API项目及API文档自动化(转)

通过beego快速创建一个Restful风格API项目及API文档自动化 本文演示如何快速(一分钟内,不写一行代码)的根据数据库及表创建一个Restful风格的API项目,及提供便于在线测试API的界面. 一.创建数据库及数据表(MySQL) #db--jeedev -- ---------------------------- -- Table structure for `app` -- ---------------------------- DROP TABLE IF EXISTS `a

IntelliJ IDEA 15 部署Tomcat及创建一个简单的Web工程

一.部署Tomcat 二.创建一个简单的Web工程 2.1创建一个新工程 创建一个新工程 设置JDK及选择Web Application (创建的是Web工程) 点击Next,选择工作空间,起个工程名 2.2项目部署 在工具栏点击 Project: 无需任何设置,选择默认编译目录(或自定义编译目录) Modules: 将Tomcat加入 Libraries:无需任何设置.这里描述了此项目的依赖. Facets: 无需任何设置.这里描述了此项目所适配的服务框架 Artifacts: 无需任何配置.

mysql 如何创建一个简单的存储过程

1 用mysql客户端登入2 选择数据库 mysql>use test3 查询当前数据库有哪些存储过程 mysql>show procedure status where Db='test'4 创建一个简单的存储过程 mysql>create procedure hi() select 'hello'; 5 存储过程创建完毕,看怎么调用它 mysql>call hi();显示结果 mysql> call hi(); +-------+ | hello | +-------+