多线程基本概念
进程:程序在服务器上运行时,占据的计算资源合集,称之为进程。
进程之间不会互相干扰,进程间的通信比较困难(分布式)。
线程:程序执行的最小单位。
Just So So ...
在前面的文章,我们介绍了使用功能开关控制路由访问。
但其实我们使用了2个条件做的判断:
var isDebugEndpoint = context.Request.Path.Value.Contains("/test");
var debugEndpoint = await _featureManager.IsEnabledAsync("ForbiddenDebugEndpoint");
if (isDebugEndpoint && debugEndpoint)
命令 HTTP API 将事件存储到事件存储,但不直接将它们发布到 Kafka 服务总线。可以考虑这种情况,但我不希望命令 API 也充当生产者。
另一个原因是前端SPA应该收到推送通知。应该通知它发布的命令已成功。
所以我需要一个像SignalR这样的通知系统。
在前面的文章,我们介绍了使用Middleware有条件地允许访问路由(《ASP.NET Core使用Middleware有条件地允许访问路由》)。
而对于一些试验性的功能,我们并不希望用密码去控制是否允许访问,而是想用一种开关的方式开放。