自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

YY-帆S的博客

一个苦逼的程序员

  • 博客(68)
  • 收藏
  • 关注

原创 负载均衡、LVS 杂谈

LVS(Linux Virtual Server)是一个实现负载均衡和高可用性的解决方案,其调度流程涉及从客户端请求到后端服务器处理,再到响应返回给客户端的整个过程。

2024-07-12 23:24:57 763

原创 DNS 杂谈

DNS

2024-07-10 21:03:09 641

原创 Spring 内部类获取不到@Value配置值问题排查(附Spring代理方式)

异常处理、@Value 、Spring 代理模式

2024-06-24 01:36:30 821 1

原创 分布式Id/框架/发号器一文介绍

业务需求中需要对各种数据使用id进行唯一标识。分布式ID是在分布式系统下使用的唯一标识,它用于保证数据的一致性和唯一性。在传统的单机环境下,可以使用自增主键或UUID来生成唯一的ID,但在分布式环境下,由于多个节点同时生成ID,可能会出现重复的情况。因此,需要一种能够生成全局唯一ID的解决方案,这就是分布式ID。

2024-05-19 19:54:56 997

原创 Java常见限流用法介绍和实现

在固定时间窗口的基础上进行优化,对大的时间窗口进行划分,每个小窗口对应大窗口中的不同时间点,每个窗口独立计数。又如在最后1个毫秒内请求了100个请求,下一个毫秒开始新的时间窗口,计数清0,此时又涌入了100个请求,虽说固定时间窗口内没有超过阈值,但是全局看来,这两个毫秒内就涌入了200个请求,对于限流100的概念是不可接受的。与漏桶算法相反,系统以固定的速率往桶里放入令牌,称为令牌桶,如果有请求需要这个令牌,这可以从桶里拿一个,拿到了令牌即允许放行,直到令牌被拿完即令牌不足,则请求需等待或被丢弃。

2024-03-27 15:33:29 3100 1

原创 PHP之CURL和Socket

文章目录一、CURL(1)初始化(2)向服务器发送请求(3)关闭curl一、CURL(1)初始化curl_init()(2)向服务器发送请求curl_exec()(3)关闭curlcurl_close()$curlobj = curl_init();curl_seropt($curlobj, CURLOPT_URL, 'http://www.yyfs.com'); /...

2024-03-24 23:12:16 1187 1

原创 Apache和SESSION防盗链

三、缩略图的制作流程1、获取原图像大小getimagesize():获取图像大小或类型list($width,$heifht) = getimagesize($picInfo[‘tmp_name’]);2、计算缩略图大小(1)$percent = 0.2;:计算缩放比例$thuWidth = $width * $percent;$thuHeight = $height * $perc...

2024-03-24 23:10:22 155

原创 PHP安全技术

文章目录一、攻击一、攻击万能密码:如 xxx‘or’1该密码拼凑出来的sql语句会直接执行 or’1则满足一切条件解决方法:将用户传过来的密码加密,如md5等万能用户名:如 xxx‘or 1# 该密码拼凑出来的sql语句会直接执行 or 1 (#:注释掉后面所有剩余的sql)解决方法:在PHP层面,可以使用addslashes;在MySQL层面,可以用mysqli_real_escape_...

2024-03-24 23:07:09 443

原创 Java服务5xx/进程假死排查

Java、日志logback、卡死、进程假死

2024-03-24 12:30:15 1111

原创 【BIGO】内推!!

公司介绍:BIGO致力于连接美好世界,传递快乐生活,成为影响10亿人生活的内容平台。BIGO基于强大的音视频处理技术、全球音视频实时传输技术、人工智能技术、CDN技术,推出了一系列音视频类社交及内容产品,包括Bigo Live、Likee、imo、Hello语音等。目前,BIGO在全球已拥有近4亿月活用户,产品及服务已覆盖超过150个国家和地区。为了让用户更积极、自在、安全地感受世界的精彩,BIGO一直不懈地探索前沿技术, 提升自身研发水平,现已在全球建立了 6 个研发中心。BIGO深耕本地化运营和..

2020-08-29 10:14:18 935

原创 PHP程序员面试宝典摘抄

线程同步有哪些机制?现在流行的进程线程同步互斥的控制机制,其实是由最原始、最基本的四种方法(临界区、互斥量、信号量和事件)实现的(1)临界区:通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。在任意时刻只允许一个线程访问共享资源,如果有多个线程试图访问共享资源,那么当有一个线程进入后,其他试图访问共享资源的线程将会被挂起,并一直等到进入临界区的线程离开,临界在被释放后,...

2020-01-19 17:12:36 602

原创 校招笔试题

