(文章复现)考虑网络动态重构的分布式电源选址定容优化方法

这篇具有很好参考价值的文章主要介绍了(文章复现)考虑网络动态重构的分布式电源选址定容优化方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

参考文献:

[1]朱俊澎,顾伟,张韩旦,等.考虑网络动态重构的分布式电源选址定容优化方法[J].电力系统自动化,2018,42(05):111-119.

1.摘要

        以投资周期经济收益最高为目标,基于二阶锥规划提出了一种考虑网络动态重构的分布式电源选址定容优化方法。首先,针对闭环设计的配电网结构,提出计及联络线和分段开关状态的拓展DistFlow潮流模型,并基于此建立了考虑网络动态重构的分布式电源配置优化模型。引入“虚拟支路电压”的概念对模型进行线性化处理,提出了基于“有功流”的辐射形拓扑线性约束方法,同时配合电流、电压变量替换和二阶锥松弛,建立了统一优化模型的二阶锥形式。采用添加辅助电压约束的方法,解决了对含电压上限约束时二阶锥模型松弛不紧致的问题。在IEEE标准算例中测试了算法的有效性,结果表明,考虑网络动态重构可以提高电网对分布式电源的消纳能力,同时提升分布式电源投资周期内的总体经济效益。

2.原理介绍

2.1目标函数

        本节基于拓展 DistFlow潮流模型提出考虑网络动态重构的RDG选址定容优化模型。目标函数及控制变量表达式如下:

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

        各项成本的具体表达式见式(13)和式(14)。规划阶段的固定投资成本由RDG的容量决定,运行阶段的成本包含RDG运维成本Com 、配电网购电成本Cut和网络重构成本Crec 。

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

2.2 约束条件

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

2.3模型的简化

        在本文中,分布式电源投资周期设为15年﹐典型场景考虑了春、夏、秋、冬4个典型日内的负荷和RDG出力波动,时刻为一天内24个时刻,则总断面数为1 440个。考虑计算速度的要求和计算机内存容量的限制﹐做出如下简化。

        1)考虑负荷年增长率﹐将投资周期内的负荷简化为低、中、高3个负荷水平﹐分别对应1~5年,6~10年和 11~15年的平均负荷。

        2)每天24个时刻划分为12个时段﹐各时段负荷的取值为该时段内2个时刻的平均值。重构频率最高为每3个时段一次,即每天最多重构4次。

        3)网络重构起到平衡负荷、改善全网电压的作用,在负荷每年等比例增长时,各条线路负载的相对轻重状况和电压在全网的分布走势不发生变化,因此本文假定重构策略不随年份变化。

        经过简化,总断面数缩小为144个,二进制变量规模显著减小,使得算法满足计算效率要求。

3.编程思路

3.1参数和变量定义

表1 相关参数

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

2 决策变量

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

3.2编程思路

        根据对文献内容的解读,可以设计下面的编程思路:

步骤1:输入所需数据

        这一步比较简单,大部分所需数据文中都已给出,部分没有提供的数据可以自己假设一下。其中IEEE33节点配电网直接使用matpower中的数据。

步骤2定义决策变量

        这一步比较简单,按照表2,初始化决策变量即可,同时每个决策变量的维度以及类型(sdpvar还是binvar)不要出错。需要注意的是,文中每个优化变量都有12个时刻,四种典型场景和三种负荷大小,共144个断面,定义时比较复杂。代码中为简化表示,将变量按照四种典型场景分别进行定义,每个典型场景对应的变量和约束均一致,命名时有所区分即可。

步骤3:写目标函数和约束条件

        这一步需要按照给定的数据和定义的变量,分别写出优化问题的目标函数和约束条件。由于优化问题比较复杂,写约束条件的时候很容易出错,需要非常仔细。

步骤4:使用yalmip工具箱对优化问题进行求解

        文中构建的优化问题都是混合整数二阶锥规划形式,代码中是采用yalmip+gurobi进行求解。

3.3文献中存在的问题分析

