个人简介

Echo Blog


江湖无名 安心练剑
  • CFETS Biz Note 20180827
    Client & API client(前台交易机) api 这两种权限的切换。 client 端操作的记录 客户端参考编号不符合正常的 clOrdId 标识。 ps: 都可以进行修改,调整用户的权限。 页面的设计 新增、修改只需要使用相同的页面即可。 方向 量化、风控、程序化交易 冒烟测试 意义 流程 页面枚举=》数据库的枚举信息=》tca 需要的值...
    2018-08-27 01:37:32 | Biz
  • ActiveMQ Communication Mode
    JMS Java消息服务(Java Message Service,JMS)应用程序接口是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。Java消息服务是一个与具体平台无关的API,绝大多数MOM提供商都对JMS提供支持。 Java消息服务的规范包括两种消息模式,点对点和发布者/订阅者。许多提供商支持这一通用框架因此...
    2018-08-25 06:44:28 | MQ
  • HTTPS
    HTTP 不安全 http 协议属于明文传输协议,交互过程以及数据传输都没有进行加密,通信双方也没有进行任何认证,通信过程非常容易遭遇劫持、监听、篡改,严重情况下,会造成恶意的流量劫持等问题,甚至造成个人隐私泄露(比如银行卡卡号和密码泄露)等严重的安全问题。 可以把 http 通信比喻成寄送信件一样,A 给 B 寄信,信件在寄送过程中,会经过很多的邮递员之手,他们可以拆开信读取里面的内容...
    2018-08-25 04:43:23 | Web
  • 基于 netty4 手写 rpc-17-interceptor 拦截器
    拦截器 说明 有时候我们需要统计方法的耗时,需要知道统计出参/入参的相关信息。 通过拦截器都可以非常方便的实现。 设计思路 无论是客户端还是服务端,只需要在方法执行前后,加入拦截器相关的方法调用,加入对应的上下文信息即可。 客户端实现 个人理解 目前主要在客户端添加拦截器,其实服务端是类似的。 代码实现 接口定义 package com.github.houbb.rpc...
    2018-08-24 08:23:15 | Java
  • 基于 netty4 手写 rpc-16-gracefully shutdown 优雅关闭
    优雅摘除服务 说明 我觉得这可以说是 rpc 最需要的一个功能。 因为他的实际意义非常重大,就是可以任意时间发布应用,而对业务无损。 以前发布应用都要等到半夜,很累也容易出问题。 思路 结合 java 的 ShutdownHook 以及 linux 的 kill PID 来达到这个目的。 ShutdownHook 讲解 服务提供方 停止时,先标记为不接收新请求,...
    2018-08-24 08:23:15 | Java
  • 基于 netty4 手写 rpc-15-generic 泛化调用
    generic 泛化调用 说明 泛化接口调用方式主要用于客户端没有 API 接口及模型类元的情况,参数及返回值中的所有 POJO 均用 Map 表示,通常用于框架集成,比如:实现一个通用的服务测试框架,可通过 GenericService 调用所有服务实现。 GenericService barService = (GenericService) applicationContext....
    2018-08-24 08:23:15 | Java
  • 基于 netty4 手写 rpc-14-fail 失败策略
    fail 失败策略 说明 当我们调用服务失败的时候,有很多策略。 比如: FailFast 快速失败 FailOver 尝试下一次调用 等等其他各种策略。 实现思路 不同的失败策略方式只是处理失败的方式不同而已。 这个主要放在客户端,当调用失败的时候,重新进行尝试即可。 代码实现 接口 首先,是失败策略的接口定义。 package com.git...
    2018-08-24 08:23:15 | Java
  • 基于 netty4 手写 rpc-13-callType 调用方式
    callType 调用方式 说明 不同的场景我们会希望有不同的调用方式。 常见的有三种调用方式: (1)sync 同步调用 (2)async 异步调用 (3)oneWay 单向调用 个人感觉(1)(3)是最常见的需求,所以本次优先实现了这两种。 实现思路 不同的调用方式只是处理的行为不同而已。 可以将这个配置传递,分别在 client/server 的端进行相应的处理。 ...
    2018-08-24 08:23:15 | Java