当前位置: 首页 > 软件库 > Web应用开发 > Web框架 >

CabalPHP

基于 Swoole 的轻量级框架
授权协议 Apache
开发语言 PHP
所属分类 Web应用开发、 Web框架
软件类型 开源软件
地区 国产
投 递 者 隗锐进
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

CabalPHP

CabalPHP 是一个基于Swoole的轻量、高效、全异步开源框架。

亮点

  • 全异步单机超高性能,轻松分布式部署

  • 支持HTTP、TCP、websocket等多种协议

  • 完善数据库引擎,简单高效(其他swoole框架几乎没有哦)

  • 易于学习,开发效率高,简单高效的数据库引擎

  • 使用IDE(Sublime Text/VSCode/PhpStorm等)有完整的代码提示

适用场景

  • 微服务架构的RPC服务开发

  • 前后分离的应用(RESTful)API接口开发

  • 即时通讯服务端开发

  • 传统的Web网站,服务端渲染SEO友好

性能压力测试

环境:

  • 腾讯云 容器服务

  • 镜像: 基于 php:7.1-alpine 的swoole镜像

  • 1cores

  • 256MiB - 512MiB

  • php 7.1.12

# ab -c 2000 -n 10000 http://172.16.1.79:9501/
This is ApacheBench, Version 2.3 <$Revision: 1430300 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking 172.16.1.79 (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Completed 10000 requests
Finished 10000 requests


Server Software:        swoole-http-server
Server Hostname:        172.16.1.79
Server Port:            9501

Document Path:          /
Document Length:        284 bytes

Concurrency Level:      2000
Time taken for tests:   1.658 seconds
Complete requests:      10000
Failed requests:        3
(Connect: 0, Receive: 0, Length: 3, Exceptions: 0)
Write errors:           0
Total transferred:      4330003 bytes
HTML transferred:       2840003 bytes
Requests per second:    6031.43 [#/sec] (mean)
Time per request:       331.596 [ms] (mean)
Time per request:       0.166 [ms] (mean, across all concurrent requests)
Transfer rate:          2550.40 [Kbytes/sec] received

Connection Times (ms)
            min  mean[+/-sd] median   max
Connect:        0   37 154.4      2    1005
Processing:    27  252  68.8    260     547
Waiting:        0  250  69.2    259     546
Total:         79  289 165.9    267    1369

Percentage of the requests served within a certain time (ms)
50%    267
66%    284
75%    303
80%    314
90%    347
95%    365
98%   1252
99%   1279
100%   1369 (longest request)

捐助

先捐助些优秀的代码吧!

  • php 7.1.12 This is ApacheBench, Version 2.3  Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Licensed to The Apache Software Foundation, http://www.apache.org/ Benchmarking 17

  • CabalPHP CabalPHP 是一个基于Swoole的轻量、高效、全异步开源框架。 亮点 全异步单机超高性能,轻松分布式部署 支持HTTP、TCP、websocket等多种协议 完善数据库引擎,简单高效(其他swoole框架几乎没有哦) 易于学习,开发效率高,简单高效的数据库引擎 自动生成API接口文档 使用IDE(Sublime Text/VSCode/PhpStorm等)有完整的代码提示

 相关资料
  • 问题内容: 是否有一个提供发布/订阅模式的Java轻量级框架? 一些理想的功能 支持泛型 向发布者注册多个订阅者 API主要是接口和一些有用的实现 完全不需要内存,持久性和事务保证。 我了解JMS,但这对我来说太过分了。发布/订阅的数据是文件系统扫描的结果,扫描结果被馈送到另一个组件进行处理,然后在将其馈给另一个组件之前进行处理,依此类推。 编辑:所有在同一过程中。bean的PropertyCha

  • 本文向大家介绍基于zepto的移动端轻量级日期插件--date_picker,包括了基于zepto的移动端轻量级日期插件--date_picker的使用技巧和注意事项,需要的朋友参考一下 前言 做过移动Web开发的同学都知道,移动端日期选择是很常见的需求。在PC端,我们有很丰富的选择,比较出名的就有Mobiscroll和jQuery UI Datepicker。个人看来,这些插件存在的两个显而易见

  • 本文向大家介绍轻量级javascript 框架Backbone使用指南,包括了轻量级javascript 框架Backbone使用指南的使用技巧和注意事项,需要的朋友参考一下 Backbone 是一款基于模型-视图-控制器 MVC 模式的轻量级javascript 框架 ,可以用来帮助开发人员创建单页Web应用。 借助Backbone 我们可以使用REST的方式来最小化客户端和服务器间的数据传输,

  • 本文向大家介绍前端轻量级MVC框架CanJS详解,包括了前端轻量级MVC框架CanJS详解的使用技巧和注意事项,需要的朋友参考一下 选择正确的库 创建一个JS APP没有好的工具是很有难度的,jQuery只是操作DOM的库,没有提供任何创建APP的基础,这就是为什么我们要一个类似CanJS的专门的库。 CanJS 是一个轻量级的MVC库,提供你创建一个JS APP所需的工具。 CanJS 是一个轻

  • 本文向大家介绍详解基于 Node.js 的轻量级云函数功能实现,包括了详解基于 Node.js 的轻量级云函数功能实现的使用技巧和注意事项,需要的朋友参考一下 导语 在万物皆可云的时代,你的应用甚至不需要服务器。云函数功能在各大云服务中均有提供,那么,如何用“无所不能”的 node.js 实现呢? 一、什么是云函数? 云函数是诞生于云服务的一个新名词,顾名思义,云函数就是在云端(即服务端)执行的函

  • 本文向大家介绍浅谈Android轻量级的数据缓存框架RxCache,包括了浅谈Android轻量级的数据缓存框架RxCache的使用技巧和注意事项,需要的朋友参考一下 请求网络数据是在安卓开发中使用最频繁的一个功能,网络请求的体验决定了用户对整个APP的感觉,因此合理地使用缓存对网络请求的数据进行处理极为重要。合理的进行缓存和网络请求,可以为APP带来更优秀的体验。图片的缓存有Picasso、Gl

  • 本文向大家介绍基于C#实现的轻量级多线程队列图文详解,包括了基于C#实现的轻量级多线程队列图文详解的使用技巧和注意事项,需要的朋友参考一下 前言 工作中我们经常会遇到一些一些功能需要实现造作日志,数据修改日志,对于这种业务需求如果我们以同步的方式实现,难免会影响到系统的性能。如下我列出集中解决方案。 使用Thread异步处理。 使用线程池或Task异步处理。 以上两种方案确实能解决我们此场景的需求

  • 本文向大家介绍基于Python的SQL Server数据库实现对象同步轻量级,包括了基于Python的SQL Server数据库实现对象同步轻量级的使用技巧和注意事项,需要的朋友参考一下 缘由 日常工作中经常遇到类似的问题:把某个服务器上的某些指定的表同步到另外一台服务器。 类似需求用SSIS或者其他ETL工作很容易实现,比如用SSIS的话,就会会存在相当一部分反复的手工操作。 建源的数据库信息,