摘要:解决办法: 1、查看SELinux状态 sestatus 2、在ECS实例上运行以下命令,编辑SELinux的config文件。 sudo vi /etc/selinux/config 3、找到SELINUX=disabled字段,按i进入编辑模式,通过修改该参数来开启SELinux。 您可以根据实
阅读全文
摘要:一、简介 开源监控系统和警报工具包,从2012年开始由Google工程师在Soundcloud以开源软件形式研发,于2015年早期对外发布早期版本。2016年5月继Kubernates之后成为第二个正式加入CNCF基金会的项目,同年6月正式发布1.0版本。2017年底发布了基于全新存储层的2.0版本
阅读全文
摘要:一、应用场景 微服务架构中,限流功能一般由网关提供。而对于很多非微服务化的系统,可能并没有网关[无论是因为成本还是复杂度],在这种场景下,为了实现限流,.NET 7中提供了限流中间件 Rate Liniting。 二、实现 首先,SDK版本 >= 7。 然后添加代码注册。 微软为我们提供了4中常用的
阅读全文
摘要:一、抽象类 抽象类不是必须具有抽象方法,但是抽象方法一定是抽象类。方法和类都需要加上abstract修饰符。 如果一个方法为抽象方法,则子类必须重写方法,如果子类不重写父类抽象方法,则子类需要声明为抽象类。 抽象类可以有非抽象方法,抽象方法需要实现。 调用抽象类的抽象方法或者非抽象方法,如果方法用s
阅读全文
摘要:一、简介 二、详情 三、细节 四、举例 4.1、单例模式 同一个进程只能实例化一次。 private修饰符关闭发现,静态属性,暴露静态方法 a、 多线程会出问题,因为不知道是否已经创建对象,会重复创建导致单例失败。处理方式为加锁,并且是双检锁,好处是可以避免等待锁。 b、当然,多线程如果不想使用锁,
阅读全文
摘要:一、简介 依赖注入共有3种方式:构造函数注入、属性注入、方法注入 二、构造函数注入 在program.cs中对组件进行注册: builder.Services.AddScoped<IScopedService,ScopedService>(); 服务注册配置后,在需要注入的类上使用构造函数。 pub
阅读全文
摘要:一、定义 Seata解决方案是分布式事务解决方案之一。常用的分布式事务解决方案有:2PC,3PC,TCC,SAGA(seata)、本地消息表、MQ消息事务、最大努力通知。 Seata是一款分布式解决方案,致力于提供高性能和简单易用的分布式事务服务。提供事务模式有:AT,TCC,SAGA,XA。其中A
阅读全文