201909-05 PHP的灵魂HashTable结构解读 HOT 说 HashTable 是PHP的灵魂,一点也不为过。在Zend引擎中,比如变量表、常量表、函数表、数组,以及资源管理、线程安全等,其实现都有HashTable的身影。HashTable 是一种查找性能极高的数据结构,理想情况下其算法复杂度是O(1)。 继续阅读 >
201909-05 如何设计一个高并发高可用的秒杀或抢券系统 HOT 高并发的接口/系统有一个共同的特性,那就是”快”。 在系统其它条件既定的情况下,系统处理请求越快,用户得到反馈的时间就越短,单位时间内服务器能够处理请求的数量就会越多。所以”快”几乎可以算是高并发系统的要满足的必要条件,要评估一个系统性能如何,某次优化是否提高系统的容量,”快”是一个很直观的衡量标准。 继续阅读 >
201909-04 WebSocket 通信过程与实现,PHPer必备知识 HOT 没有其他能像 WebSocket 一样实现全双工传输的技术了,迄今为止,大部分开发者还是使用 Ajax 轮询来实现,但这是个不太优雅的解决办法,WebSocket 虽然用的人不多,可能是因为协议刚出来的时候有安全性的问题以及兼容的浏览器比较少,但现在都有解决。如果你有这些需求可以考虑使用 WebSocket: 多个用户之间进行交互; 需要频繁地向服务端请求更新数据。 继续阅读 >
201909-04 PHP代码审计,你会吗? HOT 代码审核,是对应用程序源代码进行系统性检查的工作。它的目的是为了找到并且修复应用程序在开发阶段存在的一些漏洞或者程序逻辑错误,避免程序漏洞被非法利用给企业带来不必要的风险。 继续阅读 >
201909-04 让你提高效率的 Linux 技巧 HOT 如果要谨慎使用 rm 命令,可以为它设置一个别名,在删除文件之前需要进行确认才能删除。有些系统管理员会默认使用这个别名,对于这种情况,你可能需要看看下一个技巧。 继续阅读 >
201909-04 Laravel 6.0 版本正式发布了! HOT Laravel 团队今天宣布 Laravel 6.0 版本正式发布,该版本的发布标志着 Laravel 框架开始使用语义化版本,此外,该版本还包含了对 Laravel Vapor 的支持、优化了授权响应、任务中间件、懒集合、子查询优化以及很多其它细节优化。 继续阅读 >
201909-03 如何在Linux下,快速搭建php开发环境 HOT XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包,使用XAMPP可快速搭建PHP开发环境。下载链接在文章底部找菲菲获取, 进入下载界面选择XAMPP for Linux下载 继续阅读 >
201909-03 一文带你彻底理解Linux的各种终端类型及概念 HOT 所有这一切其实都是多终端以及多用户的产物,但归根结底其根源都在分时系统。在计算机最初被放在车间大小的屋子里的年代,可能把屋子的门禁做好以及将屋子外的鉴权系统做好显得比后来的多用户login更为重要。 继续阅读 >
201909-02 php与Redis实现分布式锁,你会了吗? HOT redis写入时不带锁定功能,为防止多个进程同时进行一个操作,出现意想不到的结果,so...对缓存进行插入更新操作时自定义加锁功能。 继续阅读 >
201909-02 PHP实现Redis单据锁以及防止并发重复写入 HOT Redis锁在我们的系统中一般只用于解决并发重复请求的情况,对于非并发的的重复请求一般会去数据库或日志校验数据的状态,两种机制结合起来才能保证整个链路的可靠。 继续阅读 >
201909-02 laravel结合workerman开发在线聊天应用 HOT Workerman是一款 开源 高性能异步 PHP socket即时通讯框架 。支持高并发,超高稳定性,被广泛的用于手机app、移动通讯,微信小程序,手游服务端、网络游戏、PHP聊天室、硬件通讯、智能家居、车联网、物联网等领域的开发。支持TCP长连接,支持Websocket、HTTP等协议,支持自定义协议。拥有异步Mysql、异步Redis、异步Http、MQTT物联网客户端、异步消息队列等众多高性能组件。 继续阅读 >
201908-31 在什么场合里,你会使用PHP消息队列呢 HOT 消息队列技术是分布式应用间交换信息的一种技术。消息队列可驻留在内存或磁盘上,队列存储消息直到它们被应用程序读出。通过消息队列,应用程序可独立地执行,它们不需要知道彼此的位置、或在继续执行前不需要等待接收程序接收此消息。 继续阅读 >
201908-31 高并发下,php与redis实现的抢购、秒杀功能实现步骤 HOT 查询出对应商品的库存,看是否大于0,然后执行生成订单等操作,但是在判断库存是否大于0处,如果在高并发下就会有问题,导致库存量出现负数 继续阅读 >
201908-31 想要高可用?搞定负载均衡架构是关键 HOT 当前大多数的互联网系统都使用了服务器集群技术,集群即将相同服务部署在多台服务器上构成一个集群整体对外提供服务,这些集群可以是Web应用服务器集群,也可以是数据库服务器集群,还可以是分布式缓存服务器集群等。 继续阅读 >
201908-30 PHP实现微信申请退款流程与实例,你会了嘛 HOT 里的步骤是已经搞定了微信支付,不然怎么退款,使用官方的demo。当然网上可能也有很多大神自己重写和封装了demo,或许更加好用简洁,但是我还是不提倡用, 继续阅读 >
201908-30 laravel5.5实现PHP定时任务,可参考学习 推荐 准备环境 服务器:linux(debian)+nginx+mysql+php 环境 框架:laravel 5.5 (确认能跑通) 需求:每天晚上1点执行定时操作 继续阅读 >
201908-30 PHP+RabbitMQ实现消息队列的完整代码 HOT 首先,从业务上来讲,我并不要求消息的100%接受率,并且,我需要结合php开发,RabbitMq相较RocketMq,延迟较低(微妙级)。至于ActiveMq,貌似问题较多。RabbitMq对各种语言的支持较好,所以选择RabbitMq。 先安装PHP对应的RabbitMQ,这里用的是 php_amqp 不同的扩展实现方式会有细微的差异. 继续阅读 >
201908-29 Laravel5.5实现支付宝手机网站支付实例,可学习下 HOT yansongda/laravel-pay中拉起支付,是将支付form信息直接返回到页面中,考虑到业务需求,需要通过json方式返回更方便一些? 继续阅读 >
201908-29 php中Session使用方法详解,你会了吗 HOT Session的设置不同于Cookie,必须先启动,在PHP中必须调用session_start()。session_start()函数的语法格式如下: Bool session_start(void) //创建Session,开始一个会话,进行Session初始化 注意:session_start()函数之前不能有任何输出 继续阅读 >
201908-29 php并发加锁问题分析与设计,可深入学习 HOT 在工作项目中作为一个合格的PHPer,会遇到一些php并发访问去修改一个数据问题,如果这个数据不加锁,就会造成数据的错误。下面我将分析一个财务支付锁的问题。 继续阅读 >