• 请不要在回答技术问题时复制粘贴 AI 生成的内容
NoKey
V2EX  ›  程序员

请教一下 Java 大佬,大量使用反射进行回调,是什么套路?

  •  1
     
  •   NoKey · Apr 30, 2020 · 4888 views
    This topic created in 2378 days ago, the information mentioned may be changed or developed.

    新手接触的比较晚

    目前各个模块,服务之间,都是使用消息队列进行沟通

    最近接触了一个服务

    需要通知对方或者给对方消息的时候,是调用对方提前注册的一个方法

    实际就是用反射去执行方法

    在这个服务里大量使用

    请教一下大佬,这个做法有啥专有名词不,或者是啥框架,啥模块?

    谢谢。

    17 replies  •  2020-04-30 16:18:58 +08:00
    yungo8
    yungo8
    Apr 30, 2020 via Android
    1
    回调?不是远程方法调用?
    magicdu
    magicdu
    Apr 30, 2020
    2
    RPC
    freebird1994
    freebird1994
    Apr 30, 2020
    3
    远程服务调用
    yungo8
    yungo8
    Apr 30, 2020 via Android
    4
    过来瞎扯一下吧,我觉得楼主接触的东西还是不错的。
    我 15 年自学的,看的培训机构的 java 基础以及框架。后面工作了两年多,都是传统行业管理系统,部门里技术落后,对外提供接口还是 web service xml 的形式,页面开发占用了大半时间,对于技术提升很少,当然自己也是温水煮青蛙,也是有不知道从何去提高的原因。
    18 年决定辞职,然后学 dubbo,才了解了分布式,才知道 rpc 是什么。
    最近半年找工作也是在查漏补缺后端技术栈。
    哎……非科班如果之前接触的项目不好真的影响挺大的,当然我遇到的还不是最坑的。
    luckyrayyy
    luckyrayyy
    Apr 30, 2020
    5
    RPC\RMI 了解一下
    wysnylc
    wysnylc
    Apr 30, 2020
    6
    RPC
    然后不建议使用 RPC,换成 RESTFUL 更好
    w99w
    w99w
    Apr 30, 2020
    7
    解耦用的。平台方提供协议规范,使用者注册实现后的 service,对平台方内部来说,无额外业务逻辑。
    对于使用方,使用规范一目了然。
    w99w
    w99w
    Apr 30, 2020
    8
    之前在一个大厂做 IM,都是这么玩的
    w99w
    w99w
    Apr 30, 2020
    9
    专有名词,
    思想可以说是 面向协议编程。
    ic2y
    ic2y
    Apr 30, 2020
    10
    @NoKey 叫动态代理。先声明一个接口,动态代理这个接口 [内部路由请求到具体实例的方法] ,通过这个接口实现外部的 Http 或者 TCP 请求 到 本地的方法之间的桥接。
    yanglovejing
    yanglovejing
    Apr 30, 2020
    11
    那个地方应该统一路由的地方
    NoKey
    NoKey
    OP
    Apr 30, 2020
    12
    @w99w 恩,大概就是你的说的这个感觉。习惯了用消息队列等中间件来解藕,感觉这种做法有点麻烦
    liyanggyang
    liyanggyang
    Apr 30, 2020❤️1
    13
    观察者模式
    ddoocc
    ddoocc
    Apr 30, 2020
    14
    计算机的各种思路来来去去就那几种,换个应用场景就换个名字。
    w99w
    w99w
    Apr 30, 2020
    15
    @NoKey
    消息队列这种最优雅
    不过不同模块的消息队列的实现方式都不一定相同
    所以开放点还是不能太复杂,反射+协议
    简单粗暴,正确有效
    gscoder
    gscoder
    Apr 30, 2020
    16
    消息队列太开放,强制性不高。rpc 感觉还是兼有解耦和标准化的好处
    xuanbg
    xuanbg
    Apr 30, 2020
    17
    写服务回调用得少,我写客户端就大量使用回调。原因很简单,因为 model->viewModel 是单向的,所以 viewModel 必须通过反射和回调才能调用 model 里面的方法,把 view 中的交互事件反馈回去。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   5011 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 41ms · UTC 03:45 · PVG 11:45 · LAX 19:45 · JFK 22:45
    ♥ Do have faith in what you're doing.