Closed Ethennoob closed 3 years ago
因为我打算 把另外一个 https://github.com/brewlin/im-cloud(独立的分布式推送服务) 接进来。但是现在还没有想到有什么好的办法
我大致看了一下im-cloud,我觉得和swoft-im合并不妥,因为感觉两者差距比较大,swoft-im倾向于轻量化简单化小项目。im-cloud有点企业级了哈哈哈。不过我也挺想研究一下你这个im-cloud的
另外,我觉得这和swoft-im的ws需要有心跳请求才行,不然前端不会断线重连,还有用户关闭浏览器或者杀掉app,服务器也可以从这个心跳请求判断是否需要断线close掉,例如可以再onMessage里面swoole_timer_after来判断
可以有
大佬,我发现docker的redis-service跑不起来😭 8091端口没有被占用 Could not open input file: /website/redis-service/bin/swoft
api [master] docker-compose up -d
Creating network "api_my-bridge" with driver "bridge"
Creating api_mysql_1 ... done
Creating api_gateway-api_1 ... done
Creating api_redis-service_1 ... done
Creating api_group-service_1 ... done
Creating api_msg-service_1 ... done
Creating api_user-service_1 ... done
☁ api [master] docker ps
WARNING: Error loading config file: /Users/lingxiang/.docker/config.json: EOF
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b05ea38ce739 lxido/group-service "php /website/group-…" 7 seconds ago Up 3 seconds 8090/tcp, 0.0.0.0:8094->8094/tcp api_group-service_1
8f2eda14cd59 lxido/user-service "php /website/user-s…" 7 seconds ago Up 4 seconds 8090/tcp, 0.0.0.0:8092->8092/tcp api_user-service_1
63e540ad9c90 lxido/gateway-api "php /website/gatewa…" 7 seconds ago Up 4 seconds 0.0.0.0:8090->8090/tcp api_gateway-api_1
ead010ff8d31 lxido/msg-service "php /website/gatewa…" 7 seconds ago Up 3 seconds 8090/tcp, 0.0.0.0:8093->8093/tcp api_msg-service_1
0073ea21628b mysql:5.7 "docker-entrypoint.s…" 8 seconds ago Up 6 seconds 3306/tcp, 33060/tcp api_mysql_1
api [master] ⚡ docker-compose logs
Attaching to api_group-service_1, api_gateway-api_1, api_redis-service_1, api_msg-service_1, api_user-service_1
group-service_1 | Information Panel
group-service_1 | *************************************************************
group-service_1 | * tcp | Host: 0.0.0.0, port: 8094, mode: 3, type: 1
group-service_1 | *************************************************************
group-service_1 | Server has been started. (master PID: 1, manager PID: 6)
group-service_1 | You can use CTRL + C to stop run.
group-service_1 |
group-service_1 | RPC service register success by consul ! tcp=localhost:8094
redis-service_1 | Could not open input file: /website/redis-service/bin/swoft
gateway-api_1 | Server Information
gateway-api_1 | ************************************************************************************
gateway-api_1 | * WS | host: 0.0.0.0, port: 8090, type: 1, worker: 2, mode: 3 (http is Enabled)
gateway-api_1 | * TCP | host: 0.0.0.0, port: 8099, type: 1, worker: 2 (Disabled)
gateway-api_1 | ************************************************************************************
gateway-api_1 | Server has been started. (master PID: 1, manager PID: 6)
gateway-api_1 | You can use CTRL + C to stop run.
破案了,redis-service里面的dockerfile
ADD . /website/gateway-api
EXPOSE 8090
ENTRYPOINT ["php", "/website/redis-service/bin/swoft","rpc:start"]
应该改成
ADD . /website/redis-service
大佬尽快改了dockerfile重新push image上dockerhub呀😆
嗯,我重新推一下
你好,用docker-compose启动的时候发现容器内的swoft获取不到目录外层的service-components,一般是什么原因
user-service_1 |
user-service_1 | Fatal error: Interface 'ServiceComponents\Rpc\User\UserGroupServiceInterface' not found in /website/user-service/app/Services/UserGroupService.php on line 25
app-service_1 |
app-service_1 | Fatal error: Interface 'ServiceComponents\Rpc\App\AppServiceInterface' not found in /website/app-service/app/Services/AppService.php on line 23
user-service_1 |
user-service_1 | Fatal error: Interface 'ServiceComponents\Rpc\User\UserGroupServiceInterface' not found in /website/user-service/app/Services/UserGroupService.php on line 25
redis-service_1 |
redis-service_1 | Fatal error: Interface 'ServiceComponents\Rpc\Redis\UserCacheInterface' not found in /website/redis-service/app/Services/UserCacheService.php on line 44
redis-service_1 |
redis-service_1 | Fatal error: Interface 'ServiceComponents\Rpc\Redis\UserCacheInterface' not found in /website/redis-service/app/Services/UserCacheService.php on line 44
你改过代码后重新生成的docker吧,你在打包镜像之前建议本地先composer install, 可能的情况如下
我发现你把gateway-api-cloud里面的websocket模块删除了,我现在想帮你继续开发cloud的模块,当初为啥把ws删了呢。
我打算新建一个app_key表存储引用的ak和serect 然后token必须加密算法,init的时候做对称加密。