定制 icyboy/swmen 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

icyboy/swmen

Composer 安装命令:

composer require icyboy/swmen

包简介

Swoole + Lumen

关键字:

README 文档

README

#swmen

Swoole + Lumen

Depends On

  • php >= 5.5.9
  • lumen >= 5.2.*
  • ext-swoole >= 1.8.5

##Install

 composer install

由于Lumen不支持使用Http Kernel,所以你必须在App目录创建一个Application.php,内容如下

<?php
/**
 * Created by PhpStorm.
 * User: Icyboy <icyboy@me.com>
 * Date: 2016/5/19
 * Time: 11:07
 */

namespace App;

class Application extends \Laravel\Lumen\Application
{

    public function getMiddleware()
    {
        return $this->middleware;
    }

    public function callTerminableMiddleware($response)
    {
        parent::callTerminableMiddleware($response);
    }
}

然后修改bootstrap目录下的app.php

//替换如下内容
//$app = new Laravel\Lumen\Application(
//    realpath(__DIR__.'/../')
//);

$app = new App\Application(
    realpath(__DIR__.'/../')
);

##Usage

 vendor/bin/swmen start | stop | reload | restart | quit

##Config

In .env , use SWMEN_* to config swoole server. For example

SWMEN_REACTOR_NUM=1
SWMEN_WORKER_NUM=4
SWMEN_BACKLOG=128
SWMEN_DISPATCH_MODE=1

###pid_file

 SWMEN_PID_FILE=/path/to/swmen.pid

default is at /lumen/storage/logs/swmen.pid

###gzip

 SWMEN_GZIP=1

level is in the range from 1 to 9, bigger is compress harder and use more CPU time.

 SWMEN_GZIP_MIN_LENGTH=1024

Sets the mINImum length of a response that will be gzipped.

###deal_with_public

Use this ONLY when developing

 SWMEN_DEAL_WITH_PUBLIC=true

###Swoole

Eexample:

 SWMEN_HOST=0.0.0.0

Default host is 0.0.0.0:8088

See Swoole's document:

简体中文

English

##Work with nginx

server {
	listen       80;
	server_name  localhost;

	root /path/to/swmen/public;

	location ~ \.(png|jpeg|jpg|gif|css|js)$ {
		break;
	}

	location / {
		proxy_set_header   Host $host:$server_port;
		proxy_set_header   X-Real-IP $remote_addr;
		proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
		proxy_http_version 1.1;

		proxy_pass http://127.0.0.1:8088;
	}
}

#License MIT

icyboy/swmen 适用场景与选型建议

icyboy/swmen 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 45 次下载、GitHub Stars 达 2, 最近一次更新时间为 2016 年 05 月 19 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「swoole」 「lumen」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 icyboy/swmen 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 icyboy/swmen 我们能提供哪些服务?
定制开发 / 二次开发

基于 icyboy/swmen 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 45
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 2
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 2
  • Watchers: 1
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2016-05-19