访问者 模式

智慧教育:数字化时代的未来教育模式

随着技术的进步和互联网的普及,教育机构和学校开始寻求利用先进的技术和创新的教育方法来提高学习效果和管理效率,包括在线教育、远程学习、教育数据分析等方面的发展。智慧教育旨在将这些技术和方法应用于教育领域,以满足学生、教师和教育机构的不断增长的需求,提供更灵活、高效和个性化的教育体验。 ......
智慧 模式 数字 时代

Python sanic AsyncIOScheduler 的单例模式

sanic 是个异步框架。可以配置多个worker ,执行定时任务时,也会执行多遍。期望通过单例模式,确保只运行一次。 解决思路。AsyncIOScheduler函数有没有自带的单例模式,答案无。网上有没有相关做法,搜集半天,没有太好的办法。试过全局变量,协程共享变量等,均无效。试着用进程的共享变量 ......
AsyncIOScheduler 模式 Python sanic

Mybatis中的设计模式

最近在看《通用源码阅读指导书:Mybatis源码详解》,这本书一一介绍了Mybatis中的各个包的功能,同时也涉及讲了一些阅读源码的技巧,还讲了一些源码中涉及的设计模式,这是本篇文章介绍的内容 在多说一点这本书,Mybatis是大部分Java开发者都熟悉的一个框架,通过这本书去学习如何阅读源码非常合 ......
设计模式 Mybatis 模式

【WCH蓝牙系列芯片】-基于CH582开发板—BLE从机开启HAL Sleep模式

在WCH沁恒官方提供的CH583的EVT资源包中,找到BLE文件中找到【Peripheral:外设从机角色例程】这个工程文件,在这个工程文件中,添加HAL Sleep模式,开启低功耗模式,通过观察功耗情况。 未开功耗,可以通过运行程序看出,此时的电流大小,图中电流尖峰是无线收发的电流,两个尖峰间隔时 ......
芯片 模式 Sleep WCH 582

Linux TLB 刷新的懒惰模式【转】

转自:https://blog.csdn.net/Henzox/article/details/41963271 我们都知道,在切换页表时会刷新 TLB,这样就可以使用新的地址空间,那什么是 TLB 刷新的懒惰模式呢? TLB 是什么这里不作多的解释,可以简单理解为,为了加快 MMU 对虚拟地址的转 ......
模式 Linux TLB

c#桥接模式详解

基础介绍: 将抽象部分与它的实现部分分离,使它们都可以独立地变化。适用于不希望在抽象和实现部分之间有固定的绑定关系的情况,或者类的抽象以及它的实现都应该可以通过生成子类的方法加以扩充的情况。 将抽象部分与实现部分分离,使它们都可以独立地变化。 其实两个都是抽象的部分,更准确的说,是将一个事物中多个维 ......
模式

【RocketMQ】DLedger模式下的选主流程分析

RocketMQ 4.5版本之前,可以采用主从架构进行集群部署,但是如果master节点挂掉,不能自动在集群中选举出新的Master节点,需要人工介入,在4.5版本之后提供了DLedger模式,使用Raft算法,如果Master节点出现故障,可以自动选举出新的Master进行切换。 Raft协议 R ......
主流程 RocketMQ 主流 DLedger 模式

软件设计模式系列之十七——解释器模式

解释器模式是一种行为型设计模式,它用于将一种语言或表达式解释为对象。该模式通过定义语言的文法规则,并使用解释器来解释和执行这些规则,将复杂的语言转换为对象的操作。 在软件开发中,解释器模式常用于处理类似于编程语言、查询语言、正则表达式等需要解释和执行的场景。它将一个复杂的语言分解为一系列简单的规则,... ......
模式 解释器 设计模式 软件

CH32V208蓝牙从机sleep模式下功耗测试

本测试基于CH32V208W的开发板;蓝牙从机模式;使用程序BLE_UART 在进行功耗测试的时候尽量去除额外耗电器件,将开发板上的VDD于VIO相连接,测功耗时直接给VDD供电。 将会对500ms,1s,2s,5s广播间隔进行测试; CH32V208的在测功耗时 一般情况下是只要置1使能HAL_S ......
功耗 模式 sleep V208 208

数据库的MVCC模式

