redis的学习

redis是一个key-value存储系统。

它支持存储的类型很多,有string,list,set,zset(sorted-set有序集合),hash(哈希类型)。

这些数据类型都支持push/pop(推进/弹出)、add/remove(添加/删除),以及取交集,并集,差集等,而且具有原子性。(原子性即一个操作不可中断,要么全部成功,要么全部失败)

redis支持各种不容方式的排序,为保证效率,数据都是缓存在内存之中。与memcached区别在于,redis会周期的把更新的数据写入磁盘,或把修改操作写入追加的记录文件,并在此基础实现master-slave(主从)同步。

redis支持持久化。redis本地持久化有两种方式:RDB 和AOF.。RDB在redis.conf配置文件里配置持久化触发器。AOF是每增加一条记录都会记录到文件中(保存生成这条记录的命令),如果不是用redis做db,还是不要开AOF,数据量太大,重启恢复会是个大工程。

高性能是redis的一个特性。因为是内存操作,级别是毫秒级的,效率自然很高。

redis支持主从同步,并且提供主从复制的方案。这种复制类似于AOF,记录数据生成的命令,主库将新增记录的脚本发送给从库,从库根据脚本生成记录,这个根据网络情况,一般都很快。一般主从库会在同一局域网下,会近似及时同步。redis支持一主多从,动态添加从库,从库数量没有限制。主从库搭建建议采用网状式,链式主从库易造成堵塞。

redis的主从复制的同步原理可以分为全量同步和增量同步。

全量同步

Redis全量复制一般发生在Slave初始化阶段,这时Slave需要将Master上的所有数据都复制一份。具体步骤如下: 

  1)从服务器连接主服务器,发送SYNC命令; 

  2)主服务器接收到SYNC命名后,开始执行BGSAVE命令生成RDB文件并使用缓冲区记录此后执行的所有写命令; 

  3)主服务器BGSAVE执行完后,向所有从服务器发送快照文件,并在发送期间继续记录被执行的写命令; 

  4)从服务器收到快照文件后丢弃所有旧数据,载入收到的快照; 

  5)主服务器快照发送完毕后开始向从服务器发送缓冲区中的写命令; 

  6)从服务器完成对快照的载入,开始接收命令请求,并执行来自主服务器缓冲区的写命令; 

增量同步

Redis增量复制是指Slave初始化后开始正常工作时主服务器发生的写操作同步到从服务器的过程。 

增量复制的过程主要是主服务器每执行一个写命令就会向从服务器发送相同的写命令,从服务器接收并执行收到的写命令。

redis主从同步的策略

主从刚刚连接的时候,进行全量同步;全同步结束后,进行增量同步。当然,如果有需要,slave 在任何时候都可以发起全量同步。redis 策略是,无论如何,首先会尝试进行增量同步,如不成功,要求从机进行全量同步。

【MATLAB源程序代码合集】: 基于仿射变换的数字图象置乱技术 MATLAB源程序代码.rar 拉格朗日插值 MATLAB源程序代码.rar 蒙特卡洛法求椭圆面积的 MATLAB源程序代码.rar 牛顿(Newton)插值MATLAB源程序代码.rar 杨氏双孔干涉实验的计算机模拟源程序代码.rar MATLAB DCT水印源程序代码.ra 图形界面实现动态画图曲线的源程序代码.rar MATLAB符号计算实例 函数的最值点渐近线拐点 源程序.rar 光通过三棱镜色散动画。rar 绘制维维安尼(Viviani)曲线源代码程序。ra MATLAB绘制分子结构 源程序代码.rar 霍夫曼编码译码gui界面设计源程序代码.rar MATLAB计算粒子速度分布 源程序代码.ra 建模人口增长模型源程序代码.rar MATLAB拟合求解圆心和半径 源程序代码.rar MATLAB牛顿法求解非线性方程组 源程序代码.rar 求解非线性方程组源程序代码.rar MATLAB求解非线性最小二乘法拟合问题 源程序代码.rar 求解混沌系统微分方程组。rar MATLAB求解矩阵的特征值 源程序代码.ral 求解偏微分方程(扩散方程)有限差分法源程序代码.rar MATLAB求解无穷区间定积分问题 源程序代码.rar MATLAB 三次样条插值法 求信号的包络线 源代码.ra MATLAB设计的简单滤波器程序源代码.rar 生成gif图片程序源代码.rar MATLAB实现不同插值方法的gui界面设计源程序代码.rar MATLAB实现单摆在外力矩作用下的动画 源程序代码.ra MATLAB实现股票价格预测 源程序代码.rar .......
内容概要:本文介绍了利用遗传算法在MATLAB中实现热电联产(CCHP)系统的选址和容量规划的方法。热电联产项目涉及多个复杂因素,如燃料成本、运营成本、环境影响及电网和热网的承载能力。传统的选址定容方法难以全面考虑这些因素,而遗传算法因其全局优化能力和适应性强的特点,成为解决此类问题的有效手段。文中详细阐述了遗传算法的基本原理、程序结构与功能,包括参数设置、适应度函数设计、染色体编码与解码、遗传操作等,并提供了具体的MATLAB代码实现。此外,还讨论了适应度函数中对建设成本、热网和电网潮流计算的处理,以及交叉算子的自适应调整策略。最终,通过实际案例验证了该方法的有效性,相比传统方法,能够显著降低初期投入并优化资源配置。 适合人群:从事热电联产系统研究、设计和优化的专业人士,以及对遗传算法及其应用感兴趣的科研人员和技术开发者。 使用场景及目标:适用于需要进行热电联产项目选址和容量规划的实际工程场景,旨在寻找最优解决方案,降低成本,提高系统效率。同时,也为相关领域的研究人员提供了一种有效的优化方法。 其他说明:文中提供的MATLAB代码可以直接用于类似项目的仿真和优化,但需要注意根据实际情况调整参数和适应度函数。此外,文中提到的一些特殊处理方法,如自适应交叉算子和粒子群优化辅助搜索,有助于提高算法性能和收敛速度。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值