其它
文章平均质量分 70
自由de单车
90后程序猿
展开
-
在HTTP请求中安全传输base64编码的字符串
base64是一种常见的的编码格式,它可以把二进制数据编码成一个由大小写英文字母(a-zA-Z)、阿拉伯数字(0-9),以及三个特殊字符组成的字符串。原创 2023-09-25 16:03:45 · 2579 阅读 · 0 评论 -
如何给API签名
让API只能被特定的人访问防止别人抓包拿到请求参数,通过篡改参数发起新的请求。原创 2023-09-20 11:57:50 · 397 阅读 · 1 评论 -
在Windows上无法使用TortoiseSVN等工具管理WSL2中的代码的问题
众所周知,WSL2 的跨系统IO读写性能非常差(详情见我之前写的这篇文章),而我的代码又是在 WSL2 中运行的,为了提高性能,所以我的代码也必须放在 WSL2 中,以避免跨系统的IO读写。原创 2023-09-17 17:54:10 · 496 阅读 · 0 评论 -
高并发写场景:秒杀系统库存扣减
如何解决高并发下的商品库存扣减问题原创 2023-04-12 20:39:19 · 706 阅读 · 1 评论 -
解决PHP项目在Docker(WSL2)中运行缓慢的问题
最近在使用Docker容器运行PHP项目的时候,发现特别缓慢。原创 2023-03-28 01:37:26 · 4709 阅读 · 5 评论 -
Docker Desktop容器命令行不支持Tab键命令自动补全
Docker Desktop容器命令行不支持Tab键命令自动补全原创 2023-03-23 22:15:46 · 1400 阅读 · 0 评论 -
ANSI是什么编码?
ANSI编码是什么转载 2023-03-08 22:26:34 · 1902 阅读 · 0 评论 -
接口的幂等性
如今的网络系统,经常需要通过接口调用其它服务。例如最常见的网页浏览中的ajax请求,前端页面就需要通过接口请求后端服务。作为开发者,在设计这些接口的时候,必须要考虑到接口的幂等性问题。。举个简单的例子,那就是转账,用户在银行网页中填写好转账相关信息后,不小心快速点击了2次转账按钮,这时网页就会发起2次转账请求。如果不做处理,就会转了2笔钱给对方,造成损失。这就是没有保证接口幂等性的后果。原创 2023-01-12 22:42:02 · 251 阅读 · 0 评论 -
CORS跨域不能携带cookie的问题
环境Chrome浏览器100.0.4896.127正式版前言最近在做web需求时,遇到了一个跨域的问题:浏览器有一个cookie,这个cookie的domain是.rocky.com,path是/。网页域名是 www.rocky.com,网页会使用ajax请求sub.rocky.com域名下的一个接口获取数据,奇怪的是,在请求ajax接口时浏览器没有在请求头里带上cookie。最后通过网上查资料得知,原来这个ajax请求跨域了,原因是接口域名(sub.rocky.com)跟网页域名( www.r原创 2022-04-30 15:17:30 · 3399 阅读 · 0 评论 -
使用docker搭建LNMP开发环境
宿主机环境系统:ubuntu 18.04docker版本:18.03.1-cedocker的安装请自行参考官方文档。前言这篇文章用于介绍如何使用docker搭建一个LNMP开发环境,下面我们将会编写Dockerfile,基于官方docker hub的镜像,分别构建我们自己的镜像,然后运行。要构建的镜像有:PHP-FPM 7.4Nginx 1.19MySQL 5.7Redis 6.2为什么不直接使用官方镜像,而是自己再构建一个?因为官方镜像一般安装的东西都很少,例如PHP-FPM的原创 2022-04-01 14:08:19 · 6254 阅读 · 2 评论 -
说说HTTP缓存Cache-Control响应头
前言除非特别说明,否则以下内容和结论均经过实际测试并验证,测试用的浏览器:Google Chrome 98.0.4758.102正式版。例子先看下响应头Cache-Control的一些常见用法。第一种:Cache-Control:max-age=N浏览器获取到资源内容后,将资源内容缓存在本地,缓存有效期是N秒。若过期前再次访问资源,直接使用本地缓存;过期后再访问,则向服务器发请求,若服务器检查资源没有更新,则返回304状态码;如果有更新,则返回200状态码以及新的资源内容。同时浏览器延长本地资源原创 2022-02-20 17:32:48 · 9723 阅读 · 0 评论 -
字典和哈希表的区别
字典是一种将键映射到值的一种概念,哈希表是实现字典的其中一种方式。除了哈希表,实现字典的另一种常见方式是红黑树。原创 2022-02-17 23:11:26 · 1215 阅读 · 0 评论 -
HTTP 301和302状态码
定义301:Moved Permanently 被请求的资源已永久移动到新位置,并且将来任何对此资源的引用都应该使用本响应返回的若干个URI之一。如果可能,拥有链接编辑功能的客户端应当自动把请求的地址修改为从服务器反馈回来的地址。除非额外指定,否则这个响应也是可缓存的。302:Found 请求的资源现在临时从不同的URI响应请求。由于这样的重定向是临时的,客户端应当继续向原有地址发送以后的请求。只有在Cache-Control或Expires中进行了指定的情况下,这个响应才是可缓存的。总结原创 2022-02-16 16:58:10 · 1894 阅读 · 0 评论 -
在windows系统上如何将iphone备份到移动硬盘
前言平时我们在windows系统上使用iTunes备份iphone的时候,只能备份到电脑硬盘上,但现在手机的存储越来越大,电脑的硬盘可能会装不下整个手机的备份,这时候就要想办法把备份存到移动硬盘上去,下面介绍一下相关方法。步骤iTunes默认会把备份文件放在C:\Users\用户名\Apple\MobileSync\Backup目录下,用户名是你当前登录的用户名,根据实际情况进行替换。注:后续随着iTunes的版本升级,这个目录可能会改变,我使用的版本是12.11.4.15另外,这个目录是不能原创 2021-09-05 21:27:10 · 6348 阅读 · 0 评论 -
excel如何打开100万行以上的csv文件
前言正常情况下,2007版本以上的excel打开的csv文件,最多只能显示1048576行数据,如果我们恰好有一个超大csv文件行数超过这个量级,该如何解决呢,可以使用power query来解决。步骤1.切换到数据选项卡,依次点击 新建查询->从文件->从CSV,然后选择需要导入的超大csv文件2.在出现的窗口里,点击 加载 -> 加载到3.选择仅创建连接和将此数据添加到数据模型,点击加载4.等excel加载完数据后,在窗口的右侧会出现一个工作簿查询,点击里面的文件,原创 2020-07-24 10:16:36 · 52462 阅读 · 3 评论 -
Scale up and Scale out
什么是scale up和scale out?scale up是纵向扩展的意思,打个比喻,机器性能不足的时候,就加内存、加硬盘等等,但仍然只有一台机器在工作scale out是横向扩展的意思,打个比喻,机器性能不足的时候,就加多一台机器,两台机器同时工作原创 2016-08-05 19:07:38 · 585 阅读 · 0 评论 -
一张图让你明白如何选择软件开源许可证
一张图让你知道怎么选择软件开源许可证原创 2015-06-07 22:14:22 · 832 阅读 · 0 评论 -
桌面虚拟化和服务器虚拟化的区别和关系
桌面虚拟化是指,在一个网络内的客户端电脑,所有运算和存储都在云端完成,客户机属于瘦客户机,类似于以前的无盘工作站,客户机上不设或者少设存储设备,配备低端CPU仅用于网络通信。服务器虚拟化是指,把一台或多台服务器的硬件资源整合起来,在上面利用虚拟机技术,建立一个或多个虚拟的服务器,统一调配这些物理硬件资源,实现硬件的高效利用。服务器虚拟化是云计算中很重要的一部分。举个例子你就会明白:转载 2014-11-29 11:09:44 · 3774 阅读 · 0 评论 -
同步和异步、阻塞和非阻塞的关系
【同步和异步】同步和异步关注的是转载 2014-09-28 17:34:02 · 988 阅读 · 0 评论 -
HTML文本框readonly和disabled属性的区别
如果不想让原创 2014-08-20 13:06:19 · 1140 阅读 · 0 评论 -
如何在一个页面上添加多个KindEditor富文本编辑器
var options = {filterMode : true,allowImageUpload : false,allowFlashUpload : false,allowMediaUpload : false,allowFileManager : false,items : ['fontname', 'fontsize', '|', 'forecolor', 'hilitecol原创 2014-05-17 15:37:40 · 6793 阅读 · 0 评论