- 博客(49)
- 资源 (2)
- 收藏
- 关注
原创 .Net Core 微服务实战 - 健康检查
健康检查LivenessProbeReadinessProbeStartupProbe代码集成健康检查
2021-10-25 20:15:00
493
原创 .Net Core 微服务实战 - 缓存
缓存的场景缓存的策略缓存位置缓存实现的要点缓存存在的问题ResponseCacheMemoryCacheRedisEasyCaching
2021-10-14 20:00:10
532
原创 .Net Core 微服务实战 - 网关与BFF
什么是 BFF网关网关架构类型基于 Ocelot 打造网关JWTJWT 数据结构使用 JWT 实现身份认证与授权
2021-10-08 18:20:12
971
原创 .Net Core 微服务实战 - gRPC 管理内部服务间通讯
gRPC 管理内部服务间通讯gRPCgRPC 的特点.NET 生态对 gRPC 的支持使用 gRPC.proto 文件服务端使用 gRPC客户端使用 gRPC使用非加密的 HTTP2使用异常拦截器使用代码生成工具
2021-09-13 19:25:26
1170
原创 .Net Core 文件提供程序
.Net Core 文件提供程序文件提供程序的三个核心接口IFileProviderIFileInfoIDirectoryContents内置文件提供程序PhysicalFileProviderEmbeddedFileProviderCompositeFileProvider
2021-08-20 18:50:56
270
原创 .Net Core 中间件
.Net Core 中间件中间件的工作原理中间件的执行顺序两个核心对象中间件的使用自定义中间件异常处理中间件异常处理页异常处理匿名委托方法IExceptionFilterExceptionFilterAttribute异常处理技巧静态文件中间件
2021-08-19 18:50:58
644
原创 .Net Core 日志框架
1 日志级别1.1 日志级别的定义1.2 记录不同日志级别对应的方法1.3 配置参数2 日志使用3 日志作用域3.1 作用域的使用场景3.2 BeginScope4 Serilog–结构化日志组件:4.1 Serilog配置4.2 Serilog使用
2021-08-10 09:03:23
1773
原创 .Net Core 配置框架
1 配置框架1.1 核心包1.2 特性1.3 核心类型1.4 扩展点2 配置读取2.1 从内存中读取2.2 从命令行获取2.2.1 支持的命令格式2.2.2 读取配置代码2.3 从环境变量获取2.3.1 适用场景2.3.2 特性2.4 从文件中获取2.4.1 两个特性2.4.2 配置热更新2.5 强类型绑定配置2.6 自定义配置获取3 实战时配置的使用3.1 为不同的服务类定义不同的服务配置类3.2 配置热更新3.2.1 IOptionsSnapshot3.2.2
2021-08-06 18:26:50
851
原创 .Net Core 依赖注入
为什么要使用依赖注入框架.Net Core DI核心类三种生命周期服务注册单例注册作用域注册瞬时注册直接注入实例工厂模式注册注册不同实例尝试注册移除和替换注册注册泛型模板使用依赖注入注意点实现 IDisposable 接口类型的释放Autofac基于名称的注入属性注入子容器基于动态代理的 AOP
2021-08-04 20:04:08
4781
原创 日活跃用户 1000 万的论坛的负载均衡
假设你来设计一个日活跃用户 1000 万的论坛的负载均衡集群,你的方案是什么?设计理由是什么?1、首先,流量评估。1000万DAU,换算成秒级,平均约等于116。考虑每个用户操作次数,假定10,换算成平均QPS=1160。考虑峰值是均值倍数,假定10,换算成峰值QPS=11600。考虑静态资源、图片资源、服务拆分等,流量放大效应,假定10,QPS*10=116000。2、其次,容量规划。考虑高可用、异地多活,QPS*2=232000。...
2021-04-20 17:36:35
539
原创 .NET GC垃圾回收
.NET GCGC工作原理托管资源及非托管资源GC与内存管理对象的生命周期创建对象的主要流程:GC垃圾回收垃圾回收基本流程代龄大对象堆什么时候会进行垃圾回收?
2020-10-19 20:05:54
275
原创 .NET Core 操作 MongoDB 封装类
引用包:MongoDB.Driver(2.10.4) /// <summary> /// MongoDB连接信息 /// </summary> public class MongoDBHost { /// <summary> /// 连接字符串 /// </summary> public string ConnectionString { get;
2020-06-29 18:09:46
1466
原创 .Net Core使用MongoDB
1.NuGet先引用MongoDB.Driver2.给MongoClient上一个单例套餐: public class MongoDBClient { private static readonly string connectionStr = "your string"; private static object _lock = new object(); private static MongoClient _mongoClient =
2020-06-11 19:10:04
412
原创 .Net Core 实现 WebSocket
Startup.cs中实现如下代码: public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); }
2020-06-10 20:17:47
800
原创 Nancy支持跨域请求CORS
public class MyModule : NancyModule{ public MyModule() { After.AddItemToEndOfPipeline((ctx) => ctx.Response .WithHeader("Access-Control-Allow-Origin", "*") ...
2019-02-28 09:47:44
1962
原创 Nancy使用转换器扩展序列化
使用场景以时间为例,若要将时间的年月日指定为3个输入框的话,传递的参数可能是这样的:{"date":{"year":2019,"month":1,"day":31}}扩展序列化DateTime为了更方便的进行数据转换,我们可以扩展Nancy的JavaScriptConverter以拦截DateTime值的序列化和反序列化,我们可以自定义返回任何类型的数据:using Nan...
2019-01-31 16:30:51
508
原创 Nancy使用模型(Using Models)
Model binding(模型绑定)方法:Foo foo = this.Bind(); var foo = this.Bind<Foo>();var foo = this.BindTo(instance);下面直接来看一个Nancy模型绑定的例子吧:Module:using CoreNancy.Models;using Nancy;using...
2019-01-31 14:25:24
863
原创 Nancy视图引擎(View Engines)
Nancy View Engines 默认情况下,Nancy附带一个内置的视图引擎,称为SuperSimpleViewEngine,它支持所有必需品(necessities ),如布局(layouts),局部(partials),模型(models),条件(conditions )和迭代(iterations) 。 使用SuperSimpleViewEngine时不需要任何其他依赖项,它可以支...
2019-01-30 18:02:01
1073
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人