自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

科比不来it

。10年开发老兵,酷爱编程,痴迷技术。资深软件设计师一枚,关注我,不迷路

  • 博客(393)
  • 资源 (10)
  • 问答 (1)
  • 收藏
  • 关注

转载 大型LNMP架构(企业综合项目)

需求分析:网站每天的日PV量100万左右,由于以前的LNMP架构都是交给外包公司在管理.所使用的服务器以及所有的东西都承包出去了,现在由于公司业务扩展需要,需要把所有的LNMP架构全部迁移回公司,LNMP需要重新构架。此任务由公司新建立的运维团队负责完成此任务.①开发语言为:PHP②堡垒机器:iptabels③负责均衡: LVS+keepalived④WEB容器1为:Nginx⑤WEB容...

2019-07-03 09:39:22 735

转载 GitHub上本月最受欢迎的Go语言项目有哪些?

在GitHub上猎奇,除了看推荐之外,就是热榜了,能上热榜的项目,一般都不会太差(刷榜的除外)。这篇文章呢,主要是介绍下本月最受欢迎的Go语言项目,我们可以知道Go语言的趋势,研究这些项目,可以学到很多。https://github.com/gwuhaolin/livego 。这是一个使用Go语言写的直播服务器,支持HLS、RTMP、HTTP-FLV协议,编码常用的H264都支持。视频封装通过FLV和TS,使用也非常简单。https://github.com/photoprism/photop

2022-03-19 20:37:57 325

原创 php7版本开启强类型模式校验提升项目代码可读性

PHP是世界上最好的语言,开发快是它最大的优点,凡事有利必有弊。php众所周知,PHP是弱类型语言,在传递参数时,不会检查变量的类型,再加上动态语言的特性,若是写代码不注意,很容易形成类型不符,自动转换类型,而且程序不会报错,形成数据错误和不完整。在PHP7以后,经过在文件开头用 declare(strict_types = 1) 定义强类型检验后,当函数传参类型不符时,将会抛出错误。我们加入强类型模式来看一下输出结果,代码如下:<?phpdeclare(strict_types=1);//

2022-01-23 17:13:18 320

原创 架构和性能优化的核心原则

2022-01-22 13:18:27 1584

原创 PHP 使用非对称加密算法(RSA)代码演示

加密的类型:在日常设计及开发中,为确保数据传输和数据存储的安全,可通过特定的算法,将数据明文加密成复杂的密文。目前主流加密手段大致可分为单向加密和双向加密。单向加密:通过对数据进行摘要计算生成密文,密文不可逆推还原。算法代表:Base64,MD5,SHA;双向加密:与单向加密相反,可以把密文逆推还原成明文,双向加密又分为对称加密和非对称加密。对称加密:指数据使用者必须拥有相同的密钥才可以进行加密解密,就像彼此约定的一串暗号。算法代表:DES,3DES,AES,IDEA,RC4,RC5;非对称加密:

2021-10-21 15:29:29 97

转载 MySQL索引原理及慢查询优化

MySQL索引原理及慢查询优化

2021-10-11 17:05:40 32

转载 常见性能优化策略的总结(美团技术团队)

常见性能优化策略的总结

2021-10-11 16:37:13 76

原创 PHP常用设计模式(5)装饰器模式

模式定义通常给对象添加功能,要么直接修改对象添加相应的功能,要么派生对应的子类来扩展,抑或是使用对象组合的方式。显然,直接修改对应的类这种方式并不可取。在面向对象的设计中,我们也应该尽量使用对象组合,而不是对象继承来扩展和复用功能。装饰器模式就是基于对象组合的方式,可以很灵活的给对象添加所需要的功能。装饰器模式的本质就是动态组合。动态是手段,组合才是目的。装饰这两个字,我们暂且把他变成化妆。首先你得有一张脸,然后打底,然后上妆,可以早上来个淡妆上班,也可以下班的时候补成浓妆出去嗨。当然,码农们下班的时间

2021-09-02 17:10:13 39

原创 PHP常用设计模式(4)抽象工厂模式

PHP常用设计模式(3)抽象工厂模式

2021-08-31 14:34:08 52

原创 PHP常用设计模式(3)工厂方法模式

