金汇网站建设,设置wordpress导航栏,手游游戏推广平台,公司网站建设技术方案模板早在1996年Gartner就前瞻性地提出了面向服务架构的思想(SOA)#xff0c;SOA 的走红在很大程度上归功于 Web Service 标准的成熟和应用的普及。Service Oriented Ambiguity 中文一般理解为#xff1a;面向服务架构#xff0c;简称SOA#xff0c;这个概念算得上微服务的鼻祖了… 早在1996年Gartner就前瞻性地提出了面向服务架构的思想(SOA)SOA 的走红在很大程度上归功于 Web Service 标准的成熟和应用的普及。Service Oriented Ambiguity 中文一般理解为面向服务架构简称SOA这个概念算得上微服务的鼻祖了。SOA 的提出是在企业计算领域就是要将紧耦合的系统划分为面向业务的、粗粒度、松耦合、无状态的服务。服务发布出来供其他服务调用一组互相依赖的服务就构成了SOA架构下的系统。SOA 本质上是服务的集合。在分布式通信技术选型中就本人曾经使用过的基于微软平台的分布式通信进行概述先明确一下分布式框架的三个基本需求客户端Web、Android、IOS、跨平台(Java 开发的系统和.NET 开发的系统可以通信)服务端部署在Windows、Linux合约(Contract)传递的格式(REST,Json、SOAP、XML)、通信协议(HTTP、XML-RPC、TCP)、消息超时设置、消息包大小要打造分布式平台各家技术栈多有不错的实践这里重点说一下微软技术栈下丰富的技术选型.NET Remoting (15年前技术目前已经失传)Web Service (ASMX, ASP .NET Web Services15年前技术维护项目依然存在)WCF (Windows Communication Foundation10年前技术维护项目中比较多)Web API (5年前技术开始火起来和跨平台需求密不可分最近3年的新需求大部分迁移在这里了)下面展开来说.NET Remoting是2.0时代的产物, 即2004年的技术我还没有机会实战过。在微软Roadmap中已被WCF取代.NET Remoting做得到的事理论上WCF都可以实现 依据微软一份WCF在效能上比ASP.NET Web Service快了2550比.NETRemoting快25弃.NET Remoting改用WCF将有性能能上的突破。详见报告链接。Web Service在很早前开发WebForm ASP.NET中用的比较多因此可以将 Web Service 理解为一个基于 HTTP 协议开发的上层应用程序Web service 是一个平台独立的低耦合的自包含的、基于可编程的 Web 的应用程序可使用开放的 XML标准通用标记语言下的一个子集标准来描述、发布、发现、协调和配置这些应用程序用于开发分布式的互操作的应用程序。Simple Object Access Protocol中文为简单对象访问协议简称 SOAP。1、它是基于SOAP协议的数据格式是XML (SOAP )2、只支持HTTP协议3、它不是开源的但可以被任意一个了解XML的人使用4、它只能部署在IIS上SOA 不是 Web ServiceWeb Service 是当年最适合实现SOA的技术。WCFWCF是取代Web Service及.NET Remoting的接班人我记得这个是微软2010年开始力推的技术。我第一次是用WCF是2012年做一个电信级项目结合微软吹水的Silverlight技术(Silverlight技术2013年底该技术被微软安乐死了again)1、这个也是基于SOAP的数据格式是XML2、这个是Web ServiceASMX的进化版可以支持各种各样的协议像TCPHTTPHTTPSNamed Pipes, MSMQ.3、WCF的主要问题是它配置起来特别的繁琐(此处特别强调了3个感叹号 )4、它不是开源的但可以被任意一个了解XML的人使用5、它可以部署应用程序中或者IIS上或者Windows服务中WCF门槛有些太高仅仅在Windows平台开发而且配置文件比较复杂(WCF 客户端\WCF 服务器端,仅Binding、Behavior的复杂度就能单独写一篇文章踩过不少坑都是泪。)众所周知微软.net技术未来是.netCore成熟的.NetCore3 2019年底就可以应用于生产系统了, 但多年来微软一直拒绝将WCF 的服务器端移植到.NET Core, 导致这个分布式技术面临的极大的技术瓶颈即若干年后几无可用人才来维护WCF项目所以大约3年前开始我知道周围朋友公司的新项目大都避而不谈WCF了。随着SOAP 逐渐淡出RESTful大行其道 Web API火了起来。微软技术栈的工程实现是 ASP.NET Web API而且微软建议使用 ASP.NET Core Web API 或 gRPC它们提供基于跨平台和跨编程语言的 RPC也能使用 gRPC 来编写代码并替换掉一些 WCF 服务器服务。1、一个简单的构建HTTP服务的新框架2、在.net平台上Web API 是一个开源的、理想的、构建REST-ful 服务的技术3、不像WCF REST Service.它可以使用HTTP的全部特点比如URIs、request/response头缓存版本控制多种内容格式4、它也支持MVC的特征像路由、控制器、action、filter、模型绑定、控制反转IOC或依赖注入DI单元测试。这些可以使程序更简单、更健壮5、它可以部署在应用程序和IIS上6、这是一个轻量级的框架并且对限制带宽的设备比如智能手机等支持的很好7、Response可以被Web API的MediaTypeFormatter转换成Json、XML 或者任何你想转换的格式。WCF 的未来是Web API而且微软2014年推出开源.NetCore中就有ASP.Net Core Web API可见重视程度。分布式技术这么多我该选谁都2019年了新项目肯定是WebAPI原因如下WebAPI只要有能力发送HTTP Request跟解析JSON比较符合微服务要求, 跨平台支持。创建一个基于HTTP的面向资源的服务并且可以使用HTTP的全部特征时比如URIs、request/response头缓存版本控制多种内容格式你应该选择WebAPI让你的服务用于浏览器、手机、iPhone和平板电脑时你应该选择Web API双工消息模式,过SignalR和WebSockets整合(创建一个支持消息、消息队列、双工通信的服务时)原文链接https://www.jianshu.com/p/54192c6df483.NET社区新闻深度好文欢迎访问公众号文章汇总 http://www.csharpkit.com