使用PHP Socket开发Yar TCP服务 (www.laruence.com)

【简介】

Yar支持HTTP和TCP俩种Transporter, HTTP的是基于CURL,PHP中的Yar默认就是走的HTTP Transporter, 这个大家应该都不陌生, 但是基于TCP的, 可能大家会用的少一些。

事实上,我6年前也写过一个C的Yar server框架,叫做Yar-c, 代码地址在Yar-C at Github, 当时我们用这个框架,实现了高性能的微博白名单等服务,以供PHP端使用Yar Client来调用。

只不过,Yar C需要用C来写Handle, 可能对于不少PHPer来说,会稍微有点陌生,那今天我们尝试用PHP来写一个TCP的Server,来介绍下如何实现对Yar RPC协议的处理, 这个例子可以方便的结合Swoole等异步PHP框架,实现一个高性能的Yar TCP Server。 这个过程中, 会让大家了解Yar的RPC通信协议,以及捎带了解下Socket编程。

点击查看原文 >>

@技术头条 2022-05-06 23:37 / 原作者微博:@Laruence / 0个评论
赞过的人: @IT技术博客大学习
要不要再学学下面的文章?
WSL运行时遇到未知异常错误无法使用 (lisenhui.cn)
遇到 WSL 提示“发生未知错误”无法启动的问题?可能是系统更新、配置冲突或文件损坏导致。可通过重启服务、检查日志、重装 WSL 或升级内核来排查解决。保持系统与 WSL 的版本更新至关重要!
by @技术头条 2024-11-23 21:49 查看详情
AWS运维部署实践--使用sigma自建镜像仓库代替ECR (wiki.eryajf.net)
本文介绍了如何使用 `sigma` 替代 AWS 的 ECR 作为轻量级的镜像仓库解决方案。通过配置 `s3` 存储、端口监听等设置,实现了低资源占用下的高效镜像管理。文章详细提供了 `config.yaml` 文件的配置方案,以及 `sigma` 部署的具体步骤,适合在自建环境中替代 ECR 进行镜像管理。
by @技术头条 2024-11-02 17:03 查看详情
Linux 安全 Auditd 审计工具使用说明 (dusays.com)
本文介绍了 Linux 的 Auditd 审计工具,用于监控和记录安全相关事件。内容涵盖工具安装、审计规则配置、日志管理和规则持久化。审计规则包括文件、系统调用的监控,适合检测敏感操作。通过 `auditctl`、`ausearch` 和 `aureport` 等工具,管理员可以分析日志并生成报告,提升系统的安全性和合规性。
by @技术头条 2024-11-02 16:54 查看详情
StarRocks 开发环境搭建踩坑指北 (crossoverjie.top)
本文详细介绍了在本地搭建 StarRocks 开发环境的步骤,包括启动前端(FE)和后端(BE)的配置及调试方法。通过本地启动 FE 并使用 Docker 运行 BE,实现了本地调试和测试。作者分享了常见问题解决方案,如端口冲突和网络配置问题,为 StarRocks 开发环境搭建提供了实用指南。
by @技术头条 2024-11-02 16:42 查看详情
基于 Docker 搭建开发环境(三):链路追踪 (www.diguage.com)
本文介绍了通过 Docker 配置 OpenTelemetry 和 Jaeger,实现分布式链路追踪。详细讲解了如何使用 OpenTelemetry Agent 和 Collector 配置尾部采样策略,识别慢请求和错误。结合 Prometheus 和 Grafana,构建全面的监控和追踪系统。提供了具体的 `docker-compose.yml` 配置文件示例,适合需要全链路可观测性的分布式应用开发环境。
by @技术头条 2024-11-02 16:34 查看详情
基于 Docker 搭建开发环境(二):EFK 日志套件 (www.diguage.com)
本文介绍了如何使用 Docker 和 EFK(Elasticsearch、Fluentd、Kibana)套件构建日志管理系统,通过 Fluentd 将 NACOS 和业务日志集中发送至 Elasticsearch,方便数据分析和故障排查。文章提供了 `docker-compose.yml` 配置文件示例,解决了插件安装、权限设置和健康检查等常见问题,为构建灵活高效的日志管理系统提供了实用方法。
by @技术头条 2024-11-02 16:33 查看详情
基于 Docker 搭建开发环境(一):数据库+监控 (www.diguage.com)
本文介绍了使用 Docker 构建开发环境的步骤,涵盖 MySQL 数据库配置、Nacos 服务发现与配置管理、Prometheus 监控及 Grafana 可视化。通过 Docker Compose 结构化配置,实现了多组件集成。文章提供了详细的 `docker-compose.yml` 文件示例,并探讨了自动接入监控、应用打包等优化方向,适用于需要集中管理多项开发工具的场景。
by @技术头条 2024-11-02 16:33 查看详情
使用结构化数据管理 SSH 配置:SSH Config Tool (soulteary.com)
本文介绍了使用 SSH Config Tool 管理 SSH 配置的最佳实践。工具将复杂的 SSH 配置简化为 YAML 格式,实现模块化和自动化管理,适用于设备多、配置庞杂的场景。通过 YAML 文件生成精简的 SSH Config,可提高可读性,减少冗余。工具支持 Docker 运行和 Linux 管道,提供灵活的跨平台应用方式。
by @技术头条 2024-11-02 16:27 查看详情
如何使用纯CSS鉴别是不是Safari浏览器 (www.zhangxinxu.com)
如何通过纯 CSS 来判断是否为 Safari 浏览器?本文介绍了多种实用技巧和 @supports 规则的使用,帮助开发者轻松检测并处理 Safari 特有的样式兼容性问题。无论是桌面还是 iOS Safari,本文都有详细的解决方案!
by @技术头条 2024-09-09 23:40 查看详情
浅谈 GUI 应用开发 (zgq.me)
本文深入探讨了 GUI 应用开发中的关键问题,从状态管理、生命周期到交互模式等多个角度分享了开发经验。无论你是前端开发者还是产品设计师,这篇文章都能为你在 GUI 开发中提供实用的见解和技巧。赶紧阅读,提升你的应用开发水平吧!
by @技术头条 2024-09-09 23:37 查看详情