1、模式定义定义一个创建对象的接口,但是让子类去实例化具体类。工厂方法模式让类的实例化延迟到子类中。2、问题引出框架需要为多个应用提供标准化的架构模型,同时也要允许独立应用定义自己的域对象并对其进行实例化。3、解决办法工厂方法以模板方法的方式创建对象来解决上述问题。父类定义所有标准通用行为,然后将创建细节放到子类中实现并输出给客户端。 人们通常使用工厂模式作为创建对象的标准方式,但是在这些情况下不必使用工厂方法:实例化的类永远不会改变;或者实例化发生在子类可以轻易覆盖的操作中(比如初始化)。4、

2021-08-31 12:47:10 71

原创 PHP常用设计模式(2)简单工厂模式

PHP常用设计模式(2)简单工厂模式工厂模式,工厂方法或者类生成对象,而不是在代码中直接new。使用工厂模式,可以避免当改变某个类的名字或者方法之后,在调用这个类的所有的代码中都修改它的名字或者参数。如果某个类在很多的文件中都new ClassName(),那么万一这个类的名字发生变更或者参数发生变化,如果不使用工厂模式,就需要修改每一个PHP代码,使用了工厂模式之后,只需要修改工厂类或者方法就可以了先从简单工厂入门,不管是面试还是被他人面试,在问到设计模式的时候,大多数人都会提到工厂模式。毫

2021-08-31 12:23:54 38

原创 PHP命名空间和类的自动载入

PHP命名空间可以更好地组织代码,与Java中的包类似。Test1.php<?phpnamespace Test1;//命名空间Test1function test(){ echo __FILE__;}Test2.php<?phpnamespace Test2; //命名空间Test2function test(){ echo __FILE__;//打印当前文件所在的绝对路径。}Test.php<?phprequire 'Test1.php';

2021-08-31 11:02:23 80

翻译 深入php模式与对象第五版

参考文献:深入php模式与对象第五版

2021-08-23 15:14:51 73

转载 字符编码笔记:ASCII,Unicode 和 UTF-8

字符编码笔记:ASCII,Unicode 和 UTF-8

2021-08-18 18:13:40 46

原创 Golang Slice与数组的区别

array 类型array是固定长度的数组,使用前必须确定数组长度golang array 特点:golang中的数组是值类型,也就是说,如果你将一个数组赋值给另外一个数组,那么,实际上就是整个数组拷贝了一份如果golang中的数组作为函数的参数,那么实际传递的参数是一份数组的拷贝,而不是数组的指针array的长度也是Type的一部分,这样就说明[10]int和[20]int是不一样的。slice类型slice是一个引用类型,是一个动态的指向数组切片的指针。slice是一个不定长的,总是指向

2021-07-05 15:33:46 185

原创 php实现简单的二分查找

<?php// 待查找区间$arr = [1, 3, 7, 9, 11, 57, 63,55, 99];// 非递归查找57所在的位置$find_key = binary_search($arr,0,count($arr),3);echo('要查找的数索引位置是'.$find_key).PHP_EOL;echo('值是'.$arr[$find_key]);function binary_search($l,$a,$b,$x){ if($a>$b) reurn -

2021-05-28 20:43:47 239

原创 git如何恢复到指定版本和删除中间某次提交的内容

git 如何恢复到指定版本查看git的提交版本和id 拿到需要恢复的版本号    命令:git log     2. 恢复到指定版本    命令:git reset --hard 44f994dd8fc1e10c9ed557824cae50d1586d0cb3 //后面这一大串44f994dd8fc1e10c9ed557824cae50d1586d0cb3就是版本id   3. 强制push   命令:git push -f origin mastergit 删除某个中

2021-05-25 11:06:46 434

转载 不用crontab实现php 原生代码执行定时任务

