内存 模式

456. 132模式

链接 https://leetcode.cn/problems/132-pattern/description/ 思路 这题其实不难,就是边界条件难想。 我们可以先保证单调栈里是逆序,然后判断单调栈中较小的值是否大于当前元素(满足132的1和2的关系)。 代码 class Solution: def ......
模式 456 132

node-oracledb nodejs 包支持thin 模式了

node-oracledb 从v6.0.0 版本来时支持thin 模式了,是基于纯javascript 开发的驱动,我们终于可以不用依赖比较笨重的oracle client 了属于一个很大的进度,同时python 版本也是支持thin 模式了,我以前也简单介绍过 参考资料 https://githu ......
node-oracledb oracledb 模式 nodejs node

Zabbix-agent修改为主动模式

1.zabbix-agent工作模式 zabbix-agent进程,有两种工作模式,主动模式,被动模式 1.1 被动模式 被动模式是指 zabbix-server 将需要请求的数据,发给zabbix-agent,然后agent接收到请求后才进行对客户端机器数据采集,采 集完毕后发给zabbix-se ......
Zabbix-agent 模式 Zabbix agent

0.MVC模式概述

MVC模式 Model、View、Controller。 是一种设计规范,目的是降低业务逻辑之间的耦合。 1、Model模型 DAO、Service,负责模型数据操作,包括了数据和业务。 2、View视图 负责模型的展示,用户客户看得到的界面。 3、Controller控制器 接收请求,发送给mod ......
模式 MVC

内核态内存的正确使用方法

前言 看完了伙伴系统的设计、slab分配器的设计、vmalloc、kmalloc这些内容对于内存管理的一些细节上好像比较清楚了,但是内核是如何使用内存的还是有一些混淆。也产生了一些疑问,在内核中内存的正确打开方式是什么呢? 内核地址空间划分 首先我们需要搞情况内核的地址空间,不同地址空间的内存的使用 ......
内核 使用方法 内存 方法

Java设计模式之享元模式

1.1. 概述 定义: 运用共享技术来有效地支持大量细粒度对象的复用。它通过共享已经存在的对象来大幅度减少需要创建的对象数量、避免大量相似对象的开销,从而提高系统资源的利用率。 1.2. 结构 享元(Flyweight )模式中存在以下两种状态: 1. 内部状态,即不会随着环境的改变而改变的可共享部 ......
模式 设计模式 Java

设计模式之 State Pattern状态模式

State模式允许对象在内部状态变化时,变更其行为,并修改其类; 优点: 定位指定状态的行为,并且针对不同状态来划分行为,使状态转换显式进行; 适用: 对象的行为依赖于其状态,并且该对象必须在运行时根据其状态修改其行为; 操作具有大量的以及多部分组成的取决于对象状态的条件语句; public cla ......
模式 设计模式 状态 Pattern State

设计模式之 Template Method模版方法

Template Method模式提供了不重写方法的前提下,允许子类重载部分方法的方法; 在操作中定义算法的框架,将一些步骤由子类实现,该模式可以再不修改算法结构的情况下,让子类重新定义算法的特定步骤; 优点: 代码重用的基础技术; 适用: 想要一次实现算法的不变部分,而使用子类实现算法的可变行为; ......
设计模式 模版 Template 模式 方法

python查看占用系统内存

