Hi,I`m lan

转|SOFARPC优雅关闭剖析

众所周知,在微服务架构下面,当应用需要进行新功能升级发布,或者异常关闭重启的时候,我们会对应用的进程进行关闭,而在关闭之前,我们希望做一些诸如关闭数据库连接,等待处理任务完成等操作,这个就涉及到我们本文中的优雅关闭功能。假如应用没有支持优雅停机,则会带来譬如数据丢失,交易中断、文件损坏以及服务未下线等情况。

转|SOFARPC泛化调用实现剖析

我们知道,在 RPC 调用中,客户端需要加载服务端提供的接口定义类,但是,很多情况下,这个并不总是可行的,于是,衍生了泛化调用的需求,一个成熟的,功能完善的 RPC 框架一般都会支持泛化调用,那么什么是泛化调用呢?SOFA RPC 又是如何支持泛化调用的?同时又是如何实现的? 和其他的 RPC 泛化调用又有何不同?有何优势?我们将在本文一一解答这些问题。

转|SOFARPC序列化比较

在应用服务化架构中,RPC 框架是非常重要的基础组件。而在 RPC 框架当中,序列化(以及反序列化)又是必不可少的一环。因为序列化的性能对整体框架性能有比较大的影响,之前的文章中,我们已经详细剖析了 SOFARPC 各个核心功能模块的实现原理,想必大家已经很清楚 RPC 的调用流程。

转|SOFARPC注解支持剖析

编程 API 方式与Spring 的 ApplicationContextAware 类似。XML的方式依赖于在xml中引入 SOFA 命名空间,利用 Bean 的生命周期管理,进行 Bean 的注入。相比这两种方式,通过 Annotation 方式发布 JVM 服务更加灵活方便,只需要在实现类上加 @SofaService、@SofaRefernce 注解即可进行服务的发布和引用。本文针对 SOFARPC 在注解的支持和使用分原理、源码两部分进行一一介绍。

转|SOFARPC跨语言支持剖析

随着 TIOBE 10月份的编程语言排行的发布,C++重回第三的位置,新兴的 Swift 和 Go 表现出强劲的上升趋势。与此同时,虽然目前 Java 的领头位置尚未出现有力挑战,我们希望能够在基础设施的建设上预留跨语言的可扩展设计。同时,跨语言的挑战也是工程实际面临的现状,蚂蚁内部如 AI、IoT,算法等缺少 JVM 原生支持的领域,往往不可避免地需要涉及到跨语言调用的问题。