使用 Lumen 做的微服务架构的方式如何记录用户行为?

目前公司使用的lumen做的微服务架构.很多接口都是独立的服务.

如何使用lumen记录用户的行为?

是一套积分商城,登录是用公众号的openid自动登录,还有签到,加入购物车.购买等行为.怎么记录下来.有啥好的扩展包使用.

by JeffreyBool blog :point_right: link
JeffreyBool
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
JeffreyBool
最佳答案

目前想到几种解决方案

第一种事件打点

通过前端事件的方式去做打点,很多用户行为分析系统就是基于这个做的。

第二种访问日志文件

通过系统中间件的方式,获取服务网关统一的记录 访问路径,guid , 请求数据, 返回数据, 请求类型,ip 等等,然后通过服务去收集这些数据,或者通过 Logstash+Elasticsearch+Kibana 去收集日志文件

3年前 评论
讨论数量: 7
JeffreyBool

@DavidNineRoc 用事件来写可以实现.但是这个实现方式成本太大了.因为是微服务架构.所有系统分了很多模块.用事件的话.肯定会在很多单服务去写.如果后期加功能的话不好维护.

6年前 评论

@张高元 模型事件和其他模块是完全分离的,我不知道为什么不好维护,
对需要记录的模型写一个Observer,
file
然后注册所有事件观察者
file
可能是我还没有完全弄清楚你的需求,可以更详细描述?

6年前 评论
JeffreyBool

你可能不太明白微服务架构. 微服务架构系统会分成很多细小的模块.各自不影响独立运行.像用户是个微服务单服务,订单.购物车.积分.支付等等... 如果要用事件.岂不是在这么多服务上去做了? 后期如果要维护太费劲了. 目前想到的是前端打点的方式.前端直接处理.写个接口记录打点记录. 其实我做这个是记录用户行为.给Java做大数据分析的

6年前 评论
JeffreyBool

@DavidNineRoc 你说的这个我知道.事件这个只能在单应用上使用.小系统可以.大型应用行不通

6年前 评论

没接触过这个,找到解决方法了,记得艾特我一下,顺便过来学习下 :relaxed:

6年前 评论
JeffreyBool

目前想到几种解决方案

第一种事件打点

通过前端事件的方式去做打点,很多用户行为分析系统就是基于这个做的。

第二种访问日志文件

通过系统中间件的方式,获取服务网关统一的记录 访问路径,guid , 请求数据, 返回数据, 请求类型,ip 等等,然后通过服务去收集这些数据,或者通过 Logstash+Elasticsearch+Kibana 去收集日志文件

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!