Skip to content

Commit

Permalink
create im-cloud
Browse files Browse the repository at this point in the history
  • Loading branch information
brewlin committed Oct 10, 2019
1 parent 220cb23 commit f5424f5
Show file tree
Hide file tree
Showing 7 changed files with 56 additions and 53,696 deletions.
13 changes: 7 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,24 @@
基于Swoft-cloud微服务架构-Im通讯平台
基于Swoft-cloud微服务Im架构 (业务版)
==============
概述
=======
+ 对swoole-im进行服务拆分,进行微服务架构(https://wwww.github.com/Lxido/swoole-im.git)
+ 接入原生[`im-cloud`](https://www.github.com/brewlin/im-cloud)分布式中间件作为主要推送中心
+ 对swoole-im进行服务拆分,进行微服务架构(https://www.github.com/brewlin/swoole-im.git)
+ 基于Swoft-cloud 进行服务化治理服务治理、熔断器、服务降级、Rpc调用、服务网关、
Cosul服务注册与发现、Mysql连接池、Redis连接池、异步任务、websocket推送
+ 底层采用Swoole通讯引擎,多进程、异步任务,开发模式:Aop,依赖注入,Bean容器,全注解
+ `swoft-im`分支依赖websocket完整服务,本分支拆分websocekt服务使用`im-cloud` 原生开源中间件替代
+ 服务间配置独立,使用composer进行依赖管理,进行composer组件化开发,公用的Rpc接口封
装为独立composer包。
- 拆分有群组Rpc服务,聊天日志Rpc服务,用户基础Rpc服务,消息处理服务
- Httpserver网关api服务,websocket服务
+ 请使用swoole扩展2.1.3 以及php 7.1
+ 快速开始
- 针对每个服务使用composer更新依赖`make install`
- 开启所有服务 `make start`
- 关闭所有服务 `make stop`
+ docker启动
- `docker-compose up`
+ 演示地址 http://chat.huido.site (可以注册)
+ 演示地址 存在两个主分支
- im-cloud版 http://cloud.huido.site (soon)
- swoft-im版 http://chat.huido.site (可以注册 已完成)

架构图
=========
Expand Down
86 changes: 41 additions & 45 deletions gateway-api/composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,67 +9,63 @@
"description": "Modern High performance AOP and Coroutine PHP Framework, base on Swoole",
"license": "Apache-2.0",
"require": {
"php": ">=7.1",
"ext-pdo": "*",
"ext-json": "*",
"swoft/annotation": "^2.0",
"swoft/bean": "^2.0",
"swoft/event": "^2.0",
"swoft/aop": "^2.0",
"swoft/config": "^2.0",
"swoft/stdlib": "^2.0",
"swoft/framework": "^2.0",
"swoft/http-message": "^2.0",
"swoft/server": "^2.0",
"swoft/tcp-server": "^2.0",
"swoft/http-server": "^2.0",
"swoft/websocket-server": "^2.0",
"swoft/log": "^2.0",
"swoft/db": "^2.0",
"swoft/connection-pool": "^2.0",
"swoft/test": "^2.0",
"swoft/console": "^2.0",
"swoft/rpc": "^2.0",
"swoft/rpc-server": "^2.0",
"swoft/rpc-client": "^2.0",
"swoft/task": "^2.0",
"swoft/redis": "^2.0",
"swoft/proxy": "^2.0",
"swoft/error": "^2.0",
"swoft/component": "dev-master as 2.0",
"php": ">=7.0",
"ext-swoole": ">=2.1",
"swoft/framework": "^1.0",
"swoft/rpc": "^1.0",
"swoft/rpc-server": "^1.0",
"swoft/rpc-client": "^1.0",
"swoft/http-server": "^1.0",
"swoft/http-client": "^1.0",
"swoft/websocket-server": "^1.0",
"swoft/task": "^1.0",
"swoft/http-message": "^1.0",
"swoft/view": "^1.0",
"swoft/db": "^1.1",
"swoft/cache": "^1.0",
"swoft/redis": "^1.0",
"swoft/console": "^1.0",
"swoft/devtool": "^1.0",
"swoft/session": "^1.0",
"swoft/i18n": "^1.0",
"swoft/process": "^1.0",
"swoft/memory": "^1.0",
"swoft/service-governance": "^1.0",
"swoft/auth": "^1.0",
"wp-breeder/swoft-socket": "^1.0",
"lxido/components":"@dev"
},
"require-dev": {
"swoft/swoole-ide-helper": "dev-master",
"phpunit/phpunit": "^7.5",
"friendsofphp/php-cs-fixer": "^2.10"
"phpunit/phpunit": "^5.7",
"friendsofphp/php-cs-fixer": "^2.10",
"psy/psysh": "@stable"
},
"autoload": {
"psr-4": {
"App\\": "app/"
"psr-4":{
"App\\":"app/"
},
"files": [
"app/Swoft.php",
"app/Helper/Functions.php"
]
},
"autoload-dev": {
"psr-4": {
"Swoft\\Test\\": "test/"
}
},
"scripts": {
"post-root-package-install": [
"@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
],
"test": "./vendor/bin/phpunit -c phpunit.xml",
"cs-fix": "./vendor/bin/php-cs-fixer fix $1"
},
"repositories": [
{
"type":"vcs",
"url":"http://www.github.com/brewlin/service-components"
},
{
"type": "git",
"url": "git@github.com:swoft-cloud/swoft-component.git"
},
{
"type": "composer",
"url": "https://packagist.laravel-china.org"
"repositories": {
"0":{
"type":"path",
"url":"../service-components"
}
]
}
}
Loading

0 comments on commit f5424f5

Please sign in to comment.