Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
B
brpc
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
brpc
Commits
7ed22996
Commit
7ed22996
authored
Sep 27, 2017
by
gejun
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
polish server_push.md
parent
292fea52
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
2 additions
and
2 deletions
+2
-2
server_push.md
docs/cn/server_push.md
+2
-2
No files found.
docs/cn/server_push.md
View file @
7ed22996
...
@@ -11,9 +11,9 @@ server push指的是server端发生某事件后立刻向client端发送消息,
...
@@ -11,9 +11,9 @@ server push指的是server端发生某事件后立刻向client端发送消息,
*
client首先得认识server发来的消息,否则是鸡同鸭讲。
*
client首先得认识server发来的消息,否则是鸡同鸭讲。
*
client还得知道怎么应对server发来的消息,如果client上没有对应的处理代码,仍然没用。
*
client还得知道怎么应对server发来的消息,如果client上没有对应的处理代码,仍然没用。
换句话说,client得对server消息“有准备”,这种“准备”还往往依赖client当时的上下文。综合来看,由client告知server“我准备好了”(注册),之后server再通知client是更普适的模式,
**这个模式中的"push"就是"response"**
。
换句话说,client得对server消息“有准备”,这种“准备”还往往依赖client当时的上下文。综合来看,由client告知server“我准备好了”(注册),之后server再通知client是更普适的模式,
**这个模式中的"push"就是"response"**
,一个超时很长或无限长RPC的response
。
在一些非常明确的场景中,注册可以被简化,如http2中的
[
push promise
](
https://tools.ietf.org/html/rfc7540#section-8.2
)
并不需要浏览器(client)向server注册,因为client和server都知道它们之间的任务就是让client尽快地下载必要的资源,且每个资源有唯一的URI。所以server可以直接向client推送资源及其URI,client看到这些资源时会缓存下来避免下次重复访问。类似的,一些协议提供的双向通信也是在限定的场景中提高推送效率,而不是实现通用的推送,比如多媒体流,格式固定的key/value对等。client默认能处理server所有可能推送的消息,以至于不需要额外的注册,但推送
的本质仍是"response"
。
在一些非常明确的场景中,注册可以被简化,如http2中的
[
push promise
](
https://tools.ietf.org/html/rfc7540#section-8.2
)
并不需要浏览器(client)向server注册,因为client和server都知道它们之间的任务就是让client尽快地下载必要的资源,且每个资源有唯一的URI。所以server可以直接向client推送资源及其URI,client看到这些资源时会缓存下来避免下次重复访问。类似的,一些协议提供的双向通信也是在限定的场景中提高推送效率,而不是实现通用的推送,比如多媒体流,格式固定的key/value对等。client默认能处理server所有可能推送的消息,以至于不需要额外的注册,但推送
仍可被视作"response":client和server早已约定好的注册请求的response
。
# Restful回调
# Restful回调
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment