介绍
使用nodejs + socket.io 搭建 socket 服务用于观测用户在线时长,本文只写了停留的时长,有需要的话可以加入访问来源等各种数据(按照项目需求来),nodejs和socket.io的介绍去看下官网,官网写的更全。 nodejs 官网 , socket.io官网
我对nodejs也不是很熟悉比着葫芦画瓢罢了。可以留言改正,不喜勿喷。halobug 统计时长仓库地址
代码示例
容器的方式启动
1,拉取代码后目录结构
2,本地build镜像
1bash make-image.sh
3,根据提示查看是否构建成功
1docker images | grep point
4,启动容器 + 日志查看
1bash update.sh & docker-compose logs -f
5,本地绑定hosts后测试
1https://point-socket.halobug.cn
本地如何配置 https 参考以前的文章吧
- 本文仅存在停留时长(其他数据自己添加)。
- 项目重启后数据丢失(多实例部署请将数据持久化保存)。
- 仅限单机单实例部署(数据持久化后可多实例部署提高性能)。
一键启动测试
1 ,pull 镜像
1docker pull halobug/point-socker-test:1.0
2 ,run
1docker run -d -p 3000:3000 halobug/point-socker-test:1.0
3, 浏览器访问
1http://127.0.0.1:3000
4,查看容器id日志
1(docker ps 查看对应的容器获取)
2
3获取容器ID:docker ps | grep "point-socker-test" | awk '{print $1}'
4
5docker logs -f 容器ID