Loading

邢栋博客

“程序积累“

关于redis pipeline

为什么需要 pipeline ? Redis 的工作过程是基于 请求/响应 模式的。正常情况下,客户端发送一个命令,等待 Redis 应答;Redis 接收到命令,处理后应答。请求发出到响应的时间叫做往返时间,即 RTT(Round Time Trip)。在这种情况下,如果需要执行大量的命令,就需要等待上一条命令应答后再执行。这中间不仅仅多了许多次 RTT,而且还频繁的调用系统 IO,发送网络请求。为了提升效率,pipeline 出现了,它允许客户端可以一次发送多条命令,而不等待上一条命令执行的结果。 实现思路 客户端首先将执行的命令写入到缓冲区中,最后...

常用正则表达式总结

一、校验数字的表达式 1 数字:^$ 2 n位的数字:^\d{n}$ 3 至少n位的数字:^\d{n,}$ 4 m-n位的数字:^\d{m,n}$ 5 零和非零开头的数字:^(0|)$ 6 非零开头的最多带两位小数的数字:^()+(.{1,2})?$ 7 带1-2位小数的正数或负数:^(-)?\d+(.\d{1,2})?$ 8 正数、负数、和小数:^(-|+)?\d+(.\d+)?$ 9 有两位小数的正实数:^+(.{2})?$ 10 有1~3位小数的正实数:^+(.{1,3})?$ 11 非零的正整数:^\d$ 或 ^(){1,3}$ 或 ^+?$ 1...

php简单工厂、工厂模式、抽象工厂实例总结

简单工厂 <?php /** * Created by PhpStorm. * User: xingdong * Date: 2019/8/3 * Time: 上午10:05 */ //简单工厂 interface Product { public function getPrice(); public function getName(); } class ProductA implements Product { public function getPrice() { return...

数据结构之数组和链表

数组 1.在内存中,数组是一块连续的区域 2.数组需要预留空间,在使用前需要提前申请所占内存的大小 3.在数组起始位置处,插入数据和删除数据效率低 -插入数据时,待插入位置的元素和它后面的所有元素都需要向后搬移 -删除数据时,待删除位置后面的所有元素都要向前搬移 4.随机访问速度效率很高,时间复杂度可以到达O(1) 因为数组的内存是连续的,想要访问那个元素,直接从数组的首地址向后偏移就可以访问到了 5.数组开辟的空间,在不够使用的时候需要扩容,扩容的话,就会涉及需要把旧数组的所有数据向新数组中搬移 6.数组的空间是从栈分配的 数组的优点 随机访问性强,查...

centos7查看开机启用服务列表以及启用禁用相关服务

查看开机启动服务列表 systemctl list-unit-files systemctl list-unit-files |grep php 加入启动 systemctl enable postfix 启动 systemctl start postfix 停止 systemctl stop postfix 禁用 systemctl disable postfix 状态 systemctl status postfix

windows和mac下安装java并配置路径

进入 https://www.oracle.com/technetwork/java/javase/downloads/index.html 下载对应的平台+版本的安装包 WINDOWS平台下 公用JRE 不用安装 我的电脑--属性--高级系统设置 --环境变量 配置环境遍历 JAVA_HOME D:\Program Files\Java\jdk1.8.0_201 PATH 加入 D:\Program Files\Java\jdk1.8.0_201\bin CLASSPATH .;D:\Program Files\Java\jdk1.8.0_201\li...

解决页面加载防盗链图片失败问题

在页面head标签内加入 referer的metedata属性可设置content属性值为以下集合: 1.never 2.always 3.origin 说明: 如果referer-policy的值为never:删除http head中的referer; 如果referer-policy的值为default:如果当前页面使用的是https协议,而正要加载资源使用的是普通的http协议,则将http header中额referer置为空; 如果referer-policy的值origin:只发送origin部分; 如果referer-policy的值为a...

SpringBoot项目打包简记

项目目录 first-app-demo 模型层:model 持久层:persistence 表示层:web 把 jar 修改成 pom,默认是 jar pom.xml(first-app-demo) 模型层:model 持久层:persistence 表示层:web web 依赖于 persistence ,persistence 依赖于 model web Controller ->UserRepository -> User jar打包方式 cd D:\JAVA_PROJECT\first-app-demo 在pom.xml(fisrt-...

jar包和war包的介绍和区别

1.jar包的介绍 JAR(Java Archive,Java 归档文件)是与平台无关的文件格式,它允许将许多文件组合成一个压缩文件。JavaSE程序可以打包成Jar包(J其实可以理解为Java了)。 JAR 文件格式以流行的 ZIP 文件格式为基础。与 ZIP 文件不同的是,JAR 文件不仅用于压缩和发布,而且还用于部署和封装库、组件和插件程序,并可被像编译器和 JVM 这样的工具直接使用。在 JAR 中包含特殊的文件,如 manifests 和部署描述符,用来指示工具如何处理特定的 JAR。 简单来说,jar包就是别人已经写好的一些类,然后对这些类进...

yii2设置默认时间时区(基础模板和高级模板)

基本模板 config/web.php 在$config中加入 'timeZone'=>'Asia/Shanghai', 高级模板 common/config/main.php 在return中加入 'timeZone'=>'Asia/Shanghai',