网络框架:应用层工具

这篇主要聊一聊两个应用层工具:web api 和 rpc;
关键字:web api, rpc;
关键字解释:
web api:远端的两个ip之间,进行通讯交换资料的时候,需要用到的,特点是一次(可多笔)资料交互之後,断开链接;进阶説明:socket的connect是保持连接的,除非自己断开,不然就会保持;
rpc:这个是分布式系统或者系统架构庞大的时候,经常采用的通讯方式,笔者使用过的工具是grpc;
首先聊一下web api:
web api的client端,往往是直接发送一个request就断开,而不会一直保持链接;制定的时候,就采用公用的文本格式和流程:比如我在项目中实作的就有https:post的方式,http是文本格式,s是security,所以发送的内容的头部会包含key的资讯;post是表示方式;
讨论:爲什麽要用public key和private key?
如果我们保持connect,那麽我就可以通过绑定的ip来知道你是可以信任的,但是如果是如果我不保持connect,随便一个client都可以丢个request给我,这时候就必须确保你的权限是可以信任的,就衍生出了确保权限的内容,就是public key和private key;
grpc的使用:小型项目的话,模块之间的沟通方式多是用事件的方式;但是当系统庞大,or 使用分布式系统的时候,or 爲了让系统可以在某部分down掉,其他部分仍然能正常运作时,这些情况下,都会使用到rpc的模式,也就是远端呼叫api 的方式;我实作过grpc,也就是先制定protobuf,然後生产相关的接口代码,然後实现server端和client端;
总结:构建系统的时候,需要提前制定不同模块之间的沟通方式,一般是两种:rpc和事件,远程沟通的时候,web是一个常用的方式;


<<:  【心得】你今天青蛙了吗? Flex之路-align-items vs. align-content 傻傻分不清楚

>>:  [Day01] 写给现在与将来的主管

Day 26 - 建立自己的K线资料库 (上)

本篇重点 本篇目标是要下载kbar资料及建立自已的K线资料库 抓取所有股票Contract 抓取所有...

Vpn架设

我家使用的是大大宽频 没有固定ip 最近购入一台totolink的路由器想要架设vpn 但是设定完了...

JavaScript Day 27. AJAX、Request、Response

如何获取 DOM 节点、串接 API,我们已经大概能了解,可是在网路这个大区域里面,那些传过来传过去...

【Day21】什麽是函式?

函式功能 函式在 JavaScript 中为物件型别,以下列出它一般的物件差别 被呼叫的能力 {} ...

第三天 Routes 与 MVC

呈前一天的问题!昨日的答案是因为我们有在 yml 档设定 production 的环境要使用 pgs...