摘要:YoyoGo YoyoGo 是一个用 Go 编写的简单,轻便,快速的 微服务框架,目前已实现了Web框架的能力,但是底层设计已支持多种服务架构。 Github https://github.com/yoyofx/yoyogo 特色 漂亮又快速的路由器 中间件支持 (handler func & cu 阅读全文
posted @ 2020-06-29 10:05 YOYOFx 阅读(377) 评论(3) 推荐(0) 编辑
摘要:应用管理的两大难题 今天我们主要讨论这两个方面的挑战: 对应用研发而言,K8s API 针对简单应用过于复杂,针对复杂应用难以上手; 对应用运维而言,K8s 的扩展能力难以管理;K8s 原生的 API 没有对云资源全部涵盖。 总体而言,我们面临的挑战就是:如何基于 K8s 提供真正意义上的应用管理平 阅读全文
posted @ 2020-05-25 14:01 YOYOFx 阅读(99) 评论(0) 推荐(0) 编辑
摘要:服务注册 注册中⼼作为一般的RPC/Web服务中的底层设施提供了服务进程元数据(IP, Port, Interface, Group,Method等)存储,被Watch的功能,每个服务进程均需接⼊同⼀组持久化的K/V介质集群(⽐如: zookeeper,etcdv3等)。各进程均需将本进程的元数据存 阅读全文
posted @ 2020-05-13 15:43 YOYOFx 阅读(213) 评论(0) 推荐(1) 编辑
摘要:前言 在 Kubernetes 中,Pod 使用的资源最重要的是 CPU、内存和磁盘 IO,这些资源可以被分为可压缩资源(CPU)和不可压缩资源(内存,磁盘 IO)。可压缩资源不可能导致 Pod 被驱逐,因为当 Pod 的 CPU 使用量很多时,系统可以通过重新分配权重来限制 Pod 的 CPU 使 阅读全文
posted @ 2020-05-11 17:57 YOYOFx 阅读(138) 评论(0) 推荐(2) 编辑
摘要:一、发现问题 在一次系统上线后,我们发现某几个节点在长时间运行后会出现CPU持续飙升的问题,导致的结果就是Kubernetes集群的这个节点会把所在的Pod进行驱逐(调度);如果调度到同样问题的节点上,也会出现Pod一直起不来的问题。我们尝试了杀死Pod后手动调度的办法(label),当然也可以排除 阅读全文
posted @ 2020-04-10 14:12 YOYOFx 阅读(655) 评论(1) 推荐(4) 编辑
摘要:一、前世今生 .NET诞生以来,程序集的动态加载和卸载都是一个Hack的技术,之前的NetFx都是使用AppDomain的方式去加载程序集,然而AppDomain并没有提供直接卸载一个程序集的API,而是要卸载整个AppDomain才能卸载包含在其中的所有程序集。然而卸载整个CurrentAppDo 阅读全文
posted @ 2019-05-16 14:41 YOYOFx 阅读(3433) 评论(23) 推荐(29) 编辑
摘要:前言 承接上文( 微服务日志之.NET Core使用NLog通过Kafka实现日志收集 https://www.cnblogs.com/maxzhang1985/p/9522017.html ).NET/Core的实现,我们的目地是为了让微服务环境中dotnet和java的服务都统一的进行日志收集。 阅读全文
posted @ 2018-08-28 09:53 YOYOFx 阅读(5756) 评论(0) 推荐(2) 编辑
摘要:一、前言 NET Core越来越受欢迎,因为它具有在多个平台上运行的原始.NET Framework的强大功能。Kafka正迅速成为软件行业的标准消息传递技术。这篇文章简单介绍了如何使用.NET(Core)和Kafka实现NLog的Target。 在日常项目开发过程中,Java体系下Spring B 阅读全文
posted @ 2018-08-23 09:59 YOYOFx 阅读(2372) 评论(6) 推荐(8) 编辑
摘要:前言 本文并没有实现一个完成的验证码样例,只是提供了在当前.NET Core 2.0下使用Drawing API的另一种思路,并以简单Demo的形式展示出来。 Skia Skia是一个开源的二维图形库,提供各种常用的API,并可在多种软硬件平台上运行。谷歌Chrome浏览器、Chrome OS、安卓 阅读全文
posted @ 2017-12-29 09:17 YOYOFx 阅读(2950) 评论(6) 推荐(6) 编辑
摘要:前言 在前几个Visual Studio Code更新中发现有一个重要得特性,就是nodejs可以使用VS Code在WSL中进行Debug了(WSL是指Win10中的Linux子系统),之前写过一篇文章是使用SSH对Linux环境进行Debug,此时的想法就是如果可以在WSL中直接对程序进行调试的 阅读全文
posted @ 2017-12-08 02:02 YOYOFx 阅读(2903) 评论(3) 推荐(5) 编辑
摘要:引出问题: Asp.net core应用在 Kubernetes上内存使用率过高问题分析 https://mp.weixin.qq.com/s/PqhUzvFpzopU7rVRgdy7eg 这篇文章中讨论了,在默认情况下,ASP.NET Core程序跑在K8s的Docker中内存使用率 =600MB 阅读全文
posted @ 2017-11-15 00:29 YOYOFx 阅读(4274) 评论(9) 推荐(37) 编辑
摘要:一、前言 一般的情况下,我们都无需调用HTTP请求的大小,只有在上传一些大文件,或者使用HTTP协议写入较大的值时(如调用WebService)才可能会调用HTTP最大请求值。 在ASP.NET Core 2.0中,它的两个宿主服务器Kestrel和HttpSys默认的HTTP最大请求大小为30MB 阅读全文
posted @ 2017-09-28 17:43 YOYOFx 阅读(2146) 评论(1) 推荐(8) 编辑
摘要:一、前言 上次讲SignalR还是在《 "在ASP.NET Core下使用SignalR技术" 》文章中提到,ASP.NET Core 1.x.x 版本发布中并没有包含SignalR技术和开发计划中。时间过得很快,MS已经发布了.NET Core 2.0 Preview 2 预览版,距离正式版已经不 阅读全文
posted @ 2017-07-04 20:37 YOYOFx 阅读(11407) 评论(10) 推荐(14) 编辑
摘要:一、前言 其实说到ref,很多同学对它已经有所了解,ref是C 7.0的一个语言特性,它为开发人员提供了返回本地变量引用和值引用的机制。 Span也是建立在ref语法基础上的一个复杂的数据类型,在文章的后半部分,我会有一个例子说明如何使用它。 二、ref关键字 不论是ref还是out关键,都是一种比 阅读全文
posted @ 2017-05-19 09:57 YOYOFx 阅读(5348) 评论(11) 推荐(21) 编辑
摘要:上一篇我们讲了 "如何在windows和Linux上编译CoreClr的问题" 虽然文章使用的是windows 10 (Bash)环境,但是也可以做为ubuntu环境的参考。 成功编译CoreCLR的源代码之后,会在 \coreclr\bin\Product\Windows_NT.x64.{ } 目 阅读全文
posted @ 2017-04-17 00:24 YOYOFx 阅读(664) 评论(0) 推荐(0) 编辑