Aliware Open Source 深圳站 PPT 阿里巴巴陈志轩 Dubbo开源现状与2.7规划

微风

2019/03/24 发布于 技术 分类

文字内容
1. Al iw ar e阿 里 中 间 件 1 dubbo.apache.org Copyright © 2018 The Apache Software Foundation
2. 2 iw ar e阿 里 中 3 Al 1 间 件 2 dubbo.apache.org Copyright © 2018 The Apache Software Foundation 4 5
3. 3 Registry 2 间 件 1 ar 4 Al iw 3 4. notify e阿 里 中 3. subscribe Consumer 5. invoke 2. register Provider 1. start Container 5 6 6. count Monitor dubbo.apache.org Copyright © 2018 The Apache Software Foundation
4. Al iw ar e阿 里 中 间 件 4 dubbo.apache.org v Copyright © 2018 The Apache Software Foundation
5. Al iw ar e阿 里 中 间 件 5 dubbo.apache.org Copyright © 2018 The Apache Software Foundation
6. 6 IP Clearance First Release Proposal SGA Committer Discuss ICLA PMC Al iw ar e阿 里 中 间 件 Mentor Vote Meet Up Maturity Evaluation dubbo.apache.org Copyright © 2018 The Apache Software Foundation TLP
7. 7 Github 115% 12000 8000 Star dubbo.apache.org Copyright © 2018 The Apache Software Foundation Fork Watch 06 02 20 18 .0 1 12 11 10 09 08 WATCH 0 07 FORK 3K 2000 06 STAR 14K 4000 20 17 .0 5 20K 6000 Al iw ar e阿 里 中 间 件 10000
8. Al iw ar e阿 里 中 间 件 8 https://github.com/apache/incubator-dubbo/issues/1012 dubbo.apache.org Copyright © 2018 The Apache Software Foundation
9. Al iw ar e阿 里 中 间 件 9 dubbo.apache.org Copyright © 2018 The Apache Software Foundation
10. Al iw ar e阿 里 中 间 件 10 dubbo.apache.org Copyright © 2018 The Apache Software Foundation
11. Al iw ar e阿 里 中 间 件 11 dubbo.apache.org Copyright © 2018 The Apache Software Foundation
12. 12 间 中 default method CompletableFuture Optional Lambda • • • • iw Al Netty4 ar e阿 里 • • • • 件 JDK8 Buffer Pooling IO-Thread/EventExecutor Native Transport/Epoll TLS/SSLEngine https://github.com/apache/incubator-dubbo/issues/2029 dubbo.apache.org Copyright © 2018 The Apache Software Foundation
13. 13 Apache Dubbo 里 中 间 件 • GroupId/Package: org.apache.dubbo API/ Al iw ar e阿 • dubbo-compatible: • JDK8 default method https://github.com/apache/incubator-dubbo/pull/1941 https://github.com/apache/incubator-dubbo/pull/1952 dubbo.apache.org Copyright © 2018 The Apache Software Foundation
14. 15 @Deprecated public interface Filter extends org.apache.dubbo.rpc.Filter { 件 Result invoke(Invoker invoker, Invocation invocation) throws RpcException; Al iw ar e阿 里 中 间 default org.apache.dubbo.rpc.Result invoke( org.apache.dubbo.rpc.Invoker invoker, org.apache.dubbo.rpc.Invocation invocation) throws org.apache.dubbo.rpc.RpcException { Result.CompatibleResult result = (Result.CompatibleResult) invoke( new Invoker.CompatibleInvoker<>(invoker), new Invocation.CompatibleInvocation(invocation)); return result.getDelegate(); } } dubbo.apache.org Copyright © 2018 The Apache Software Foundation
15. 16 API • Micrometer/Dropwizard Metrics 间 件 Metrics 2.0 Al iw ar e阿 里 中 • MetricName(String key, Map tags) • MetricLevel: TRIVIAL/MINOR/NORMAL/MAJOR/CRITICAL • Counter/BucketCounter/Gauge/Compass • • Filter/ / /Monitor https://github.com/apache/incubator-dubbo/pull/1966 dubbo.apache.org Copyright © 2018 The Apache Software Foundation
16. 17 CompletableFuture ar e阿 里 中 间 件 • • provider/consumer Al iw @DubboAsync • • Async • AsyncContext https://github.com/apache/incubator-dubbo/pull/1957 https://github.com/dubbo/dubbo-samples/tree/samples-for-2.7.0SNAPSHOT/dubbo-samples-async-provider dubbo.apache.org Copyright © 2018 The Apache Software Foundation
17. 18 iw ar e阿 里 中 间 件 public interface FooService { String findFoo(String name); } Al // null fooService.findFoo(fooId); // Future Future fooFuture = RpcContext.getContext().getFuture(); fooFuture.get(); dubbo.apache.org Copyright © 2018 The Apache Software Foundation Future
18. 19 CompletableFuture 里 中 间 件 public interface AsyncService { CompletableFuture sayHello(String name); } iw ar e阿 @AsyncFor Al public interface GreetingsService { String sayHi(String name); } @AsyncFor(AsyncService.class) public interface GrettingServiceAsync extends GreetingsService { CompletableFuture sayHiAsync(String name); } dubbo.apache.org Copyright © 2018 The Apache Software Foundation
19. 20 @DubboAsync/ @AsyncFor e阿 里 中 间 件 @DubboAsync public interface GreetingsService { String sayHi(String name); } Al iw ar @javax.annotation.Generated("com.alibaba.dubbo.async.processor.AsyncA nnotationProcessor") @AsyncFor(GreetingsService.class) public interface GreetingsServiceAsync extends GreetingsService { CompletableFuture sayHiAsync(String name); } <dubbo:reference id="greetingsService" interface="com.alibaba.dubbo.samples.api.GreetingsServiceAsync"/> dubbo.apache.org Copyright © 2018 The Apache Software Foundation
20. 21 AsyncContext/ Servlet 3.0 API Al iw ar e阿 里 中 间 件 public interface AsyncContext { CompletableFuture getInternalFuture(); void write(Object value); boolean isAsyncStarted(); boolean stop(); void start(); void signalContextSwitch(); } dubbo.apache.org Copyright © 2018 The Apache Software Foundation
21. 间 中 里 Al iw ar e阿 • • method • / • zookeeper/nacos 件 22 • properties, port, protocol • (timeout/weight) • Enviroment : -D/dubbo.properties/spring enviroment • nacos/apollo/zookeeper https://github.com/apache/incubator-dubbo/issues/2030 dubbo.apache.org Copyright © 2018 The Apache Software Foundation
22. 23 dubbo.apache.org dubbo.io github.com/apache/incubator-dubbo github.com/dubbo Al iw ar e阿 里 中 间 件 CONTAC T US dev@dubbo.apache.org WWW.YOURCOMPANY.COM gitter.im/alibaba/dubbo 21711817 dubbo.apache.org Copyright © 2018 The Apache Software Foundation
23. 24 hengyunabc.github.io github.com/hengyunabc Al iw ar e阿 里 中 间 件 CONTAC T US hengyunabc@gmail.com WWW.YOURCOMPANY.COM dubbo.apache.org Copyright © 2018 The Apache Software Foundation
24. Al iw ar e阿 里 中 间 件 25 dubbo.apache.org Copyright © 2018 The Apache Software Foundation