我们在使用swoole实现聊天室的时候,需求是已经言明了的。
参见https://www.jianshu.com/p/438953b35523
因此,在该聊天室搭建的过程中,我们依然按照之前Swoole的目录结构来进行搭建。
.
├── application
│ ├── controllers
│ └── services
├── common
│ ├── CommonFunction.go
│ └── Common.go
├── conf
│ └── loadconf.go
├── db
│ └── redisInstance.go
├── main
│ └── main.go
├── pool
│ └── pool.go
└── ws
└── ws.go
这个目录与之前我们创建的目录基本雷同。
main目录是入口函数,其中包括了读取配置文件、启动http服务器的操作;
ws目录是将http连接升级为ws连接,并为每个连接生成一个goroutine;
pool目录是连接池目录,我们需要通过这个文件来为Redis生成一个实例;
db目录存放的是数据库连接类,我们所有的数据库都放在这里进行统一管理;
conf目录存放的是项目的一些配置文件,包括redis的配置等;
application目录存放真正的应用,读取信息,发送信息等都在application中进行。
纵观整个目录结构,与我们之前使用swoole配置的项目几乎是一致的。
网友评论