前言 上一节中我们介绍了Ocelot的常见使用配置,通过json配置文件,实现API网关的请求处理.和一个使用DownStream扩展下游中间件,来实现Http转RPC的简单实现,功能不算强大,但可以作为一个思路,根据自己的RestFul或业务需求来规范下游中间件的处理功能,也有幸被张队收录,十分感谢. 我们知道,Consul.Etcd.Zookeeper等等这些注册中心都有健康检查的机制,用于检查服务节点的状态,是200,还是非200.但是,这种检测是粗粒度的,她只能检测节点的健康状态,却不能…
前言 本节我们来介绍一款强大的库Polly,Polly是一种.NET弹性和瞬态故障处理库,允许我们以非常顺畅和线程安全的方式来执诸如行重试,断路,超时,故障恢复等策略. Polly针对对.NET 4.0,.NET 4.5和.NET Standard 1.1以及.NET Core实现,该项目作者现已成为.NET基金会一员,项目一直在不停迭代和更新,项目地址[https://github.com/App-vNext/Polly],你值得拥有.接下来我们以.NET Framework  4.5来演示它…
介绍 本节我们来介绍一款强大的库Polly,Polly是一种.NET弹性和瞬态故障处理库,允许我们以非常顺畅和线程安全的方式来执诸如行重试,断路,超时,故障恢复等策略. Polly针对对.NET 4.0,.NET 4.5和.NET Standard 1.1以及.NET Core实现,该项目作者现已成为.NET基金会一员,项目一直在不停迭代和更新,项目地址[https://github.com/App-vNext/Polly],你值得拥有.接下来我们以.NET Framework  4.5来演示它…
微服务架构,对于从事JAVA架构的童鞋来说,早已不是什么新鲜的事儿,他们有鼎鼎大名的Spring Cloud这样的全家桶框架支撑,包含微服务核心组件如 1. Eureka:实现服务注册与发现. 2. Zuul:实现统一API网关. 3. Hystrix:实现熔断保护与可视化监控. 4. Config:实现统一管理配置. (如还有更多组件,欢迎补充) 都是我们NET程序员梦寐以求的组件,而.NET Core发展至今,也专门是为微服务提供的框架平台,只是目前处于各路神仙各显神通的阶段,没有一个统一的…
前言 当一个APM或一个日志中心实际部署在生产环境中时,是有点力不从心的. 比如如下场景分析的问题: 从APM上说,知道某个节点出现异常,或延迟过过高,却不能及时知道日志反馈情况,总不可能去相应的节点上一个一个的翻日志文件吧. 从日志中心上说(特别是Exceptionless,能及时反馈出异常信息),知道某个节点出现异常日志,可不知道引起异常的源头在哪:或者出现延迟过高日志,却不能及时知道节点问题,还是链路问题:就算诸上问题都能应付,那么一行行的.一个个的日志文件和使用图形化的表述形式,谁会更加…
原文:NET Core微服务之路:实战SkyWalking+Exceptionless体验生产下追踪系统 前言 当一个APM或一个日志中心实际部署在生产环境中时,是有点力不从心的. 比如如下场景分析的问题: 从APM上说,知道某个节点出现异常,或延迟过过高,却不能及时知道日志反馈情况,总不可能去相应的节点上一个一个的翻日志文件吧. 从日志中心上说(特别是Exceptionless,能及时反馈出异常信息),知道某个节点出现异常日志,可不知道引起异常的源头在哪:或者出现延迟过高日志,却不能及时知道节…
原文:.NET Core微服务之路:不断更新中的目录 (v0.43) 微服务架构,对于从事JAVA架构的童鞋来说,早已不是什么新鲜的事儿,他们有鼎鼎大名的Spring Cloud这样的全家桶框架支撑,包含微服务核心组件如 1. Eureka:实现服务注册与发现. 2. Zuul:实现统一API网关. 3. Hystrix:实现熔断保护与可视化监控. 4. Config:实现统一管理配置. (如还有更多组件,欢迎补充) 都是我们NET程序员梦寐以求的组件,而.NET Core发展至今,也专门是为微…
本篇内容属于非实用性(拿来即用)介绍,如对框架设计没兴趣的朋友,请略过. 快一个月没有写博文了,最近忙着两件事;    一:阅读刘墉先生的<说话的魅力>,以一种微妙的,你我大家都会经常遇见的事物,来建议说话的“艺术和魅力”,对于我们从事软件开发.不太善于沟通和表达的朋友来说,也算是一项软技能了,推荐喜欢阅读的朋友有时间阅读,给你不一样的阅读体验. 二:编写基于Net Core的Rpc框架.之前有朋友说如何将Rpc等整个体系集成到dotnet框架中,我想这篇博文会给你一个答案. 哦,对了,我不建…
前言 日志,一直以来都是开发人员和运维人员最关心的问题.开发人员可通过日志记录来协助问题定位,运维人员可通过日志发现系统隐患,故障等定位问题.如果你的系统中没有日志,就像一个断了线的风筝,你永远不知道它会的落脚点(故障点)在什么地方.当然,你说你不用日志,非要用调试模式来一个一个的排查和验证问题,那这将是非常疯狂的. 微服务架构日渐火热,在享受微服务带来的种种好处的同事,也要承担她所带来的各种困扰.因为系统不再是一个独立的个体,而是分部到不同地方.不同宿主.不同区段单独的服务个体(节点),他散落…
最近一段时间有些事情耽搁了更新,抱歉各位了. 上一篇我们简单的介绍了DotNetty通信框架,并简单的介绍了基于DotNetty实现了回路(Echo)通信过程. 我们来回忆一下上一个项目的整个流程: 当服务端启动后,绑定并监听(READ)设定的端口,比如1889. 当客户端启动后,绑定指定端口,等待用户输入. 当用户输入任意字符串数据后,客户端将这组数据进行转码为byte格式进行传输到服务端. 当服务端收到客户端传来的数据,进行转码后输出控制台,并将这组数据再次回传到客户端. 客户端收到数据,也…