04 2024 档案
摘要:分布式事务在多个场景中都有应用,主要包括: 支付系统。在支付过程中,需要从买家的账户扣款并向卖家的账户转账。由于买家和卖家的账户可能位于不同的数据库中,这时候就需要使用分布式事务来确保这两个操作要么同时成功,要么同时失败。 电子商务平台。在电商平台中,下单购买商品时需要扣减库存和更新订单状态。库存和
阅读全文
摘要:gRPC(gRPC Remote Procedure Call)是一种高性能、跨语言的远程过程调用框架,通常用于构建分布式系统和微服务架构中的通信层。以下是一些gRPC的常见应用场景: 微服务架构:gRPC非常适合用于微服务架构中,可以用于服务之间的通信,提供高性能、类型安全和易于维护的通信机制。它
阅读全文
摘要:publish_post:参数一个($post_ID),点击发布文章时就会被触发; save_post:参数一个($post_ID),发布或更新文章时就会被触发; edit_post:参数两个($post_ID, $post),只要编辑已经存在的文章就会被触发; publish_future_pos
阅读全文
摘要:第一种方案进入容器的命令行界面。您可以使用命令docker exec -it <容器名称或ID> /bin/bash来进入容器。 在容器内部,运行以下命令来安装tzdata软件包: apt-get update && apt-get install -y tzdata 安装完成后,运行以下命令来设置
阅读全文
摘要:什么是IO多路复用?就是异步阻塞IO。目的在于提升系统效率。 服务器端编程经常需要构造高性能的IO模型,常见的IO模型有四种: (1)同步阻塞IO(Blocking IO):即传统的IO模型。 (2)同步非阻塞IO(Non-blocking IO):默认创建的socket都是阻塞的,非阻塞IO要求s
阅读全文
摘要:tcp和udp的区别有:1、udp是无连接的,tcp是面向连接的;2、udp是不可靠传输,tcp是可靠传输;3、udp是面向报文传输,tcp是面向字节流传输。 UDP UDP协议全称是用户数据报协议,在网络中它与TCP协议一样用于处理数据包,是一种无连接的协议。在OSI模型中,在第四层——传输层,处
阅读全文
摘要:传输控制协议(TCP)是一种面向连接的、可靠的、基于字节流的传输层通信协议。UDP为应用程序提供了一种无需建立连接就可以发送封装的IP数据包的方法。区别:连接方面,安全方面,传输效率,连接对象数量。 1、连接方面区别 TCP面向连接(如打电话要先拨号建立连接)。 UDP是无连接的,即发送数据之前不需
阅读全文
摘要:更多:https://www.shanhubei.com/archives/55271.html opcache从字面意思,肯定是缓存这一块的。但是你是否知道它的工作原理是怎样的呢?这里一点一点让你了解! PHP项目中,尤其是在高并发大流量的场景中,如何提升PHP的响应时间,是一项十分重要的工作。而
阅读全文
摘要:php是一个很流行的脚本语言,现在很多公司(新浪、优酷、百度、搜狐、淘宝等等)在使用这种语言进行网站开发。这篇文章希望能够提高你的php脚本性能。请记住你的php脚本性能,很多时候依赖于你的php版本、你的web server环境和你的代码的复杂度。 优化你代码中的瓶颈 Hoare曾经说过“过早优化
阅读全文
摘要:一、使用xshell登录服务器,按步骤数据一下代码,然后宝塔开放3306端口 mysql -u root -p use mysql; select host,user from user; update user set host='%' where user='root'; //刷新权限 flus
阅读全文
摘要:form重复提交场景 场景1:在网络延迟的情况下让用户有时间点击多次submit按钮导致表单重复提交。具体行为:在网络比较慢的情况下,用户连续快速的点击多次提交按钮。 场景2:表单提交后用户点击【刷新】按钮导致表单重复提交。具体行为:用户点击了提交按钮,然后点击浏览器上的【刷新】按钮对form表单又
阅读全文
摘要:在 PHP 中,我们进行字符串处理时,能用字符串处理函数时我们当然要使用简单的字符串处理函数,但字符串处理函数的能力是有限的,所以我们就需要利用一个更强大的工具,那就是正则表达式。 简述正则表达式 正则表达式是什么? 正则表达式就是描述字符串排列模式的一种自定义语法规则。正则表达式就是通过构建具有特
阅读全文
摘要:<?php //测试时文件的编码方式要是UTF8 $str='中文a字1符'; echo strlen($str).'<br>';//14 echo mb_strlen($str,'utf8').'<br>';//6 echo mb_strlen($str,'gbk').'<br>';//8 ech
阅读全文
摘要:var wroxWin = window.open("http://www.shanhubei.com", "_blank");if (wroxWin == null) { alert("糟糕!弹出窗口被屏蔽了");} 更多:https://www.shanhubei.com/archives/55
阅读全文
摘要:在php开发中我们会很经常的使用到html,有时候是很大一段html,直接在php中去编写html很是不方便,相信很多同学都遇到过,不用担心php中的定界符heredoc和nowdoc会帮助我们的,那就让我们一起来看看吧! php heredoc 与 nowdoc heredoc 结构 heredo
阅读全文
摘要:把每个单词的首字符转换为大写: <?php echo ucwords("hello world"); ?> 注释:该函数是二进制安全的。 相关函数: ucfirst() - 把字符串中的首字符转换为大写 lcfirst() - 把字符串中的首字符转换为小写 strtoupper() - 把字符串转换
阅读全文
摘要:PHP addslashes()函数 addslashes()函数是PHP的一个内置函数,它返回一个在预定义的字符前会添加反斜杠的转义字符串。可以 注:它不会在参数中使用任何指定的字符。 预定义的字符是: ● 单引号(') ● 双引号(") ● 反斜杠(\) ● 空(null)值 基本语法: add
阅读全文
摘要:isset 判断变量是否定义或者是否为空 变量存在返回ture,否则返回false 变量定义不赋值返回false unset一个变量,返回false 变量赋值为null,返回false empty:判断变量的值是否为空,能转换为false的都是空,为空返回true,反之返回false。 "",0,"
阅读全文
摘要:双引号解释变量,单引号不解释变量 双引号里插入单引号,其中单引号里如果有变量的话,变量解释 双引号的变量名后面必须要有一个非数字、字母、下划线的特殊字符,或者用{}讲变量括起来,否则会将变量名后面的部分当做一个整体,引起语法错误 双引号解释转义字符,单引号不解释转义字符,但是解释'\和\\ 能使单引
阅读全文
摘要:htmlspecialchars 只转化下面这几个html代码,而 htmlentities 却会转化所有的html代码,连同里面的它无法识别的中文字符也给转化了。 '&' (ampersand) becomes '&' '"' (double quote) becomes '"'
阅读全文
摘要:<?php date_default_timezone_set('PRC'); /** * 获取给定月份的上一月最后一天 * @param $date string 给定日期 * @return string 上一月最后一天 */ function get_last_month_last_day($
阅读全文
摘要:可以调用 set_error_handler(error_handle_function,error_types)指定错误处理器。如 function customError($errno, $errstr, $errfile, $errline) { echo "<b>Custom error:<
阅读全文
摘要:值常量描述PHP 1 E_ERROR 运行时致命的错误。不能修复的错误。停止执行脚本。 2 E_WARNING 运行时非致命的错误。没有停止执行脚本。 4 E_PARSE 编译时的解析错误。解析错误应该只由解析器生成。 8 E_NOTICE 运行时的通知。脚本发现可能是一个错误,但也可能在正常运行脚
阅读全文
摘要:preg_match('/^[\w\-\.]+@[\w\-]+(\.\w+)+$/',$email); 更多:https://www.shanhubei.com/archives/55206.html
阅读全文
摘要:方法1:php内建函数 strip_tags()除去HTML标签 <?php header("content-type:text/html;charset=utf-8"); function strip_html_tags($str){ $pattern = '/<("[^"]*"|\'[^\']\
阅读全文
摘要:<?php header("content-type:text/html;charset=utf-8"); $script = "以下内容不显示:<script type='text/javascript'>alert('cc');</script>"; $pattern = '/<script[^
阅读全文
摘要:<?php function releative_path($path1,$path2){ $arr1 = explode("/",dirname($path1)); $arr2 = explode("/",dirname($path2)); for ($i=0,$len = count($arr2
阅读全文
摘要:<?php function tree($arr,$pid=0,$level=0){ static $list = array(); foreach ($arr as $v) { //如果是顶级分类,则将其存到$list中,并以此节点为根节点,遍历其子节点 if ($v['parent_id
阅读全文
摘要:本文主要介绍的是php使用函数pathinfo() 、parse_url()和basename()解析URL的实例代码,下面话不多说,直接来看代码 实例代码如下: 1、利用pathinfo解析URL <? $test = pathinfo("http://localhost/index.php");
阅读全文
摘要:实例 格式化本地日期和时间,并返回格式化的日期字符串: <?php // Prints the day echo date("l") . "<br>"; // Prints the day, date, month, year, time, AM or PM echo date("l jS of F
阅读全文
摘要:一、crontab的语法规则 crontab的语法规则格式:代表意义 分钟 小时 日期 月份 周 命令数字范围 0~59 0~23 1~31 1~12 0~7 需要执行的命令周的数字为 0 或 7 时,都代表“星期天”的意思。 * * * * * user-cmd 分 时 日 月 周 user-cm
阅读全文
摘要:CAP原则又称CAP定理,指的是在一个分布式系统中, 一致性(Consistency)、 可用性(Availability)、 分区容错性(Partition tolerance)。 CAP 原则指的是,这三个要素最多只能同时实现两点,不可能三者兼顾。 也被称为Brewer定理,是分布式计算中的一个
阅读全文
摘要:// 首先确保已经配置了Yii的Redis组件 // 在配置文件中(例如:config/main.php) return [ // ... 'components' => [ 'redis' => [ 'class' => 'yii\redis\Connection', 'hostname' =>
阅读全文
摘要:php中的yield关键字是在php 5.5版本引入的一个关键字,它在函数内部可以用来创建一个生成器(generator)。生成器可以用来遍历一个大数据集,而不需要一次性将整个数据集加载到内存中。 yield关键字的作用是将当前函数变成一个生成器函数。在生成器函数内部,我们可以使用yield语句将一
阅读全文
摘要:A:写一个实现了IteratorAggregate 接口的类,通过该类使用foreach遍历。B:使用file_get_contents 将文件内容一次性载入内存,然后逐行遍历。C:通过exec函数,调用shell 工具遍历D:使用别人写的类库 正确答案:A 答案分析:使用 IteratorAggr
阅读全文
摘要:arch显示机器的处理器架构(1) uname -m显示机器的处理器架构(2) uname -r显示正在使用的内核版本 dmidecode -q显示硬件系统部件 - (SMBIOS / DMI) hdparm -i / dev / hda罗列一个磁盘的架构特性 hdparm -tT / dev /
阅读全文
摘要:①单引号内部的变量不会执行, 双引号会执行②单引号解析速度比双引号快。③单引号只能解析部分特殊字符,双引号可以解析所有特殊字符。 更多:http://www.shanhubei.com/archives/55175.html
阅读全文
摘要:echo可以一次输出多个值,多个值之间用逗号分隔。echo是语言结构(language construct),而并不是真正的函数,因此不能作为表达式的一部分使用。echo是php的内部指令,不是函数,无返回值。print():函数print()打印一个值(它的参数),如果字符串成功显示则返回true
阅读全文
摘要:1、cookie数据存放在第三方应用的浏览器上,session数据放在服务器上。2、cookie不是很安全,别人可以分析存放在本地的COOKIE,进行COOKIE欺骗,考虑到安全应当使用session。3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服
阅读全文
摘要:synchronized是同步的意思,在java多线程中,我们一般会考虑共享数据的处理,共享数据的处理包含两块,第一是共享数据,第二是在多线程访问共享数据的时候,如果处理共享数据,保证数据的有效正确性。我们要保证线程A访问共享数据,对数据进行处理的时候,其他线程能够等待线程A访问完毕后,和线程A看到
阅读全文
摘要:其实redis是不会存在并发问题的,因为他是单进程的,再多的命令都是一个接一个地执行的。我们使用的时候,可能会出现并发问题,比如获得和设定这一对。Redis的为什么 有高并发问题?Redis的的出身决定 Redis是一种单线程机制的nosql数据库,基于key-value,数据可持久化落盘。由于单线
阅读全文
摘要:一致性Hash分布简介在服务器数量不发生改变时,普通的Hash分布可以很好地运作。当服务器的数量发生改变时,问题就出来了,试想,增加一台服务器时,同一个key经过Hash之后,与服务器取模的结果跟没增加服务器之前的结果会不一样,这就导致之前保存的数据丢失。为了把丢失的数据减少到最少,可以采用一致性h
阅读全文
摘要:在刚接触 JQuery 中的 ajax 时,对其 contentType 并没有很在意,只是知晓它是代表发送信息至服务器时内容编码类型,通俗点说就是告诉服务器从浏览器提交过来的数据格式。 默认值为contentType = "application/x-www-form-urlencoded".在默
阅读全文
摘要:lvs和nginx都可以用作多机负载方案,他们各有优缺点,在生产环境中需要好好分析实际情况并加以利用。 lvs的优势: 1.抗负载能力强,因为lvs工作方式的逻辑是非常简单的,而且工作在网络层第4层,仅作请求分发用,没有流量,所以在效率上基本不需要太过考虑。lvs一般很少出现故障,即使出现故障一般也
阅读全文
摘要:1 oop是什么? 答:oop是面向对象编程,面向对象编程是一种计算机编程架构,OOP 的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成。 OOP具有三大特点 1、封装性:也称为信息隐藏,就是将一个类的使用和实现分开,只保留部分接口和方法与外部联系,或者说只公开了一些供开发人
阅读全文
摘要:Yarn简介: Yarn是一个快速、可靠、安全的JavaScript软件包管理工具。它是由Facebook开发的,旨在改进npm(Node Package Manager)的性能和可靠性。Yarn提供了更快的下载速度、离线支持、版本锁定等功能,使JavaScript项目的依赖管理更加高效。 在Deb
阅读全文
摘要:sudo nano /etc/ssh/sshd_config #改为 PermitRootLogin yes #然后 sudo systemctl restart ssh 来源:https://www.shanhubei.com/archives/55152.html
阅读全文
摘要:1、设置静态ip 查看网卡名称是ens33 ip address 编辑网卡配置文件 vi /etc/network/interfaces 在最后面添加下面内容 其中 ens33是上步中查询到的网卡名称 address 192.168.2.157 是ip地址 netmask 255.255.255.0
阅读全文