import os import psutil print(u'cpu个数:',psutil.cpu_count()) print(u'电脑总内存:%.4f GB' % (info.total / 1024 / 1024 / 1024)) print(u'当前进程的内存使用:%.4f GB' % ( ......
内存 python 系统

设计模式(七)桥接

一、定义 将抽象部分与它的实现部分解耦,使两者都能够独立变化,桥接模式是一种结构型模式。 二、描述 包含以下四个角色: 1、Abstraction(抽象类):它是用于定义抽象类的接口,通常是抽象类而不是接口,其中定义了一个Implementor(实现类接口)类型的对象并可以维护该对象,它与Imple ......
设计模式 模式

内存管理中的关键数据结构

前言 在谈Linux内存管理框架之前需要了解NUMA,NUMA是非一致性内存访问(Uon-Uniform Memory Access)的缩写,与之相反的是一致性内存访问UMA。在多核的UMA架构的机器上,CPU视角下所有的内存都是均匀的,不同CPU访问同一块内存的延迟是相同;而在NUMA架构的机器上 ......
数据结构 内存 关键 结构 数据

Java设计模式之模板方法

1.1.概述 在面向对象程序设计过程中,程序员常常会遇到这种情况:设计一个系统时知道了算法所需的关键步 骤,而且确定了这些步骤的执行顺序,但某些步骤的具体实现还未知,或者说某些步骤的实现与具体的 环境相关。 例如,去银行办理业务一般要经过以下4个流程:取号、排队、办理具体业务、对银行工作人员进行评 ......
设计模式 模板 模式 方法 Java

迁移类型与内存碎片

前言 在伙伴系统中长时间的内存分配之后很容易造成内存碎片,即物理内存总量不少但是无法合并为大的连续内存块。而在现代CPU中提供了huge page的可能,可以分配超大块的page,在TLB中使用更少级的地址转换操作。一个page覆盖了更大的地址范围,大幅度的提高了TLB的命中概率。对于内存密集型应用 ......
碎片 内存 类型

分布式事务:XA和Seata的XA模式

上一篇内容《从2PC和容错共识算法讨论zookeeper中的Create请求》介绍了保证分布式事务提交的两阶段提交协议,而XA是针对两阶段提交提出的接口实现标准,本文则对XA进行介绍 ......
分布式 事务 模式 Seata

Java设计模式之策略模式

1.1 概述 先看下面的图片,我们去旅游选择出行模式有很多种,可以骑自行车、可以坐汽车、可以坐火车、可以坐飞机 作为一个程序猿,开发需要选择一款开发工具,当然可以进行代码开发的工具有很多,可以选择Idea 进行开发,也可以使用eclipse进行开发,也可以使用其他的一些开发工具。 定义: 该模式定义 ......
模式 设计模式 策略 Java

基于Spring事件驱动模式实现业务解耦

事件驱动模式 举个例子🌰 大部分软件或者APP都有会有会员系统,当我们注册为会员时,商家一般会把我们拉入会员群、给我们发优惠券、推送欢迎语什么的。 值得注意的是: 注册成功后才会产生后面的这些动作; 注册成功后的这些动作没有先后执行顺序之分; 注册成功后的这些动作的执行结果不能互相影响; 传统写法 ......
解耦 模式 事件 业务 Spring

中介者模式

中介者模式 案例引入 要求 1.智能家庭包括设备,闹钟,咖啡机,窗帘等。 2.主人要看电视时,各个设备可以协同工作,自动完成看电视的准备工作,比如流程为,闹钟响起-> 咖啡机开始做咖啡->窗帘自动落下->电视机开始播放。 传统方式实现案例 有闹钟类(Alarm),电视类(TV),窗帘类(Curtai ......
中介者 中介 模式

基于 Linux、C++实现的高性能内存池

1.引入内存池的意义 内存池(Memory Pool)是一种内存分配方式,又被称为固定大小区块规划(fixed-size-blocks allocation)。通常我们习惯直接使用new、malloc等API申请分配内存,但是这种方式非常容易产生内存碎片,早晚都会申请内存失败。并且在比较复杂的代码或 ......
高性能 内存 Linux

Java设计模式动态代理

https://blog.csdn.net/swadian2008/article/details/127126065 import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lan ......
设计模式 模式 动态 Java

Linux p1 VMware虚拟机网络连接三种模式

VMware虚拟机网络连接三种模式: 想自己记录笔记,但是完全写不出来啊,直接转载吧 桥接模式:桥接模式,点击查看 NAT模式:NAT模式,点击查看 主机模式:主机模式,点击查看 ......
模式 VMware Linux 网络 p1

pig4cloud框架系列五:OAuth2之授权码模式认证

前言:OAuth2目前被广泛用于第三方登录场景中,用于鉴权,认证。本文主要简单介绍一下授权码模式认证。 场景:使用微信登录迅雷 一,名词概念 1,第三方应用程序:迅雷 2,服务提供商:微信 3,资源所有者:登录用户 4,认证服务器:微信用来处理认证的服务器 5,资源服务器:微信存放用户生成的资源的服 ......
pig4cloud 框架 模式 4cloud OAuth2

设计模式

1.观察者模式 观察者模式(Observer)又称发布-订阅模式(Publish-Subscribe:Pub/Sub)。它是一种通知机制,让发送通知的一方(被观察方)和接收通知的一方(观察者)能彼此分离,互不影响。 消息系统中,同步消息依次通知各个观察者,异步通知可以同时使所有观察者同时操作。 2. ......
设计模式 模式

伙伴系统(四)内存释放流程

前言 伙伴系统的内存释放API分析,基于Linux 2.6.25。 对外封装的内存释放API分为两类,free_page和free_pages以虚拟地址为参数,__free_page和__free_pages以page指针为参数,可以使用virt_to_page实现虚拟地址到page指针的转化,最终 ......
流程 内存 伙伴 系统

伙伴系统的内存分配流程

前言 伙伴系统的内存分配API解析,基于Linux 2.6.25。 GFP_MASK GFP是get free page的缩写,GFP_MASK是一系列内存分配的掩码,指导伙伴系统寻找合适的内存块进行分配,同时在分配过程中按照掩码的指示进行内存相关的操作,比如内存回收、分配失败后的行为等。 以下四个 ......
流程 内存 伙伴 系统

23种设计模式的图示总结概述(创建型模式和结构型模式)

1、创建型模式 1、简单工厂模式 根据不同的需求(条件),创建出来不同的对象; 2、工厂方法模式 简单地说,就是不同的工厂分别制作不同的产品,这样能够避免上面的工厂出问题,全体待工的情况; 3、抽象工厂模式 出现新的概念——产品等级结构、产品族; 不同的产品有不同的抽象产品,不同的工厂也有不同的抽象 ......
模式 结构型 设计模式 结构

c#组合模式详解

基础介绍: 组合模式用于表示部分-整体的层次结构。适用于希望用户忽略组合对象与单个对象的不同,用户将统一地使用组合结构中的所有对象的情况。 顾名思义,什么叫部分-整体,比如常见的前端UI,一个DIV标签中可以存在多个A标签、P标签、DIV标签等等。 相较于DIV这个容器整体而言,其中所含的A标签、P ......
模式

6.SpringAOP-代理模式-动态代理

把上个案例进行修改 实现动态代理接口: public class Agencey implements InvocationHandler{ 编写set货源方法 private Insurance sellFamily; public Agencey(Insurance s) { sellFamil ......
SpringAOP 模式 动态

对比redis的RDB、AOF模式的优缺点

1.RDB模式优缺点 1.1.RDB 模式优点 1.1.1.RDB快照保存了某个时间点的数据,可以通过脚本执行redis指令bgsave(非阻塞,后台执行)或者save(会阻塞写操作,不推荐)命令自定义时间点备份,可以保留多个备份,当出现问题可以恢复到不同时间点的版本,很适合备份,并且此文件格式也支 ......
优缺点 模式 redis RDB AOF

编译安装基于fastcgi模式的多虚拟主机的wordpress和discuz的LAMP架构

目标 实现CentOS 7 编译安装基于 fastcgi 模式的多虚拟主机的wordpress和discuz的LAMP架构 环境准备 两台主机: 一台主机:httpd+php(fastcgi模式) 10.0.0.152 一台主机:mariadb 服务器 10.0.0.162 软件版本: CentOS ......
架构 wordpress 虚拟主机 主机 fastcgi

ZONE_MOVABLE虚拟内存区域

前言 ZONE_MOVABLE是一个虚拟内存域,ZONE_MOVABLE内存区域的范围实际上会覆盖高端内存或者NORMAL内存。 ZONE_MOVABLE有两个作用,其一是解决内存碎片问题,将内存域分为可移动和不可移动的,避免不可移动内存处于可移动内存块之间。其二是用于虚拟内存的热插拔,容器动态的进 ......
ZONE_MOVABLE 内存 区域 MOVABLE ZONE