1)RDG的接入位置前后不统一

        在文中3.1参数设置的第一段话中,RDG接入位置前后不统一,可能是存在笔误,代码中以17-18与31-33为准。

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

2)模型中没有考虑可控开关

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

        在文中3.1参数设置的第一段话中,提到了安装可控开关的支路,表示除了这些支路外其余支路都是不能动作的。但在模型中并未体现这一点,需要增加相关约束,公式如下:

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

3)模型中没有约束配电网从上级电网的购电量

        文中没有给变量Pi,uit设置上下限,在优化过程中可能会出现购电量为负数的情况,出现功率倒送问题,影响电网运行安全。因此需要给配电网购电量添加上下限约束:

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

4)光伏出力模型的细节问题

        原文献在附录表B2中给出了光伏四个典型场景的出力曲线,但DG运行模型中,仅用公式(23)约束了DG每个时段的出力不能超过其出力上限,并未考虑光伏出力曲线。此外,式23引入非常多的二次约束,会增加模型求解难度,可以通过给定的光伏出力曲线和光伏电站的容量确定每个时段的光伏出力。

4.部分Matlab代码

%% Case 3:考虑RDG的接入和重构,采用本文提出的方法优化求解。

%% 清除内存空间
clc
clear
close all
warning off
yalmip('clear')

%% 系统参数
mpc = IEEE33;
SB = mpc.baseMVA;                           % 基准功率,MVA
VB = mpc.bus(1,10);                         % 基准电压,kV
NL = length(mpc.branch(:,1));               % 线路总数
Nbus = length(mpc.bus(:,1));                % 节点总数
NT = 12;                                    % 时段数
r = 0.023;                                  % 通货膨胀率
Y = 15;                                     % 投资周期年数
Ocand = [17,18,31,32,33];                   % RDG接入候选节点
N_DG = length(Ocand);                       % RDG最多的连接节点数
O_autoL = [3,7,8,9,13,18,23,27,31,33:37];   % 安装可控开关的支路
N_autoL = length(O_autoL);                  % 安装可控开关的支路数
cinv_fix = 10000;                           % RDG固定投资成本
cinv_mar = 11;                              % RDG边际投资成本系数
com = 150;                                  % RDG运维成本系数
cuti = 0.4*ones(1,NT);                      % 谷时购电电价
cuti(5:10) = 0.7;                           % 峰时购电电价
crec = 0.5;                                 % 单次开关操作成本
S = 4;                                      % 场景总数
load('Load_PV_data.mat')                    % 读取典型负荷曲线和光伏出力曲线
Pi_L_sp = zeros(Nbus,NT);                   % 春季典型场景有功负荷
Qi_L_sp = zeros(Nbus,NT);                   % 春季典型场景无功负荷
Pi_L_su = zeros(Nbus,NT);                   % 夏季典型场景有功负荷
Qi_L_su = zeros(Nbus,NT);                   % 夏季典型场景无功负荷
Pi_L_au = zeros(Nbus,NT);                   % 秋季典型场景有功负荷
Qi_L_au = zeros(Nbus,NT);                   % 秋季典型场景无功负荷
Pi_L_wi = zeros(Nbus,NT);                   % 冬季典型场景有功负荷
Qi_L_wi = zeros(Nbus,NT);                   % 冬季典型场景无功负荷
PL_T = [1.0305, 1.1101, 1.1959];            % 低、中、高不同的负荷水平
Re_node = [6, 14];                          % 商业负荷接入节点
Co_node = setdiff(1:33,[6, 14]);            % 居民负荷接入节点
PL0 = PL0';
for t = 1:NT
    % 6和14节点接入商业负荷
    Pi_L_sp(Re_node,t) = mean(PL0(1, 2*t-1:2*t))*mpc.bus(Re_node,3)/SB;
    Qi_L_sp(Re_node,t) = mean(PL0(1, 2*t-1:2*t))*mpc.bus(Re_node,4)/SB;
    Pi_L_su(Re_node,t) = mean(PL0(3, 2*t-1:2*t))*mpc.bus(Re_node,3)/SB;
    Qi_L_su(Re_node,t) = mean(PL0(3, 2*t-1:2*t))*mpc.bus(Re_node,4)/SB;
    Pi_L_au(Re_node,t) = mean(PL0(5, 2*t-1:2*t))*mpc.bus(Re_node,3)/SB;
    Qi_L_au(Re_node,t) = mean(PL0(5, 2*t-1:2*t))*mpc.bus(Re_node,4)/SB;
    Pi_L_wi(Re_node,t) = mean(PL0(7, 2*t-1:2*t))*mpc.bus(Re_node,3)/SB;
    Qi_L_wi(Re_node,t) = mean(PL0(7, 2*t-1:2*t))*mpc.bus(Re_node,4)/SB;
    
    % 其余节点接入居民负荷
    Pi_L_sp(Co_node,t) = mean(PL0(2, 2*t-1:2*t))*mpc.bus(Co_node,3)/SB;
    Qi_L_sp(Co_node,t) = mean(PL0(2, 2*t-1:2*t))*mpc.bus(Co_node,4)/SB;
    Pi_L_su(Co_node,t) = mean(PL0(4, 2*t-1:2*t))*mpc.bus(Co_node,3)/SB;
    Qi_L_su(Co_node,t) = mean(PL0(4, 2*t-1:2*t))*mpc.bus(Co_node,4)/SB;
    Pi_L_au(Co_node,t) = mean(PL0(6, 2*t-1:2*t))*mpc.bus(Co_node,3)/SB;
    Qi_L_au(Co_node,t) = mean(PL0(6, 2*t-1:2*t))*mpc.bus(Co_node,4)/SB;
    Pi_L_wi(Co_node,t) = mean(PL0(8, 2*t-1:2*t))*mpc.bus(Co_node,3)/SB;
    Qi_L_wi(Co_node,t) = mean(PL0(8, 2*t-1:2*t))*mpc.bus(Co_node,4)/SB;