PG的mvcc模式:多版本并发控制,通过在数据库中创建多个版本的数据来实现并发的读写操作。每个数据库事务都能够看到一个逻辑上一致的数据库快照,当一个事务修改了数据库中的数据时,他不会直接修改原始数据,而是创建一个新的数据版本,并将修改后的数据写入新的数据版本中,这样其他事务依然可以读取到旧的数据版本 ......
模式 数据库 数据 MVCC

GITHUB无法访问

如题 国内gitee,但有时候想访问下github,例如:https://www.eclipse.org/swt/snippets/ 里面的例子,想看源码就需要到github 土建工具 FastGithub ......
GITHUB

JAVA 单例设计模式

单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该 ......
设计模式 模式 JAVA

委托的单例模式

在项目中我们经常会使用到委托,委托是多播的,如果控制不好反复注册就会多次触发,可以使用委托的单例模式去注册,这样可以避免多次触发问题。 下面是几种委托实例代码: 带参数委托管理: /// <summary> /// 带参数的委托管理 /// </summary> public class Actio ......
模式

Seata XA模式一阶段为什么一直锁定资源等二阶段成功?AT模式怎么解决的这个缺陷?

Winwin:Seata XA模式一阶段为什么一直锁定资源等二阶段成功?AT模式怎么解决的这个缺陷? 兔子:Seata是一个非常强大的分布式事务解决方案,它提供了XA模式和AT模式来支持分布式事务的一致性和可靠性。 关于你的问题,我们先来聊一下Seata XA模式的一阶段和二阶段,好吗? 在Seat ......
阶段 模式 缺陷 资源 Seata

openwrt nginx ssl 增加端口,互联网访问

虽然已经会配置nginx了 但是在openwrt上配置neginx,并允许wan访问,还是需要改一些东西的。 尤其是几个运营商封端口。80,8080,10080,443均已沦陷,或即将沦陷。 openwrt 的nginx - 上官飞鸿 - 博客园 (cnblogs.com) 所以我将使用10443来 ......
端口 openwrt 互联网 nginx ssl

nginx访问报错“maximum number of descriptors supported by select() is 1024 while connecting to upstream”问题的处理

1、问题背景 项目:一个人力的系统,主要用于考勤打卡 环境:windows server nginx版本:1.22 问题说明:当早上访问人数增加的时候,就会出现nginx的异常 nginx的后台报错日志: maximum number of descriptors supported by sele ......

如何选择合适的RAID模式?群晖NAS玩家必懂

RAID 模式的选择一般在大家第一次设置 NAS,或是为 NAS 添加硬盘扩容的时候,虽然这是每位用户的必经之路,但相信还是有不少小伙伴,依旧对 RAID 不太了解,RAID 可以有效提升 NAS 的读写效率和安全性,一般桌面式机型中比较常见的有 Basic、RAID 1、RAID 5 和 SHR  ......
模式 玩家 RAID NAS

c#装饰器模式详解

基础介绍: 动态地给一个对象添加一些额外的职责。适用于需要扩展一个类的功能,或给一个类添加多个变化的情况。 装饰器,顾名思义就是在原有基础上添加一些功能。 大家都只知道如果想单纯的给原有类增加一些功能,可以直接继续该类生成一个子类就可以。 举个例子,如果现在有个手机类,想给手机贴膜,传统的做法就是新 ......
模式

MySQL防止被黑,通过跳板机ssh隧道访问

一、问题 ​ 服务器访问MySQL原先是服务器开放4406端口,root账号权限对任意ip都能进行使用,存在安全隐患。禁止4406端口的话,对数据库数据操作很不方便,只能通过命令行敲SQL语句进行增删,对数据的查询也不方便。 二、解决方案 1、方案一: 如果有公网ip,直接在服务器数据库中配置roo ......
跳板 隧道 MySQL ssh

C++单例模式

