目前我们有四套系统,两套laravel
框架写的,两套hyperf
框架写的。共用一个数据库,导致的一个问题就是同一个Model
类要在四个服务中写一遍,很是麻烦和繁琐,请问有什么方案可以解决这个问题吗?谢谢。hyperf
和laravel
都用的是Eloquent ORM
。所以兼容问题还是可以解决的。
目前服务运行采用的是k8s
+docker
的方案。
目前我们有四套系统,两套laravel
框架写的,两套hyperf
框架写的。共用一个数据库,导致的一个问题就是同一个Model
类要在四个服务中写一遍,很是麻烦和繁琐,请问有什么方案可以解决这个问题吗?谢谢。hyperf
和laravel
都用的是Eloquent ORM
。所以兼容问题还是可以解决的。
目前服务运行采用的是k8s
+docker
的方案。
2 回答1.5k 阅读✓ 已解决
1 回答1.3k 阅读✓ 已解决
2 回答904 阅读✓ 已解决
1 回答1.1k 阅读✓ 已解决
2 回答747 阅读✓ 已解决
2 回答967 阅读
1 回答940 阅读
承邀:
使用grpc,swoole建立微服务,将model层放入微服务中。例如 @风中有php做的云 给到你的答案。我没有这样做过,不过可以给你一些思路。
1.新建一个仅有Eloquent ORM的项目。
2.将所有model放入这个项目。这是我们的model微服务,composer+复制粘贴即可完成
3.在你原有的项目中需要实现model本身的方法,ArrayAccess, Arrayable, Jsonable, JsonSerializable, QueueableEntity, UrlRoutable
4.最后,使用tcp或者http去通信你的微服务
5.微服务返回model实体
6.这样就无侵入的完成了model统一的需求
这仅仅是我的思路,未经过实践,建议不要使用在生产环境中。