end
NDG_max = 3;                                    % 分布式电源个数上限
Ncap_max = [20;25;30;35;40];                    % 单个电站的机组上限
Sunit = 50/1e3/SB;                              % 分布式电源单位机组功率    
M = 100;                                        % 足够大的正数
rij = mpc.branch(:,3);                          % 支路电阻
xij = mpc.branch(:,4);                          % 支路电抗
Umax = 1.05;                                    % 节点电压上限
Umin = 0.95;                                    % 节点电压下限
Imax = 10;                                      % 支路电流上限
aij0 = mpc.branch(:,11);                        % 初始开关状态
Ns_d = [91 91 91 92];                           % 四个季节的天数
branch_to_node = zeros(Nbus,NL);                % 节点的上游支路
branch_from_node = zeros(Nbus,NL);              % 节点的下游支路
for k = 1:NL
    branch_to_node(mpc.branch(k,2),k) = 1;
    branch_from_node(mpc.branch(k,1),k) = 1;
end

%% RDG接入变量
xi_loc = binvar(N_DG,1);                        % 0-1决策变量,表示节点i是否接入RDG
Si = sdpvar(N_DG,1);                            % 节点i接入RDG的容量
Ni = intvar(N_DG,1);                            % 节点i分布式电站中机组的个数

%% 春季典型场景的决策变量
aij_sp = binvar(NL,NT/3);                       % 支路ij的开关状态
% RDG有功出力
Pi_DG_sp = Si*(Ppv0(1:2:23,1) + Ppv0(2:2:24,1))'/2*0.8;   
% RDG无功出力
Qi_DG_sp = Si*(Ppv0(1:2:23,1) + Ppv0(2:2:24,1))'/2*0.6;               
Pi_uit_sp = sdpvar(NT,3);                       % 上级电源有功出力
Qi_uit_sp = sdpvar(NT,3);                       % 上级电源无功出力
Ui_sp = sdpvar(Nbus,NT,3);                      % 节点i电压的平方
Iij_sp = sdpvar(NL,NT,3);                       % 支路电流的平方
Pij_sp = sdpvar(NL,NT,3);                       % 线路ij的有功功率
Qij_sp = sdpvar(NL,NT,3);                       % 线路ij的无功功率