单例模式 类只有一共实例,供全局使用如日志模块,任务管理器等等。 单例模式分为懒汉式和饿汉式, 饿汉式在类加载时就创建唯一实例,线程安全,启动时资源占用较高 懒汉式在第一次被使用时才会创建实例,需要机制实现线程安全,占用资源较少 饿汉式实现如下: class Singleton { public: ......
模式

Debian11.7 配置vi非兼容模式

对于最小化安装的 Debian11.7 ,起初有一个问题给我造成了困扰:那就是当我使用 vi 编辑文本文件时,我无法通过键入“i”来切换到输入模式,或者说,其实的确进入了输入模式,但是底部行并没有显式进行提示,另外,我无法使用 Backspace 键来删除字符,Delete 键是可以删除字符的,不过 ......
模式 Debian 11.7 11

软件设计模式系列之十六——命令模式

命令模式(Command Pattern)是一种行为型设计模式,旨在将请求发送者和接收者解耦,将一个请求封装为一个对象,从而允许您参数化客户端对象以进行不同的请求、排队请求或记录请求,并支持可撤销操作。 命令模式的核心思想是将一个请求包装成一个对象,包括请求的参数和接收者对象,然后客户端只需要调用该... ......
模式 设计模式 命令 软件

设计模式

创建型 工厂方法:隔离创建对象的细节,使得创建对象的行为可扩展 抽象工厂:该模式抽象出一组相关对象的接口 建造者:与工厂不同的是,该模式包含了对象构造的若干过程 原型:用于以某个对象为模子创建一个新对象的场景,例如幻灯片中的母版与普通页、对象的克隆 单例 结构型 适配器:处理遗留系统的不二法宝,也可 ......
设计模式 模式

模板模式

模板模式 案例引入 制作豆浆问题 要求: 1.制作豆浆流程 选材->添加配料->浸泡->放到豆浆机打碎。 2.通过添加不同配料,可以制作出不同口味的豆浆。 3.选材,浸泡和放到豆浆机打碎这些步骤对于制作每种口味的豆浆都是一样的。 4.请使用模板模式,完成。(因为模板方法模式,简单,就直接写了) 基本 ......
模板 模式

Java访问修饰符

在Java中,public、private、protected和default是访问修饰符,用于控制类的成员(字段、方法、内部类等)的可见性和访问权限。它们的主要区别如下: public: public 是最开放的访问修饰符,被声明为 public 的成员可以从任何地方访问,无论是否在同一个包内或不 ......
Java

群辉nas使用ipv6+ddns外网访问攻略

群辉nas使用ipv6+ddns外网访问攻略 此方法只针对白群辉用户,本来想申请公网ip,结果申请不下来,不过ipv6是有的,所以就有了这个方案。 1.打开控制面板,网络界面,已联机的局域网,编辑,找到ipv6,自动获取。 2.找到外部访问,点击ddns,新增选择服务商为Synology的,主机名称 ......
攻略 ipv6 ddns nas ipv

抽象类、抽象方法、模板方法设计模式的写法

1、抽象方法:必须用abstarct修饰,只有方法签名,一定不能有方法体 抽象类中不一定有抽象方法,有抽象方法的一定是抽象类 2、设计抽象类是为了更好的支持多态 1、模板方法设计模式的写法(使用final修饰) a、定义一个抽象类 b、在里面定义2个方法 一个是模板方法(把相同代码放里面去) 一个是 ......
方法 设计模式 写法 模板 模式

Redis 主从复制、哨兵模式、群集模式

Redis 主从复制、哨兵模式、群集模式 目录1. Redis 的 2种 持久化方式2. Redis 优化3. Redis 主从复制的原理3.1 配置文件3.2 Redis 主从复制4. Redis 哨兵模式4.1 哨兵机制4.2 哨兵模式的作用4.3 哨兵结构4.4 哨兵模式配置 1. Redis ......
模式 主从 哨兵 Redis

Ubuntu安装Samba(阿里云服务器、samba端口映射)Win10可访问

1、安装 Samba 服务 sudo apt-get install samba #安装 Samba 服务器 sudo apt-get install smbclient #安装 Samba 客户端 查看samba版本 samba -V 2、配置需要共享的目录 # 新建目录,用于共享 mkdir / ......
端口 服务器 Ubuntu Samba samba

thinkphp无法访问控制器如何解决

TP6 在初次安装时 创建 /app/admin/controller/Index 文件时 无法访问 默认的thinkphp 6 只有 部分的 内置拓展包括:自带的 framework think thinkphp 核心驱动think-filesystem 文件储存驱动think-helper 常用 ......
控制器 thinkphp