有人在维护社区嘛,对RPC有一点疑惑,可以帮忙解答嘛
社区首页 (3662)
请编写您的帖子内容
社区频道(8)
显示侧栏
卡片版式
全部
序列化框架
代理层
注册中心
网络通信(Netty)
负载均衡
博文收录
Ada助手
最新发布
最新回复
标题
阅读量
内容评分
精选

237
评分
1
有人在维护社区嘛,对RPC有一点疑惑,可以帮忙解答嘛
还是不理解,各个地方都尝试找出空指针异常,不知道到底哪里的问题
复制链接 扫一扫
分享

255
评分
回复
线程池源码核心方法介绍
线程池源码核心方法详解 addWorker getTask
复制链接 扫一扫
分享

261
评分
回复
getTask方法: 实现救急线程存活keepAliveTime
在线程池中,也就是在源码中并不区分线程的性质,当目前的线程数量大于核心线程数,该线程从阻塞队列中拉取任务时就用poll,小于等于就用take。
复制链接 扫一扫
分享

327
评分
回复
线程池的拒绝策略(自定义拒绝策略)
源码如下,都实现了RejectedExecutionHandler 接口,是策略模式的一种体现。如果在创建线程池的时候没有指定拒绝策略,默认会采用 AbortPolicy。相当于把一个接口组合了进来,我们可以重写该接口的方法,自定义一种拒绝策略。
复制链接 扫一扫
分享

287
评分
回复
RPC框架业务线程池的添加方法和作用
如果只用Netty的主从多线程模型去监听连接和读写事件,并用worker去处理业务逻辑,在业务逻辑耗时比较短的情况下是ok的,如果耗时比较长,那么这个workerGroup中的worker就会一直被占用。假如任务耗时1s,我设置的业务的线程是32个,如果有100个请求通过一个连接进行并发访问,那么总耗时大概是4s,因为业务线程池每秒可以处理32个请求,3s处理完96个请求,还有4个请求需要1s的时间。添加业务线程池之后,把传过来的数据msg和channel封装成一个对象丢给业务线程池。......
复制链接 扫一扫
分享

RPC如何实现超时重试
超时重试的设置
...全文
241
评分
回复
RPC如何实现超时重试
超时重试的设置
复制链接 扫一扫
分享

256
评分
回复
RPC框架中请求id的生成 uuid/雪花算法/AtomicLong
服务消费者发送请求到服务提供者,在请求体中可以设置一个字段是该请求的id,发送出去之后只需要在一个while循环中去restMap中根据id去找结果即可,因为服务提供者在处理完后会把结果发给客户端,客户端会把这个结果放在这个全局的restMap中,这样就能够实现请求和响应的一一对应。可以使用uuid,需要注意的是uuid的生成,因为在一台机器上可能会并发的发送请求,那么此时uuid可能会重复,所以在代理类中,需要这样设置。,10bit作为机器的ID(5个bit是数据中心,5个bit的机器ID),......
复制链接 扫一扫
分享

297
评分
回复
RPC调用方如何实现异步调用:CompletableFuture
使用 CompletableFuture 进行异步调用和任务编排,改写完变为异步调用,耗时短,任务调用完后会自动执行后续的业务
复制链接 扫一扫
分享

255
评分
回复
RPC中实现提供者信息变化后通知消费者
使用Java可以链接Zookeeper并且进行节点的增删改查以及监听,目前有三套API可以使用。这里用的是。这个client就是一个CuratorFramework的实现。zk收到节点变更后就会执行process方法。这样在process方法中执行消费者本地的缓存修改即可。。...
复制链接 扫一扫
分享

228
评分
回复
阻塞队列LinkedBlockingQueue 源码解析
BlockingQueue的实现有很多,下面主要介绍下LinkedBQ。LinkedBQ 里面有两个锁,一个是putLock,一个是takeLock,也有两个Condition,也就是在put元素的时候如果里面本身就有元素的话,是不会影响到take的,只是当链表中元素从0变为1 的时候会通知等待的take线程。同理take也不会影响到put。...
复制链接 扫一扫
分享

288
评分
回复
Java实现简单类的序列化(int 和 string字段的序列化)
实现 int 、String、 User 的序列化和反序列化。
复制链接 扫一扫
分享

280
评分
回复
2种动态代理方式的性能测试(JDK1.8 JDK > Cglib)
Cglib执行速度比JDK快?不同jdk版本不一样。JDK 1.8 动态代理 JDK > Cglib 1、cglib底层是ASM字节码生成框架,但是字节码技术生成代理类,在JDL1.6之前比使用java反射的效率要高2、在jdk6之后逐步对JDK动态代理进行了优化,在调用次数比较少时效率高于cglib代理效率3、只有在大量调用的时候cglib的效率高,但是在1.8的时候JDK的效率已高于cglib。......
复制链接 扫一扫
分享

248
评分
回复
JDK自带的序列化框架使用
把对象转化为可传输的字节序列过程称为序列化。把字节序列还原为对象的过程称为反序列化。序列化最终的目的是为了对象可以跨平台存储,和进行网络传输。而我们进行跨平台存储和网络传输的方式就是IO,而我们的IO支持的数据格式就是字节数组。......
复制链接 扫一扫
分享

293
评分
回复
序列化方式介绍和性能比较 (kryo fastjson hessian jdk)
JDK自带的序列化框架使用_trigger333的博客-CSDN博客深入理解Java序列化机制ObjectOutputStream源码简要分析_A__Plus的博客-CSDN博客_objectoutputstream。
复制链接 扫一扫
分享

267
评分
回复
RPC框架性能优化思路和具体实现
RPC的调用流程如下,可以在动态代理,序列化框架,路由算法,线程模型,服务器性能等几部分考虑。
复制链接 扫一扫
分享
为您搜索到以下结果:
6
社区成员
17
社区内容
发帖
与我相关
我的任务
RPC学习分享(Java)
RPC学习分享社区:
欢迎大家加入本社区,一起学习和RPC相关的知识,欢迎提出问题,一起交流分享~~
内容包括但不限于: 网络通信,序列化框架,代理框架,负载均衡,注册中心等。
复制链接 扫一扫
分享确定
社区描述
RPC学习分享社区:
欢迎大家加入本社区,一起学习和RPC相关的知识,欢迎提出问题,一起交流分享~~
内容包括但不限于: 网络通信,序列化框架,代理框架,负载均衡,注册中心等。 rpcjava 个人社区
加入社区
获取链接或二维码
- 近7日
- 近30日
- 至今
加载中
社区公告
欢迎大家加入RPC知识分享问答社区,我们希望逐步的充实社区内容,希望大家可以在这里了解RPC的发展历史,现有框架,具体实现以及性能调优等等!
希望大家积极投递博文~ 积极问答~