<?php/*** * 不用crontab实现php 原生代码执行定时任务 * /usr/local/php/bin/php test.php * Class Timer */class Timer extends SplMinHeap{ /** * 比较根节点和新插入节点大小 * @param mixed $value1 * @param mixed $value2 * @return int */ protected

2021-05-17 18:05:22 94

原创 用脑要张弛有度,才能让大脑更高效地运转

你是否遇到过这种情况:看书学习到深夜,不住地打哈欠,勉强地支撑下去,可是到了第二天,怎么也回忆不起书上那些具体情节;连续训练几个小时,结果学习效率还是很低,甚至连基本的动作都没有学会……这说明你的大脑累了,它不想继续工作,你应该让脑子有劳有逸,有张有弛,学会有效地调节它。 怎么调节呢?比如,充分的睡眠,课间、课外的体育锻炼,娱乐活动都能使大脑得到休息和调节。切不要因为这些活动占了学习时间而舍不得,其实这样做提高了大脑的功率,使它高速、高效地运转,它会使你花一小时学习,取得两小时的学习效果。

2021-03-28 19:06:54 164 1

原创 善于改变思维方式的人,才更容易走向成功

随着年龄和阅历的增长,以及近来一直思考关于工作、学习、人生方面的问题,我渐渐从过往表面的一些理解中,发现人与人之间最本质的差别,其实是思维方式。 下面,我想结合自身的一些经历,谈谈看法。 **学习不是拼命蛮干,需要讲究策略和方法** 学习是一件需要天赋和努力的事,天赋因人而异,不可掌控,但努力的程度却是自己可以把握的。从小受到家人和老师的灌输、以及书本上各种“头悬梁、锥刺股”、“凿壁借光”等励志故事的宣传,我本人便深受这种思维模式影响的人,在学习上表现出十足的干劲,这种学习

2021-03-28 19:02:20 237

原创 大脑的四个黄金记忆时间段

心理学研究发现,一天当中,人通常有4个记忆的“黄金时段”,正在求学或是工作的朋友更应该知道大脑记忆的这些最佳时期,以便使你在学习或工作上取得事半功倍的效果。大脑记忆的第一黄金时段:6-7点钟这段时间,血压升高,心跳加快,体温上升,肾上腺皮质激素分泌开始增加,此时机体已经苏醒,想睡也睡不安稳了,此时是第一次最佳记忆时期。7点钟左右,肾上腺皮质激素的分泌进人高潮,体温上升,血液加速流动,免疫功能加强,因为大脑经过了一夜的休息,正处于工作效率的高峰。利用这一段时间学习一些难记但是又必须记住的东西比较适宜。

2021-03-28 18:56:14 668

原创 计算机基础

二进制每8比特(即8位)构成一个字节,对于单字节的ASCII字符来说,8比特二进制值就能代表一个字符。而对于汉字这样的多字节字符,需要将其按字节切分,每个字节分别用8比特来表示。然而,多字节字符又涉及到不同的字符集编码,例如Unicode、UTF-8、GB18030等,不同的字符集对同一个多字节字符的编码可能不同,并且对其编码的字节数也可能不同。例如“中”字,Unicode使用4字节表示,UTF-8使用3字节,GB18030则使用2字节不同的编码表示。所以在汉字与二进制转换中需要考虑到字符的编码,通常,按照

2021-03-13 23:15:52 41

转载 位运算在 PHP 实际项目当中的运用

来回顾一下这些基础知识,同时也会讲位运算在 PHP 实际项目当中的高级技巧。一、位运算知识回顾PHP 手册当中,专门对位运算及位运算符进行了使用介绍。https://www.php.net/manual/zh/language.operators.bitwise.php按位与运算符:&之所以称为位运算,指的是在运算过程中,我们会把两组需要位运算的数值进行二进制化,然后两组二进制的数字从低位向左对齐。这里的位指的是二进制数字的位置。而按位与运算符指的是两组数值每一位相与,同为 1 则 结果

2021-02-20 17:30:44 96

原创 mysql 正则表达式 REGEXP匹配详解

# 类似select中Or功能, 匹配含有人一个字符的行SELECT goods_name,shop_price,goods_sn FROM goods WHERE shop_price REGEXP '58|68|20.00'; #匹配范围,匹配从5到8SELECT goods_id,goods_name,shop_price FROM goods WHERE goods_name REGEXP '[5-8]00';#匹配特殊字符,必须用\\前导SELECT goods_id,goods_na

2021-02-16 11:14:32 355

原创 PHP常用设计模式(1)单例模式

PHP命名空间可以更好地组织代码,与Java中的包类似。Test1.php<?phpnamespace Test1;//命名空间Test1function test(){ echo __FILE__;}Test2.php<?phpnamespace Test2; //命名空间Test2function test(){ echo __FILE__;//打印当前文件所在的绝对路径。}Test.php<?phprequire 'Test1.php';

2021-02-13 21:35:25 62

原创 PHP 处理并发场景时的3种解决方案

在秒杀,抢购等并发场景下,可能会出现超卖的现象,在 PHP 语言中并没有原生提供并发的解决方案,因此就需要借助其他方式来实现并发控制。列出常见的解决方案有:使用rabitmq,redis等实现队列,额外起一个进程处理队列,并发请求都放到队列中,由额外进程串行处理,并发问题就不存在了,但是要额外进程支持以及处理延迟严重。利用数据库事务特征,做原子更新,此方法需要依赖数据库的事务特性。借助文件排他锁,在处理下单请求的时候,用 flock 锁定一个文件,成功拿到锁的才能处理订单。...

2021-02-09 17:15:45 86

转载 WSL里Nginx+PHP,反映慢,卡住等问题

在wsl里搭建lnmp环境时,访问简单的PHP 文件 (例如Hello world)没有问题,但访问多数 PHP 文件卡死,有的(例如phpinfo()),虽然可以加载出来但浏览器显示网页仍未加载完全或者巨慢。原因用 Unix Socket 方式连接 Nginx 和 PHP,然而,WSL 对 Unix Socket 的支持并不是那么完美解决方法在 nginx.conf 的 http 节点添加:fastcgi_buffering off;然后重启nginx即可。...

2020-11-24 10:41:03 1230 4

原创 php和php xdeug 版本问题的坑

php和php xdeug 版本问题一定要注意

2020-11-18 14:48:49 94

原创 对浏览器友好输出的PHP输出调试代码,屡试不爽

function dump($var, $echo=true, $label=null, $strict=true) { $label = ($label === null) ? '' : rtrim($label) . ' '; if (!$strict) { if (ini_get('html_errors')) { $output = print_r($var, true); $output = '<pre>'

2020-09-23 22:22:39 84

转载 PHP接口性能优化之路

最近在做PHP接口的性能优化,在排查性能问题和优化的过程中总结了一些心得,分享给大家。性能问题排查首先,做性能优化要先进行性问题排查,即排查PHP接口的代码实现中那一块执行比较慢。排查方法一笔者使用的ThinkPHP框架中自带了G方法可以很方便的获取某个区间的运行时间和内存占用情况。 例如:G('begin');// ...其他代码段G('end');// ...也许这里还有其他代码// 进行统计区间echo G('begin','end').'s';//输出代码运行时间echo G(

2020-09-14 20:29:38 311

原创 PHP_MySQL高并发加锁事务处理

PHP_MySQL高并发加锁事务处理

2020-09-04 23:15:44 87

原创 sqlyog使用笔记

SET @id =2;//预先设置变量SELECT * FROM `order` WHERE id=@id;

2020-09-04 22:03:31 195

原创 MySQL事务+FOR UPDATE解决并发操作数据库

注意 FOR UPDATE 仅适用于InnoDB,且必须在事务区块(BEGIN/COMMIT)中才能生效。<?php//PHP利用Mysql锁解决高并发的方法$pdo = new PDO('mysql:host=127.0.0.1;port=3306; dbname=test_admin122_co', 'test_admin122_co', 'EGtMkiaiZEJESAcL');$pdo->beginTransaction();//开启事务$sql = "select `num

2020-09-04 21:27:37 402

原创 phalcon基本操作

1.控制器加目录,需在路由中做map

2020-09-03 18:43:27 91

原创 PHP+Mysql高并发解决方案

此文是为了保存关于看到的php高并发的文章PHP+Mysql高并发解决 【高并发简单解决方案】redis队列缓存 + mysql 批量入库 + php离线整合秒杀活动的设计 秒杀系统优化方案之缓存、队列、锁设计思路电商类产品的必备功能:秒杀与竞拍关于php高并发解决的一点思路PHP+redis(转载整两篇博客,很不错很基础) ...

2020-08-29 11:10:00 247

转载 LNMP 搭建分布式集群

LNMP 分布式集群(一):Nginx+PHP平台搭建与负载均衡配置转载:https://juejin.im/post/6844904095820546061

2020-08-15 13:57:40 214

原创 用PHP实现远程过程调用RPC实战代码演示含图片效果

一、初识RPCRPC(Remote Procedure Call)—远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。二、工作原理运行时,一次客户机对服务器的RPC调用,其内部操作大致有如下十步:1.调用客户端句柄;执行传送参数2.调用本地系统内核发送网络消息3.消息传送到远程主机4.服务器句柄得到消息并取得参数5.执行远程过程6.执行的过程将结果返回服务器句柄7.服务器句柄返回结果,调用远程系统内核8.消息传回本地主机9.客户句柄由内核接收消

2020-08-11 17:26:31 181

原创 解决php内存占用高-用生成器yield优化性能

在Python中对生成器这个内存性能优化的写法不陌生,但是但多PHPer或许都不知道生成器这个功能,可能是因为生成器是PHP 5.5版本引入的功能,也可以是生成器作用不是很明显。但是,生成器功能的确非常有用。 最近在写csv导入导出,需要处理大量的数据,想到了PHP的生成器,写个总结吧优点生成器有哪些优点,如下:生成器会对PHP应用的性能有非常大的影响PHP代码运行时节省大量的内存比较适合计算大量的数据概念引入首先,放下生成器概念的包袱,来看一个简单的PHP函数:function range

2020-08-07 08:57:33 364

转载 PHP 反射使用和理解

反射机制简介之前已经介绍过Java反射机制的简单使用,所有的反射机制的思想作用等都是类似的,下面就一起来了解一下PHP反射机制。个人理解:反射机制就是可以利用类名或者一个类的对象来获取关于这个类的一系列信息(类的变量,方法),然后又就可以利用得到的类的信息实例化一些类的对象官方给的简介:反射 API,有 对类、接口、函数、方法和扩展进行反向工程的能力。 此外,反射 API 提供了方法来取出函数、类和方法中的文档注释。一般在框架中使用到反射机制比较多(控制反转),正常情况下一般使用不到反射的反射机制

2020-07-04 07:56:07 259

原创 php面向对象之__toString()

__toString()是快速获取对象的字符串信息的便捷方式,似乎魔术方法都有一个“自动“的特性,如自动获取,自动打印等,__toString()也不例外,它是在直接输出对象引用时自动调用的方法。__toString()的作用当我们调试程序时,需要知道是否得出正确的数据。比如打印一个对象时,看看这个对象都有哪些属性,其值是什么,如果类定义了toString方法,就能在测试时,echo打印对象体,对象就会自动调用它所属类定义的toString方法,格式化输出这个对象所包含的数据。下面我们来看一个__to

2020-07-04 07:22:15 127

软考中级软件设计师错题整理.docx

已通过考试,来自个人手打总结,软考中级软件设计师错题整理

2021-08-27

wordpress在线客服插件

免费wordpress在线客服插件,插件地址:https://www.admin122.com/3715.html

2021-08-27

经济学基础知识大全.pdf

个人平时学习经济知识,推荐想投资的兄弟多看看

2021-08-27

DIVI主题wordpress整站带演示数据打包 自适应 拖拽式修改 大气企业外贸网站源码

演示地址:http://divi.admin122.com 某宝上价值10元的资源分享,DIVI主题wordpress整站带演示数据打包 自适应 拖拽式修改 大气企业外贸网站源码。

2020-09-09

php通过jquery 实现点击加载更多的实例代码

本人亲自测试过,直接可以用在项目中的

2017-06-29

php报名系统(界面不错哦)

php制作的在线报名系统,稍加修改就能用哈,感觉很不错。

2015-04-02

CodeIgniter2.1.4中文手册HTML离线版

CodeIgniter2.1.4中文手册HTML离线版,是目前最新版本的,本人亲测,完美使用。

2014-05-08

css完全参考手册3.0

css完全参考手册3.0

2014-03-23

2013年最新搜索引擎免费提交入口

2013年最新搜索引擎免费提交入口,做seo的朋友必备的东西。

2013-08-15

实现选项卡的css代码

实现选项卡的css代码,是作者本人这几年积累的好资源,欢迎童鞋们下载。

2013-08-15

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

TA关注的人

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