文章目录一、前端(HTML、JS、CSS)二、后端(PHP)不定期更新校招面试题一、前端(HTML、JS、CSS)1、如何设置form表单中的只读属性答:(1)readonly (2)disabled2、如何解决一下代码在IE6下双倍边距的问题答:(1)readonly (2)disabled二、后端(PHP)1、isset()和empty的区别答:isset()检测变量是...

2019-08-28 21:00:02 9557

原创 PHP学习笔记

非科班的苦逼程序员,深感找工作的艰辛,而且还是PHP的技术栈,找工作更加痛苦。现把自己积累的手写php笔记,搬到CSDN上吧

2019-08-01 08:05:23 500 2

原创 PHP常用函数笔记

1、sleep($n)$n为数字,单位为秒功能:让程序停止运行指定的秒数2、break&&continuebreak [n]/continue[n]:表示可以退出几层循环,默认退出当前一层循环break 2;则是退出两层循环

2019-08-01 07:38:49 588

原创 PHP正则表达式

preg_grep($pattern, $input[, $flag = 0]):返回匹配模式的数组参数:$pattern:正则表达式,要搜索的模式$input:输入的数组$flag:当设置为PREG_GREP_INVERT,则搜索与指定模式pattern不匹配的数组元素<?php$arr = [1,2,3.4,5,6,7.8,9];$preg = preg_grep("/^(\d...

2019-07-22 20:10:21 194

原创 PHP文件操作-上传,下载(断点续传),目录操作,文件操作

文章目录文件上传1.上传步骤2.$_FILES解析3.注意3.代码结果目录操作文件操作文件上传1.上传步骤(1)前端form表单上传文件:enctype=“multipart/form-data”(2)检查文件是否有误:限制文件大小,类型,判断文件是否传输失败(3)转移文件位置:move_uploaded_file($tmp_file,$dst_file)2.$_FILES解析...

2019-07-18 10:21:55 1015

原创 PHP静态化与伪静态

文章目录一、静态化1、示例代码2、相关函数一、静态化1、示例代码php代码执行=》缓冲区=》抓取缓冲区=》生成静态页面流程:1、开启缓冲区2、抓取php缓冲区的内容:即在浏览器看到的静态内容都会被缓冲区收集3、利用抓取到的内容制作静态页面4、关闭并刷新清除缓冲区<?php//1.开启缓冲区ob_start();for ($i=0; $i < 100; $i++) {...

2019-07-14 23:22:18 445

原创 Laravel 打印生成 Sql

仅有?占位符sql,没有具体数据$sql = DB::table(‘car_data’)->select()->toSql();方法二:可查看具体绑定数据信息DB::connection()->enableQueryLog(); //开启执行日志DB::table('car_data')->insert($data); dd(DB::getQuery...

2019-05-16 21:57:27 1117

原创 Nginx开启禅道PATH_INFO模式

禅道配置PATH_INFO 禅道添加第一行zentao/www/index.php $_SERVER['PATH_INFO'] = preg_replace('/index\.php$/', '', $_SERVER['PATH_INFO']); 修改禅道zentao/config/my.php $config->requestType = 'PATH_INFO'; ​​​...

2019-04-16 15:26:13 1373

原创 PHP根据数组创建二叉树

根据数组创建二叉树<?php/** * 树节点结构类 */class TreeNode{ public $val = null; public $left = null; public $right = null; function __construct($value) { $this->val = $value;...

2019-04-05 11:52:14 609

原创 PHP-GD系列:制作验证码、生成缩略图、添加水印、图片特效

文章目录验证码的制作流程1.创建画布资源2.操作画布3.导出 &amp;amp;amp;amp;&amp;amp;amp;amp; 销毁4.前端代码1.PHP制作验证码2.HTML显示验证码3.PHP验证验证码验证码的制作流程1.创建画布资源创建新的画布:imagecreate(宽,高):创建基于调色板的画布,支持颜色少       imagecreatetruecolor(宽,高):创建正彩色画布,支持颜色多基于已有图像创建画布 i...

2019-03-13 18:41:55 576

原创 PHP会话技术

文章目录1.COOKIE2.SESSION1.COOKIE2.SESSION

2019-03-12 16:38:11 354

原创 【PHP解法==LeetCode(贪心算法)】455.分发饼干 && 392.判断子序列 && 435.无重叠区间

目录455.分发饼干392.判断子序列435.无重叠区间455.分发饼干假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i ,都有一个胃口值gi ,这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j ,都有一个尺寸 sj。如果 sj&gt;= gi,我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得到满足。你的...

2019-03-10 16:06:21 447

原创 【PHP解法==LeetCode(动态规划4-(最长子序列))】300.最长上升子序列 && 376.摆动序列 && 5.最长回文子串 && 516.最长回文子序列 && 最长公共子序列/串

目录300.最长上升子序列376.摆动序列5.最长回文子串516.最长回文子序列最长公共子序列 &amp;&amp; 最长公共子串300.最长上升子序列给定一个无序的整数数组,找到其中最长上升子序列的长度。示例:输入: [10,9,2,5,3,7,101,18]输出: 4 解释: 最长的上升子序列是[2,3,7,101],它的长度是 4。说明:...

2019-03-09 23:28:20 520

原创 【PHP解法==LeetCode(动态规划4-(背包问题))】416.分割等和子集 && 322.零钱兑换 && 377.组合总和 && 474.一和零 && 139.单词拆分 && 494.目标和

目录416.分割等和子集322.零钱兑换377.组合总和474.一和零139.单词拆分494.目标和背包问题可参考动态规划-经典问题(0-1背包问题)分析及优化,进行理解416.分割等和子集给定一个只包含正整数的非空数组。是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。注意:每个数组中的元素不会超过 100 数组的大小不会超过 200示...

2019-03-07 09:35:25 761 1

原创 动态规划-经典问题(0-1背包问题)分析及优化

目录1.0-1背包问题的分析(1)状态方程2.递归算法3.记忆化搜索4.动态规划5.优化1——空间复杂度O(2C)6.优化2——空间复杂度O(C)7.0-1背包问题的变种如上图是一个LeetCode的经典问题,0-1背包问题1.0-1背包问题的分析尝试下面的算法暴力解法:每一件物品都可以放进背包,也可以不放进背包,时间复杂度为O((2^n)...

2019-03-05 13:49:01 11111

原创 【PHP解法==LeetCode(动态规划3)】打家劫舍I,II,III(198.213.337) && 309. 最佳买卖股票时机含冷冻期

目录198.打家劫舍213.打家劫舍II337.打家劫舍III309. 最佳买卖股票时机含冷冻期198.打家劫舍绘制如下递归树,如考虑偷取[0 ... n-1]范围的所有房子,可以考虑偷取0,1,到n-1的房子。如偷取0,则下一步则考虑偷取[2...n-1]的所有房子,因为1与0相邻,所以不考虑偷取此递归树中,可以明显的看出有重叠子问题状态转移方程:f(x)表...

2019-03-05 08:31:12 295

原创 【PHP解法==LeetCode(动态规划2-最优子结构)】343.整数拆分 && 91.解码方法 && 62.63不同路径

目录343.整数拆分91.解码方法62.不同路径63.不同路径II最优子结构:通过求子问题的最优解,可以获得原问题的最优解343.整数拆分给定一个正整数n,将其拆分为至少两个正整数的和,并使这些整数的乘积最大化。 返回你可以获得的最大乘积。示例 1:输入: 2输出: 1解释: 2 = 1 + 1, 1 × 1 = 1。示例2:输入: ...

2019-03-03 23:20:15 403

原创 【PHP解法==LeetCode(动态规划1-重叠子问题)】70.爬楼梯 && 120.三角形最小路径和 && 64.最小路径和

目录70.爬楼梯120.三角形最小路径和64.最小路径和大多数的动态规划,本质都是递归问题,只是在递归的过程中会有很多的重叠子问题对于重叠子问题,可以用记忆化搜索:自顶向下的解决问题,而动态规划是自底向上的解决问题。动态规划:将原问题拆解成若干子问题,同时保存子问题的答案,使得每个子问题只求解一次,最终获得原问题的答案因此我们在做动态规划问题时,可以先思考他的记忆化搜索...

2019-03-02 10:20:41 386

原创 【PHP解法==LeetCode(回溯递归5-人工智能基础)】51.52.N皇后 && 37.解数独

目录51.52.N皇后37.解数独51.52.N皇后——经典问题,八皇后n皇后问题研究的是如何将n个皇后放置在n×n的棋盘上,并且使皇后彼此之间不能相互攻击。上图为 8 皇后问题的一种解法。给定一个整数n,返回所有不同的n皇后问题的解决方案。每一种解法包含一个明确的n皇后问题的棋子放置方案,该方案中'Q'和'.'分别代表了皇后和空位。...

2019-02-27 22:16:09 330

原创 【PHP解法==LeetCode(回溯递归4-二维平面上的回溯)】79.单词搜索 && 200.岛屿的个数 && 130.被围绕的区域 && 417.太平洋大西洋水流问题

目录79.单词搜索200.岛屿的个数130.被围绕的区域417.太平洋大西洋水流问题二维平面上的递归回溯,经常使用 FloodFill 算法,泛洪填充算法,也是深度优先dfs算法 例如从图的开始,向外扩散蔓延,像洪水泛滥一样扩散到满足条件的所有区域,即FloodFill 算法对于下列的题目,79和200是整个图进行FloodFill ,而130和417则是仅从边界进行泛...

2019-02-27 09:03:24 379

原创 【PHP解法==LeetCode(回溯递归3-组合)】组合(77.39.40.216) && 子集(78.90) && 401.二进制手表

目录组合(77.39.40.216)77.组合39.组合总和40.组合总和 II216.组合总和 III子集(78.90)78.子集90.子集II401.二进制手表递归回溯通常解法:(1)初始化成员变量:为了减少递归中的参数传递,传递大参数比较耗时(2)初始化判断:对于特殊的结果,直接返回结果,无需进入递归(3)递归回溯:记录下标,保存一个暂存路...

2019-02-26 22:44:19 369

原创 【PHP解法==LeetCode(回溯递归2-排列)】46.全排列 && 47.全排列 II

目录46.全排列47.全排列 II46.全排列给定一个没有重复数字的序列,返回其所有可能的全排列。示例:输入: [1,2,3]输出:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]]很明显的递归结构,可以利用递归回溯解决该问题。如下图,解法(1)使用[1,2,3]构造排列...

2019-02-26 18:54:18 265

原创 【PHP解法==LeetCode(回溯递归1)】17.电话号码的字母组合 && 93. 复原IP地址 && 131. 分割回文串

目录17.电话号码的字母组合93. 复原IP地址131. 分割回文串17.电话号码的字母组合给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。示例:输入:"23"输出:["ad", "ae", "af", "bd", "be", "bf", &

2019-02-26 10:01:32 351

原创 【PHP解法==LeetCode(二叉树中的递归5-操作二叉树)】226.翻转二叉树 && 108. 将有序数组转换为二叉搜索树 && 450. 删除二叉搜索树中的节点

目录226.翻转二叉树108. 将有序数组转换为二叉搜索树450. 删除二叉搜索树中的节点226.翻转二叉树翻转一棵二叉树。示例:输入: 4 / \ 2 7 / \ / \1 3 6 9输出: 4 / \ 7 2 / \ / \9 6 3 1备注:这个问...

2019-02-23 08:52:10 181

原创 【C++解法==LeetCode(二叉树中的递归4-公共祖先)】235.二叉搜索树的最近公共祖先 && 236.二叉树的最近公共祖先

目录235.二叉搜索树的最近公共祖先236.二叉树的最近公共祖先235.二叉搜索树的最近公共祖先给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”例如,给定如下二叉搜索树:  r...

2019-02-22 22:32:08 165

原创 【PHP解法==LeetCode(二叉树中的递归3-验证)】101.对称二叉树 && 110.平衡二叉树 && 98. 验证二叉搜索树

目录101.对称二叉树110.平衡二叉树98. 验证二叉搜索树101.对称二叉树给定一个二叉树,检查它是否是镜像对称的。例如,二叉树 [1,2,2,3,4,4,3] 是对称的。 1 / \ 2 2 / \ / \3 4 4 3但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的: 1 / ...

2019-02-22 21:24:37 216

原创 【PHP解法==LeetCode(二叉树中的递归2-路径之和)】路径总和(112.113.437) && 404.左叶子之和 && 129. 求根到叶子节点数字之和 && 257.二叉树的所有路径

目录路径总和I.II.III(112.113.437)112.路径总和.II.III(112.113.437)113.路径总和II437.路径总和III404.左叶子之和129. 求根到叶子节点数字之和257.二叉树的所有路径路径总和I.II.III(112.113.437)112.路径总和.II.III(112.113.437)给定一个二叉树和一个目标和,...

2019-02-22 09:46:20 265

原创 【PHP解法==LeetCode(二叉树中的递归1)】104.二叉树的最大深度 && 111.二叉树的最小深度 && 222.完全二叉树的节点个数

二叉树有天然的递归结构,特别适合用递归去解决问题,如最常见的前中后序遍历104.二叉树的最大深度给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7...

2019-02-21 22:24:22 338

原创 【PHP解法==LeetCode队列-广度优先遍历】279. 完全平方数 && 127.单词接龙 && 126.单词接龙 II

目录279. 完全平方数127.单词接龙126.单词接龙 II广度优先遍历可以解决:无权图的最短路径等问题以下的三道题,没有直接给一个图进行遍历,因此我们需要对题目进行分析,从而转化为图的思想去进行bfs或dfs279. 完全平方数给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, ...)使得它们的和等于 n。你需要让组成和的完全平方数的个数最少。...

2019-02-20 10:02:42 273

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除