最近博客园出现了一篇文章《微服务时代之2017年五军之战:Net PHP谁先死》,掀起了一波撕逼,作者只是从一个使用者的角度来指点江山,这个姿势是不对的。.NET Core就是专门针对模块化的微服务架构而设计,在微服务架构这方面Java的Spring Cloud具有非常高的人气,这个正是这篇文章作者的立脚点。然后他没有看到蓬勃发展的.NET 社区的微服务的相关框架,本文主要梳理下当前.NET社区微服务的相关项目的汇集。

1、 Service Fabric

微软作为.NET的主战场,自然在当前的微服务框架上有着丰富的经验,这一领域的代表作就是Azure Service Fabric,在Azure上的众多云服务都是基于Servie Fabric构建,而且微软已经明确表态了Service Fabric将开源,Runtime还没开源,说有计划开源,但目前因为依赖于很多内部工具、组件,在逐步推进runtime的开源进程,具体可以看下我写的一篇博客《期待微软平台即服务技术Service Fabric 开源》。如果你是基于Azure平台来开发,你完全可以使用Service Fabric 做应用开发。当然你如果是在你私有云里用他,也是完全可以的,具体案例我举一个就是腾讯游戏:https://customers.microsoft.com/en-us/story/tencent-telecommunications-azure-service-fabric-windows-server-en

这里列出1个Github 以Service Fabric 开发微服务的项目:

https://github.com/danielmarbach/Microservices.ServiceFabric

2、Steeltoe OSS

在微服务架构这方面Spring Cloud具有非常高的人气,如果你在使用Spring Cloud,可以使用开源项目https://github.com/steeltoeoss 开发.NET Core应用,具体可以参考这篇文章Enabling .NET Core Microservices with Steeltoe and Pivotal Cloud Foundry .

3、Microdot Framework

https://github.com/gigya/microdot,这是一个4月份才开源的.NET微服务框架,让您专注于编写定义服务逻辑的代码,无需解决开发分布式系统的无数挑战,可以很好的Microsoft Orleans的集成。

4、.NET China Foundation

.NET China Foundation也组织整合了系列国内社区开源项目,里面有多个项目都是以微服务为方向,欢迎大家加入一起来把.NET Core的微服务玩好。

https://github.com/dotnetcore/CAP

https://github.com/dotnetcore/surging

https://github.com/dotnetcore/Util

5、其他众多开源的微服务架构项目

.NET社区里还有很多微服务的项目,下面我就简要列出他们在Github上的地址:

1、Xigadee

https://github.com/xigadee/Microservice

2、Apworks framework

https://github.com/daxnet/apworks-core

https://github.com/daxnet/apworks-examples

3、Cronus

https://github.com/Elders/Cronus

4、NancyFx

https://github.com/Cimpress-MCP/Cimpress.Nancy

5、GRPC

https://github.com/pchalamet/GrpcConsul

6、API 网关Ocelot

https://github.com/TomPallister/Ocelot ,Ocelot是一个使用.NET Core平台上的一个API Gateway,这个项目的目标是在.NET上面运行微服务架构,我在年初基于Ocelot做了一个POC项目 https://github.com/geffzhang/NanoFabric ,目前已经上线运行。同时也在不断的丰富Ocelot的功能。

简要的列了一下.NET 平台上的微服务开发的相关类库,欢迎大家推荐你用过的微服务的相关类库,在最后推荐一个.NET上归属与.NET 基金会下面的开源项目:https://dotnetfoundation.org/projects?type=project 这里可以找到你想要的项目。

