小花花 的个人动态
  • 小花花 发布了文章
    4周前

    通过 Process 模块在 PHP 中实现多进程(一):简单的多进程 TCP 服务器实现

    Process vs PCNTL我们知道,通过 PHP 自带的扩展 PCNTL 可以实现基于 Unix 的多进程管理(不能用于 Web 服务器环境),比如 Laravel 自带的队列系列解决方案 Ho
  • 小花花 发布了文章
    4周前

    队列系统解决方案:Laravel Horizon

    Horizon 为 Laravel 提供了基于 Redis 的、拥有美观后台的、代码驱动配置的队列系统。Horizon 让我们可以轻松监控队列系统的关键指标,例如任务吞吐量、运行时间和失败任务等。所有
  • 小花花 发布了文章
    4周前

    如何实现redis与数据库mysql的一致性?

    通常情况下,只要是存在一块数据存放在两个地方,就会有一致性的问题存在!那么解决一致性的方法通常也需要看业务的一致性的强弱需求。要实现 redis 与数据库mysql的一致性,通常使用以下四种解决办法:
  • 小花花 发布了文章
    4周前

    基于 Swoole 在 Laravel 中实现异步事件监听及处理

    这一篇教程我们直接以 hhxsv5/laravel-s 扩展包为例,演示如何在 Laravel 项目中基于 Swoole 实现事件监听。系统自带事件首先我们来看一些扩展包自带的系统事件,这些系统事件又
  • 小花花 发布了文章
    4周前

    基于 Swoole 在 Laravel 中实现异步任务队列

    Swoole 异步任务实现原理我们知道,PHP 本身的设计是同步阻塞的,不支持多线程和异步 IO,所以当我们执行一些耗时的操作,比如发送广播,或者邮件,如果直接在当前进程中操作,会导致服务器响应变慢,
  • 小花花 发布了文章
    4周前

    基于 Swoole 定时器实现毫秒级任务调度

    Swoole 提供了异步高精度定时器功能,该功能类似 JavaScript 的 setInterval/setTimeout,粒度为毫秒级,底层基于 epoll_wait(异步)和 setitimer
  • 小花花 发布了文章
    4周前

    在 Laravel 中集成 Swoole 实现 WebSocket 服务器

    在上篇教程中,我们基于 Swoole 实现了简单的 WebSocket 服务器,然后在客户端通过 JavaScript 实现了 WebSocket 客户端,并演示了 WebSocket 的握手和通信过
  • 小花花 发布了文章
    4周前

    基于 Swoole 实现简单的 WebSocket 服务器及客户端

    在此之前,有必要对 WebSocket 的原理做简单的说明,WebSocket 复用了 HTTP 协议来实现握手,然后通过请求报文中的 Upgrade 字段将 HTTP 协议升级到 WebSocket
  • 小花花 发布了文章
    4周前

    基于 Swoole 实现高性能 HTTP 服务器

    在上篇教程中,给大家介绍了 Swoole 的基本概念和安装配置。从这篇教程开始,将结合 Laravel 框架在应用中通过 Swoole 实现高性能 HTTP 服务器、WebSocket 服务器、协程、
  • 小花花 发布了文章
    4周前

    Swoole 扩展安装与使用入门

    Swoole 是面向生产环境的 PHP 异步网络通信引擎。使用纯 C 语言编写(Swoole 4 开始逐渐改为通过 C++ 编写),提供了 PHP 语言的异步多线程服务器、异步 TCP/UDP 网络客
  • 小花花 发布了文章
    1个月前

    swoole http 协程客户端

    协程版 Http 客户端基于原生的异步 Http 客户端,基本的设置和使用方法和异步 Http 客户端一致,不在需要注册回调函数,只需要同步写法即可,使用方法和 Swoole\Http\Client
  • 小花花 发布了文章
    1个月前

    Swoole4 协程与 Go 协程有哪些区别

    Swoole4 与 Go 协程在设计上是完全一致的,均是 stackful 的,每个协程拥有独立的运行栈。协程调度器使用汇编代码,切换协程上下文。Swoole4 与 Go 协程在实现细节上存在一些差异
  • 小花花 发布了文章
    1个月前

    Swoole 协程与 Go 协程的区别

    进程、线程、协程的概念 进程是什么? 进程就是应用程序的启动实例。 例如:打开一个软件,就是开启了一个进程。 进程拥有代码和打开的文件资源,数据资源,独立的内存空间。 线程是什么? 线
  • 小花花 发布了文章
    1个月前

    PHP 查看扩展信息的命令

    这里以查看 Swoole 扩展信息为例。root@639ca1f15214:~# php --ri swoole // php --ri [扩展名称]swooleswoole support =&gt
  • 小花花 发布了文章
    1个月前

    MySQL 的自增 ID 用完了,怎么办?

    一、简述 在 MySQL 中用很多类型的自增 ID,每个自增 ID 都设置了初始值。一般情况下初始值都是从 0 开始,然后按照一定的步长增加。在 MySQL 中只要定义了这个数的字节长度,那
  • 小花花 发布了文章
    1个月前

    Swoole4 协程与 PHP 的 Yield/Generator 协程有什么区别

    在一些框架中使用了 PHP 的 Yield/Generator 来实现半自动化的协程。实际使用中,开发者需要在涉及协程逻辑的函数调用前增加 yield 关键字。这带来了额外的学习成本和编程心智负担,非
  • 小花花 发布了文章
    1个月前

    PHP协程原理

    “协程”(Coroutine)概念最早由 Melvin Conway 于1958年提出。协程可以理解为纯用户态的线程,其通过协作而不是抢占来进行切换。相对于进程或者线程,协程所
  • 小花花 发布了文章
    1个月前

    异步、并发

    异步应用程序及内核Linux操作系统在设计上将虚拟空间划分为用户空间和内核空间,两者做了隔离是相互独立的,用户空间给应用程序使用,内核空间给内核使用。内核具有最高权限,可以访问受保护的内存空间,可以访
  • 小花花 发布了文章
    1个月前

    Swoole Server的两种运行模式介绍

    单线程模式(SWOOLE_BASE)这种模式就是传统的异步非阻塞 Server。与 Nginx 和 Node.js 等程序是完全一致的。在时间循环中直接回调 PHP 的函数,而不是 dispatch
  • 小花花 发布了文章
    1个月前

    PHP 的 4种回调函数风格

    匿名函数$server->on('Request', function ($req, $resp) use ($a, $b, $c) { echo "hello world";});可使用
最近访客
  • 董俊俊
    董俊俊 3个月前