%% 夏季典型场景的决策变量
aij_su = binvar(NL,NT/3);                       % 支路ij的开关状态
% RDG有功出力
Pi_DG_su = Si*(Ppv0(1:2:23,1) + Ppv0(2:2:24,1))'/2*0.8;   
% RDG无功出力
Qi_DG_su = Si*(Ppv0(1:2:23,1) + Ppv0(2:2:24,1))'/2*0.6;   
Pi_uit_su = sdpvar(NT,3);                       % 上级电源有功出力
Qi_uit_su = sdpvar(NT,3);                       % 上级电源无功出力
Ui_su = sdpvar(Nbus,NT,3);                      % 节点i电压的平方
Iij_su = sdpvar(NL,NT,3);                       % 支路电流的平方
Pij_su = sdpvar(NL,NT,3);                       % 线路ij的有功功率
Qij_su = sdpvar(NL,NT,3);                       % 线路ij的无功功率

%% 秋季典型场景的决策变量
aij_au = binvar(NL,NT/3);                       % 支路ij的开关状态
% RDG有功出力
Pi_DG_au = Si*(Ppv0(1:2:23,1) + Ppv0(2:2:24,1))'/2*0.8;   
% RDG无功出力
Qi_DG_au = Si*(Ppv0(1:2:23,1) + Ppv0(2:2:24,1))'/2*0.6;   
Pi_uit_au = sdpvar(NT,3);                       % 上级电源有功出力
Qi_uit_au = sdpvar(NT,3);                       % 上级电源无功出力
Ui_au = sdpvar(Nbus,NT,3);                      % 节点i电压的平方
Iij_au = sdpvar(NL,NT,3);                       % 支路电流的平方
Pij_au = sdpvar(NL,NT,3);                       % 线路ij的有功功率
Qij_au = sdpvar(NL,NT,3);                       % 线路ij的无功功率

%% 冬季典型场景的决策变量
aij_wi = binvar(NL,NT/3);                       % 支路ij的开关状态
% RDG有功出力
Pi_DG_wi = Si*(Ppv0(1:2:23,1) + Ppv0(2:2:24,1))'/2*0.8;   
% RDG无功出力
Qi_DG_wi = Si*(Ppv0(1:2:23,1) + Ppv0(2:2:24,1))'/2*0.6;   
Pi_uit_wi = sdpvar(NT,3);                       % 上级电源有功出力
Qi_uit_wi = sdpvar(NT,3);                       % 上级电源无功出力
Ui_wi = sdpvar(Nbus,NT,3);                      % 节点i电压的平方
Iij_wi = sdpvar(NL,NT,3);                       % 支路电流的平方
Pij_wi = sdpvar(NL,NT,3);                       % 线路ij的有功功率
Qij_wi = sdpvar(NL,NT,3);                       % 线路ij的无功功率

%% DG配置与运行约束
省略

%% 春季典型场景约束条件
Constraints_sp = [];
省略

%% 夏季典型场景约束条件
Constraints_su = [];
省略

%% 秋季典型场景约束条件
Constraints_au = [];
省略

%% 冬季典型场景约束条件
Constraints_wi = [];
省略


%% 目标函数
% DG投资运维成本
Cinv = sum(xi_loc.*(cinv_fix + cinv_mar*Si*SB*1e6));                    % DG投资成本
Com = sum(com*Si*SB*1e3);                                               % DG运维成本

