跨进程通信使用MQ,同进程跨多模块(类,或者说跨多业务边界)可使用Event事件驱动思路来解决-牛翰网

跨进程通信使用MQ,同进程跨多模块(类,或者说跨多业务边界)可使用Event事件驱动思路来解决

C#中委托、事件的好处,只需在某个类中提前定义好公开的委托或事件(委托的特殊表现形式)变量,然后在其它类中就可以很随意的订阅该委托或事件,当委托或事件被触发执行时,会自动通知所有的订...
第50篇 Redis与DB库(持续化存储)之间的数据双写一致性保证-牛翰网

第50篇 Redis与DB库(持续化存储)之间的数据双写一致性保证

前言 Redis作为一款高效的内存数据存储系统,被广泛应用在业务系统中的缓存层,尤其是在与关系型数据库(如MySQL、PostgreSQL等)结合使用时,通过将热点数据存储在Redis中,可以在很大程度上缓...
第55篇 如何保证接口的幂等性问题-牛翰网

第55篇 如何保证接口的幂等性问题

1.接口幂等性定义 接口幂等性这一概念源于数学,原意是指一个操作如果连续执行多次所产生的结果与仅执行一次的效果相同,那么我们就称这个操作是幂等的。在互联网领域,特别是在Web服务、API设...
你所不知道的几种调用接口方式-牛翰网

你所不知道的几种调用接口方式

在实际开发中,我们经常会使用第三方工具调用后台接口,比如postman,apifox,但除了这些工具,你还知道哪些方式可以吗? 以下是几种调用方式的简单例子: 测试接口代码如下: using Microsoft....
第32篇 .Net特性Attribute的高级使用-牛翰网

第32篇 .Net特性Attribute的高级使用

今天给大家讲讲.net中特性的高级使用 1.什么是特性 特性(Attribute)是用于在运行时传递程序中各种元素(比如类、方法、结构、枚举、组件等)的行为信息的声明性标签。 用[]来标识,在.Net 框...
第73篇 IdentityServer4的简单介绍-牛翰网

第73篇 IdentityServer4的简单介绍

1.什么是IdentityServer4? 它是一个中间件服务框架,集成OIDC与OAuth2.0, 方便搭建任意多个项目。 IdentityServer4的组成 Identity身份 Server服务器 4版本 源代码:https://github.com/Identit...
C#冒泡排序算法-牛翰网

C#冒泡排序算法

冒泡排序实现原理 冒泡排序是一种简单的排序算法,其原理如下: 从待排序的数组的第一个元素开始,依次比较相邻的两个元素。 如果前面的元素大于后面的元素(升序排序),则交换这两个元素的位...
第36篇 linux服务器上启动framework应用程序流程-牛翰网

第36篇 linux服务器上启动framework应用程序流程

framework开发的应用程序,一般是不会在linux服务器上运行的,但是我们可以通过mono进行应用部署 1.查看linux服务上是否已经安装mono-core 方式1: rpm命令查看 rpm -qa | grep mono-core 有结...
第77篇 Redis中的Sentinel(哨兵模式)详解-牛翰网

第77篇 Redis中的Sentinel(哨兵模式)详解

前言 Redis的高可用机制有持久化、复制、哨兵和集群。其主要的作用和解决的问题分别是: 持久化:持久化是最简单的高可用方法(有时甚至不被归为高可用的手段),主要作用是数据备份,即将数据存...
SignalR实时通信,多客户端与服务端交互-牛翰网

SignalR实时通信,多客户端与服务端交互

1.SignalR介绍 SignalR是一个开源的库,跨平台;让Web应用与其他应用通讯变得很简单,Web服务端可以实时的将内容推送给对应的客户端,客户端发送的信息也可以实时到其他客户端。 SignalR提供了...