.NET平台微服务项目汇集的更多相关文章

  1. NET平台微服务

    .NET平台微服务项目汇集   最近博客园出现了一篇文章<微服务时代之2017年五军之战:Net PHP谁先死>,掀起了一波撕逼,作者只是从一个使用者的角度来指点江山,这个姿势是不对的.. ...

  2. (转)微服务架构 互联网保险O2O平台微服务架构设计

    http://www.cnblogs.com/Leo_wl/p/5049722.html 微服务架构 互联网保险O2O平台微服务架构设计 关于架构,笔者认为并不是越复杂越好,而是相反,简单就是硬道理也 ...

  3. Java生鲜电商平台-微服务架构概述

    Java生鲜电商平台-微服务架构概述 单体架构存在的问题 在传统的软件技术架构系统中,基本上将业务功能集中在单一应用内,或者是单一进程中.尽管现代化的软件架构理论以及设计原则已推广多年,但实际技术衍化 ...

  4. Java生鲜电商平台-微服务入门与服务的拆分架构实战

    Java生鲜电商平台-微服务入门与服务的拆分架构实战 刚开始进入软件行业时还是单体应用的时代,前后端分离的概念都还没普及,开发的时候需要花大量的时间在“强大”的JSP上面,那时候SOA已经算是新技术了 ...

  5. CODING DevOps 微服务项目实战系列第一课,明天等你

    CODING DevOps 微服务项目实战系列第一课<DevOps 微服务项目实战:DevOps 初体验>将由 CODING DevOps 开发工程师 王宽老师 向大家介绍 DevOps ...

  6. 基于kubernetes平台微服务的部署

    基于kubernetes平台微服务的部署 首先下载插件: kubernetes Continuous Deploy 然后去找 .kube/ 里的config 复制里面的内容 去添加凭据: 然后就是脚本 ...

  7. K8S+Jenkins自动化构建微服务项目(后续)

    因为之前写过基于K8S部署jenkins master/slave平台,在这个的基础上构建微服务到K8S集群中 Jenkins-slave构建微服务项目到K8S集群 1.微服务项目上传到git仓库 这 ...

  8. SpringCloud(1)---基于RestTemplate微服务项目案例

    基于RestTemplate微服务项目 在写SpringCloud搭建微服务之前,我想先搭建一个不通过springcloud只通过SpringBoot和Mybatis进行模块之间额通讯.然后在此基础上 ...

  9. Docker部署golang微服务项目

    这篇博客是为了记录一下部署步骤. 因为实训需要,我要在服务器上用docker部署我们小组的微服务项目.我们的微服务有Gateway,User,Scene,Device四个部分,分别占用不同的端口,其中 ...

随机推荐

  1. JavaScript实现一个复数类

    <script type="text/javascript"> /** * 这里定义Complex类,用来描述复数 */ /** * 这个构造函数为它所创建的每个实例定 ...

  2. “盛大游戏杯”第15届上海大学程序设计联赛夏季赛暨上海高校金马五校赛题解&&源码【A,水,B,水,C,水,D,快速幂,E,优先队列,F,暴力,G,贪心+排序,H,STL乱搞,I,尼姆博弈,J,差分dp,K,二分+排序,L,矩阵快速幂,M,线段树区间更新+Lazy思想,N,超级快速幂+扩展欧里几德,O,BFS】

    黑白图像直方图 发布时间: 2017年7月9日 18:30   最后更新: 2017年7月10日 21:08   时间限制: 1000ms   内存限制: 128M 描述 在一个矩形的灰度图像上,每个 ...

  3. CentOS环境下中文显示乱码,vim和ls命令显示中文均为乱码的解决办法

    1.登陆linux系统打开操作终端之后,输入 echo $LANG可以查看当前使用的系统语言 2.查看是否有中文语言包可以在终端输入 locale命令,如有zh cn 表示已经安装了中文语言 3.如果 ...

  4. jQuery知识点整合

    一.jQuery介绍 jQuery是一个函数库,一个js文件,页面用script标签引入js文件就可以使用 <script type="text/javascript" sr ...

  5. MFC常见问题以及解决方法(1)_MFC下文本编辑框按下回车后窗口退出

    这里主要介绍遇到这种方法的解决方案,解决方法可能有多种,但这里只给出有效的一种,这里不会详细说明出现问题的原因以及为什么这样解决,想了解更多可以百度,写这个主要是防止以后忘记,做个简单的笔记. 问题: ...

  6. 使用java语言编写窗口按钮

    使用java语言编写窗口按钮 代码如下: package Day08; import java.awt.FlowLayout; import javax.swing.JButton;import ja ...

  7. js冒泡排序,数组去重

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  8. 【性能】web提升性能的小总结

    1. 异步加载js文件,判断文件是否已加载,不重复加载 if (typeof echarts === 'undefined') { console.log('异步加载echarts'); $.getS ...

  9. Java栈与堆 (转)

    1. 栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方.与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆. 2. 栈的优势是,存取速度比堆要快,仅次于直接位于C ...

  10. 【RegExp】JavaScript中正则表达式判断匹配规则以及常用方法

    字符串是编程时涉及到的最多的一种数据结构,对字符串进行操作的需求几乎无处不在. 正则表达式是一种用来匹配字符串的强有力的武器.它的设计思想是用一种描述性的语言来给字符串定义一个规则,凡是符合规则的字符 ...