% 春季场景
Cuti_sp = sum(sum(Pi_uit_sp*Ns_d(1).*(cuti'*ones(1,3))))*SB*1e3;        % 购电成本
Nswitch_sp = sum(abs(aij_sp(:,1) - aij0));                              % 开关动作次数
for k = 2:4
    Nswitch_sp = Nswitch_sp + sum(abs(aij_sp(:,k) - aij_sp(:,k-1)));
end
Crec_sp = Ns_d(1)*crec*Nswitch_sp;

% 夏季场景
Cuti_su = sum(sum(Pi_uit_su*Ns_d(2).*(cuti'*ones(1,3))))*SB*1e3;        % 购电成本
Nswitch_su = sum(abs(aij_su(:,1) - aij0));                              % 开关动作次数
for k = 2:4
    Nswitch_su = Nswitch_su + sum(abs(aij_su(:,k) - aij_su(:,k-1)));
end
Crec_su = Ns_d(2)*crec*Nswitch_su;

% 秋季场景
Cuti_au = sum(sum(Pi_uit_au*Ns_d(3).*(cuti'*ones(1,3))))*SB*1e3;        % 购电成本
Nswitch_au = sum(abs(aij_au(:,1) - aij0));                              % 开关动作次数
for k = 2:4
    Nswitch_au = Nswitch_au + sum(abs(aij_au(:,k) - aij_au(:,k-1)));
end
Crec_au= Ns_d(1)*crec*Nswitch_au;

% 冬季场景
Cuti_wi = sum(sum(Pi_uit_wi*Ns_d(4).*(cuti'*ones(1,3))))*SB*1e3;        % 购电成本
Nswitch_wi = sum(abs(aij_wi(:,1) - aij0));                              % 开关动作次数
for k = 2:4
    Nswitch_wi = Nswitch_wi + sum(abs(aij_wi(:,k) - aij_wi(:,k-1)));
end
Crec_wi = Ns_d(2)*crec*Nswitch_wi;

Ctotal = Cinv + Com + 5*(Cuti_sp + Crec_sp + Cuti_su + Crec_su + Cuti_au + Crec_au) + 15*(Cuti_wi + Crec_wi);

%% 设求解器
% gurobi求解器
ops = sdpsettings('verbose', 3, 'solver', 'gurobi','showprogress', 1 , 'usex0',1,'debug',1, 'gurobi.Heuristics' , 0.2);
ops.gurobi.TimeLimit = 1200;                % 运行时间限制为30min
ops.gurobi.MIPGap = 0.005;                  % 收敛精度限制为0.005

sol = optimize([Constraints_DG, Constraints_sp, Constraints_su, Constraints_au, Constraints_wi], Ctotal, ops);


%% 分析错误标志
if sol.problem == 0
    disp('求解成功');
else
    disp('运行出错');
    yalmiperror(sol.problem)
end

%% 运行结果
show_result;

        以上仅为计算原文献场景3的部分代码,完整matlab代码可从以下链接获取(PS,代码中使用了gurobi求解器,没有的话需要提前安装好;另外,由于文中所提优化问题比较复杂,求解时很容易出现内存不足的情况。如果运行时出现内存不足的情况,一般可以通过修改gurobi最大求解时间和收敛精度来解决):

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法matlab代码资源-CSDN文库

5.代码运行结果

        原文中数据提供不全,所以代码复现结果和原文献相比会有偏差,但原理完全一样。

5.1 RDG选址定容、重构策略和经济性指标

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

5.2 配电网电压分布

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

5.3配电网损耗分布

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划

(文章复现)考虑网络动态重构的分布式电源选址定容优化方法,电气期刊论文复现,电力系统运行优化,matlab,yalmip,分布式电源,配电网重构,混合整数二阶锥规划文章来源地址https://www.toymoban.com/news/detail-849713.html

到了这里,关于(文章复现)考虑网络动态重构的分布式电源选址定容优化方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 考虑充电负荷空间可调度特性的分布式电源与电动汽车充电站联合配置方法(Matlab代码实现)

    💥💥💞💞 欢迎来到本博客 ❤️❤️💥💥 🏆博主优势: 🌞🌞🌞 博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️ 座右铭: 行百里者,半于九十。 📋📋📋 本文目录如下: 🎁🎁🎁 目录 💥1 概述 📚2 运行结果 🎉3 参考文献 🌈4 Matlab代码、数据及文章

    2024年02月16日
    浏览(40)
  • 一篇文章介绍分布式事务

    事务 事务指的就是一个操作单元,在这个操作单元中的所有操作最终要保持一致的行为,要么所有操作都成功,要么所有的操作都被撤销。简单地说,事务提供一种“要么什么都不做,要么做全套”机制。 本地事务 本地事务其实可以认为是数据库提供的事务机制。说到数据

    2023年04月23日
    浏览(39)
  • 文章学习:TPRE:分布式门限代理重加密

    学习文章:TPRE:分布式门限代理重加密 成方金科新技术实验室与隐语团队合作,构建了“ 基于国密的分布式门限代理重加密算法TPRE ”,为用户提供了一种安全、高效、自主可控的数据共享和授权管理方案。在 数据隐私保护 和 数据安全共享 方面具有广泛的应用前景。 ⚠️

    2024年02月01日
    浏览(55)
  • 文章学习:TPRE-分布式门限代理重加密

    学习文章:TPRE:分布式门限代理重加密 成方金科新技术实验室与隐语团队合作,构建了“ 基于国密的分布式门限代理重加密算法TPRE ”,为用户提供了一种安全、高效、自主可控的数据共享和授权管理方案。在 数据隐私保护 和 数据安全共享 方面具有广泛的应用前景。 ⚠️

    2024年02月01日
    浏览(53)
  • 【分布式和微服务1】一篇文章详细了解分布式和微服务的基本概念

    🍀 通俗一点说,高可用的意思是:在 高 并发的情况下,系统仍然是 可用 的 🍀 高可用的目的:保障业务的连续性( 实现在用户眼里,业务永远是正常对外提供服务的 ) 🍀 🍬 【上图】一个 SpringBoot 项目( apple.jar )被部署到服务器上运行,可向其发送 网络请求 对 数据

    2024年02月02日
    浏览(69)
  • 微服务系列文章之 Redisson实现分布式锁

    当我们在设计分布式锁的时候,我们应该考虑分布式锁至少要满足的一些条件,同时考虑如何高效的设计分布式锁,这里我认为以下几点是必须要考虑的。 1、互斥 在分布式高并发的条件下,我们最需要保证,同一时刻只能有一个线程获得锁,这是最基本的一点。 2、防止死

    2024年02月15日
    浏览(99)
  • 【Matlab复现】基于自适应遗传算法的分布式电源优化配置

    目录 1 主要内容 ​2 部分程序​ 3 程序结果 4 下载链接 该程序采用自适应遗传算法优化分布式电源的配置问题,以投资运行成本、网络损耗成本、购电成本和碳排放成本之和作为优化目标,潮流计算采用前推回代法进行计算,程序不止复现了参考文献的33节点系统,同时也

    2024年02月01日
    浏览(46)
  • 微服务系列文章之 Redisson实现分布式锁(3)

    1、技术架构 项目总体技术选型 2、加锁方式 该项目支持  自定义注解加锁  和  常规加锁  两种模式 自定义注解加锁 常规加锁 3、Redis部署方式 该项目支持四种Redis部署方式 该项目已经实现支持上面四种模式,你要采用哪种只需要修改配置文件 application.properties ,项目代码

    2024年02月16日
    浏览(40)
  • 微服务系列文章之 Redisson实现分布式锁(2)

    1、概念 很明显RLock是继承Lock锁,所以他有Lock锁的所有特性,比如lock、unlock、trylock等特性,同时它还有很多新特性:强制锁释放,带有效期的锁,。 2、RLock锁API 这里针对上面做个整理,这里列举几个常用的接口说明 RLock相关接口,主要是新添加了  leaseTime  属性字段,主要是

    2024年02月16日
    浏览(33)
  • Linux-一篇文章,速通Hadoop集群之伪分布式,完全分布式,高可用搭建(附zookeeper,jdk介绍与安装)。

    文章较长,附目录,此次安装是在VM虚拟环境下进行。文章第一节主要是介绍Hadoop与Hadoop生态圈并了解Hadoop三种集群的区别,第二节和大家一起下载,配置Linux三种集群以及大数据相关所需的jdk,zookeeper,只需安装配置的朋友可以直接跳到文章第二节。同时,希望我的文章能帮

    2024年03月19日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包