请教一下微服务接口开发的问题?

现在公司基于微服务结构,很多业务层都是接口之间互相通信.

像这种开发模式,有什么好用的扩展可以让接口之间互相调用呢?

还有就是接口之间的关系有什么好的办法解决呢? 难道都要foreach 去处理接口之间的关系吗?

by JeffreyBool blog :point_right: link
JeffreyBool
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 9
liyu001989

接口与接口之间相互通信,就是服务器与服务器之间相互调用接口? 接口实现好了就能相互调用啊,只是验证的问题,增加签名啥的。

第二个问题没看懂,资源和资源之间的嵌套要怎么处理?

6年前 评论
JeffreyBool

@liyu001989 就是查询一个用户信息,比如用户信息有个角色id. 这时候只有查询用户的接口和查询角色的接口.接口之间有什么办法像数据库那样用id去自动关联呢

6年前 评论
liyu001989

你可以请求两次 /api/user /api/user/roles,也可以查询用户接口的时候 api/user?include=roles。

6年前 评论
JeffreyBool

@liyu001989 这是用模型才行吧.比如Java和php分开呢.库也分开了.没有模型关系了

6年前 评论
liyu001989

这是个资源嵌套的思路,不用模型自己实现啊,只是查询数据做嵌套而已

6年前 评论

@kenuo 我感觉你是想使用 Java 开发底层服务,使用 PHP 做对外接口,然后想让 PHP 和 Java 互相通信?这时候只能使用 RPC 通信了,其实我一直不知道你想问啥...不过感觉 RPC 可以帮上你...

6年前 评论
JeffreyBool

@JimChen 用laravel做的.有啥好的扩展包可以处理接口之间的请求以及数据字典的转换

6年前 评论

哈哈哈,又是一个瞎整微服务的案例,前端时间公司来了个java架构,然后新系统就是这么搞。底层+业务层,底层有用户库、订单库、商品库、评论库等大概七八个库,业务层分两个管理后台、一个小程序、一个企业微信,然后我们写代码的时候先底层库出一波代码,然后业务库调用,md底层和业务库都是php,都是laravel啊,简直有毒。。。。有个暖的必要.....
我司是自建了个sdk,业务层用composer引入,这个包其实就干了调用底层的接口,转化成数组这件事。
至今还是很想吐槽那个java架构,瞎折腾。。。。这是php又不是java。。。。
底层的各个代码库之间相互调用,也要走sdk,很服,laravel的orm基本发挥不了作用,本来订单信息包含用户信息,直接belongsto就ok,现在是业务库需先调订单,然后取订单里的userId,组成数组,然后调用户接口,组装数据,平白增加工作量。
竟然木有公共库,至少把用户表这种放公共库啊.....
一开始有些没法写的感觉,底层和业务层耦合太高了,有时候就是底层直接把所有代码都写完了,真的好想哭啊

5年前 评论
JeffreyBool

坑已经踩过.用 laravel 做微服务.基本基础服务都是 Java 那边做.对外过来的都是接口数据.所以没法用 laravel 的 orm 这些. 只能用模型快捷函数.这时候感觉 laravel 就有点鸡肋了

5年前 评论

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