精华内容
下载资源
问答
  • 导读:虽然说 Knative 默认就支持 WebSocket gRPC,但在使用中会发现,有时想要把自己的 WebSocketgRPC 部署到 Knative 中,还是存在各种不顺利。虽然最后排查发现,大多是自己的程序问题或是配置错误导致的...
    43bcce6a087afd84e548df678d11d63f.png

    导读:虽然说 Knative 默认就支持 WebSocket 和 gRPC,但在使用中会发现,有时想要把自己的 WebSocket 或 gRPC 部署到 Knative 中,还是存在各种不顺利。虽然最后排查发现,大多是自己的程序问题或是配置错误导致的。本文分别给出了一个 WebSocket 和 gRPC 的例子,当需要在生产或者测试环境部署相关服务时,可以使用本文给出的示例进行 Knative 服务的测试。

    WebSocket

    如果自己手动的配置 Istio Gateway 支持 WebSocket 就需要开启 websocketUpgrade 功能。但使用 Knative Serving 部署其实就自带了这个能力。本示例的完整代码放在 https://github.com/knative-sample/websocket-chat ,这是一个基于 WebSocket 实现的群聊的例子。

    使用浏览器连接到部署的服务中就可以看到一个接收信息的窗口和发送信息的窗口。当你发出一条信息以后所有连接进来的用户都能收到你的消息。所以你可以使用两个浏览器窗口分别连接到服务中,一个窗口发送消息一个窗口接收消息,以此来验证 WebSocket 服务是否正常。

    本示例是在 gorilla/websocket 基础之上进行了一些优化:

    • 代码中添加了 vendor 依赖,你下载下来就可以直接使用
    • 添加了 Dockerfile 和 Makefile 可以直接编译二进制和制作镜像
    • 添加了 Knative Sevice 的 yaml 文件(service.yaml),你可以直接提交到 Knative 集群中使用
    • 也可以直接使用编译好的镜像 registry.cn-hangzhou.aliyuncs.com/knative-sample/websocket-chat:2019-10-15

    Knative Service 配置:

    apiVersion: serving.knative.dev/v1kind: Servicemetadata: name: websocket-chatspec: template: spec: containers: - image: registry.cn-hangzhou.aliyuncs.com/knative-sample/websocket-chat:2019-10-15 ports: - name: http1 containerPort: 8080

    代码 clone 下来以后执行 kubectl apply -f service.yaml 把服务部署到 Knative 中,然后直接访问服务地址即可使用。

    查看 ksvc 列表,并获取访问域名。

    └─# kubectl get ksvcNAME URL LATESTCREATED LATESTREADY READY REASONwebsocket-chat http://websocket-chat.default.serverless.kuberun.com websocket-chat-7ghc9 websocket-chat-7ghc9 True

    现在使用浏览器打开 http://websocket-chat.default.serverless.kuberun.com 即可看到群聊窗口。

    317601e0a8964673ec1f4a377365cbf8.png

    打开两个窗口,在其中一个窗口发送一条消息,另外一个窗口通过 WebSocket 也收到了这条消息。

    gRPC

    gRPC 不能通过浏览器直接访问,需要通过 client 端和 server 端进行交互。本示例的完整代码放在 https://github.com/knative-sample/grpc-ping-go ,本示例会给一个可以直接使用的镜像,测试 gRPC 服务。

    Knative Service 配置:

    apiVersion: serving.knative.dev/v1kind: Servicemetadata: name: grpc-pingspec: template: spec: containers: - image: registry.cn-hangzhou.aliyuncs.com/knative-sample/grpc-ping-go:2019-10-15 ports: - name: h2c containerPort: 8080

    代码 clone 下来以后执行 kubectl apply -f service.yaml 把服务部署到 Knative 中。

    获取 ksvc 列表和访问域名:

    └─# kubectl get ksvcNAME URL LATESTCREATED LATESTREADY READY REASONgrpc-ping http://grpc-ping.default.serverless.kuberun.com grpc-ping-p2tft Unknown RevisionMissingwebsocket-chat http://websocket-chat.default.serverless.kuberun.com websocket-chat-6hgld websocket-chat-6hgld True

    现在我们已经知道 gRPC server 的地址是 grpc-ping.default.serverless.kuberun.com,端口是 80,那么我们可以发起测试请求:

    └─# docker run --rm registry.cn-hangzhou.aliyuncs.com/knative-sample/grpc-ping-go:2019-10-15 /client -server_addr="grpc-ping.default.serverless.kuberun.com:80" -insecure2019/10/16 11:35:07 Ping got hello - pong2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854794231 +0800 CST m=+73.0619090522019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854827273 +0800 CST m=+73.0619420722019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854835802 +0800 CST m=+73.0619506062019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854842843 +0800 CST m=+73.0619576432019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854849211 +0800 CST m=+73.0619640122019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854855249 +0800 CST m=+73.0619700492019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854861659 +0800 CST m=+73.0619764602019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854875071 +0800 CST m=+73.0619898732019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854905416 +0800 CST m=+73.0620202212019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.85491183 +0800 CST m=+73.0620266302019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.85492533 +0800 CST m=+73.0620401332019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854932285 +0800 CST m=+73.0620470832019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854946977 +0800 CST m=+73.0620617822019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854953311 +0800 CST m=+73.0620681122019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854966639 +0800 CST m=+73.0620814402019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854973939 +0800 CST m=+73.0620887392019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854985463 +0800 CST m=+73.0621002682019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854993275 +0800 CST m=+73.0621080732019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854999812 +0800 CST m=+73.0621146132019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.855012676 +0800 CST m=+73.062127479

    小结

    本文通过两个例子分别展示了 WebSocket 和 gRPC 的部署方法:

    • WebSocket 示例通过一个 chat 的方式展示发送和接受消息
    • gRPC 通过启动一个 client 的方式展示 gRPC 远程调用的过程

    作者简介:

    冬岛,阿里云容器平台工程师,负责阿里云容器平台 Knative 相关工作。

    了解更多 ACK 详情:https://www.aliyun.com/product/kubernetes

    本文为云栖社区内容,未经允许不得转载。

    展开全文
  • 导读:虽然说 Knative 默认就支持 WebSocket gRPC,但在使用中会发现,有时想要把自己的 WebSocketgRPC 部署到 Knative 中,还是存在各种不顺利。虽然最后排查发现,大多是自己的程序问题或是配置错误导致的...

    y1

    作者 | 冬岛 阿里云容器平台工程师

    导读:虽然说 Knative 默认就支持 WebSocket 和 gRPC,但在使用中会发现,有时想要把自己的 WebSocket 或 gRPC 部署到 Knative 中,还是存在各种不顺利。虽然最后排查发现,大多是自己的程序问题或是配置错误导致的。本文分别给出了一个 WebSocket 和 gRPC 的例子,当需要在生产或者测试环境部署相关服务时,可以使用本文给出的示例进行 Knative 服务的测试。

    WebSocket

    如果自己手动的配置 Istio Gateway 支持 WebSocket 就需要开启 websocketUpgrade 功能。但使用 Knative Serving 部署其实就自带了这个能力。本示例的完整代码放在 https://github.com/knative-sample/websocket-chat ,这是一个基于 WebSocket 实现的群聊的例子。

    使用浏览器连接到部署的服务中就可以看到一个接收信息的窗口和发送信息的窗口。当你发出一条信息以后所有连接进来的用户都能收到你的消息。所以你可以使用两个浏览器窗口分别连接到服务中,一个窗口发送消息一个窗口接收消息,以此来验证 WebSocket 服务是否正常。

    本示例是在 gorilla/websocket 基础之上进行了一些优化:

    • 代码中添加了 vendor 依赖,你下载下来就可以直接使用
    • 添加了 Dockerfile 和 Makefile 可以直接编译二进制和制作镜像
    • 添加了 Knative Sevice 的 yaml 文件(service.yaml),你可以直接提交到 Knative 集群中使用
    • 也可以直接使用编译好的镜像 registry.cn-hangzhou.aliyuncs.com/knative-sample/websocket-chat:2019-10-15

    Knative Service 配置:

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: websocket-chat
    spec:
      template:
        spec:
          containers:
            - image: registry.cn-hangzhou.aliyuncs.com/knative-sample/websocket-chat:2019-10-15
              ports:
                - name: http1
                  containerPort: 8080
    

    代码 clone 下来以后执行 kubectl apply -f service.yaml 把服务部署到 Knative 中,然后直接访问服务地址即可使用。

    查看 ksvc 列表,并获取访问域名。

    └─# kubectl get ksvc
    NAME             URL                                                    LATESTCREATED          LATESTREADY            READY   REASON
    websocket-chat   http://websocket-chat.default.serverless.kuberun.com   websocket-chat-7ghc9   websocket-chat-7ghc9   True
    

    现在使用浏览器打开 http://websocket-chat.default.serverless.kuberun.com 即可看到群聊窗口。

    y2

    打开两个窗口,在其中一个窗口发送一条消息,另外一个窗口通过 WebSocket 也收到了这条消息。

    gRPC

    gRPC 不能通过浏览器直接访问,需要通过 client 端和 server 端进行交互。本示例的完整代码放在 https://github.com/knative-sample/grpc-ping-go ,本示例会给一个可以直接使用的镜像,测试 gRPC 服务。

    Knative Service 配置:

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: grpc-ping
    spec:
      template:
        spec:
          containers:
          - image: registry.cn-hangzhou.aliyuncs.com/knative-sample/grpc-ping-go:2019-10-15
            ports:
              - name: h2c
                containerPort: 8080
    

    代码 clone 下来以后执行 kubectl apply -f service.yaml 把服务部署到 Knative 中。

    获取 ksvc 列表和访问域名:

    └─# kubectl get ksvc
    NAME             URL                                                    LATESTCREATED          LATESTREADY            READY     REASON
    grpc-ping        http://grpc-ping.default.serverless.kuberun.com        grpc-ping-p2tft                               Unknown   RevisionMissing
    websocket-chat   http://websocket-chat.default.serverless.kuberun.com   websocket-chat-6hgld   websocket-chat-6hgld   True
    

    现在我们已经知道 gRPC server 的地址是 grpc-ping.default.serverless.kuberun.com,端口是 80,那么我们可以发起测试请求:

    └─# docker run --rm registry.cn-hangzhou.aliyuncs.com/knative-sample/grpc-ping-go:2019-10-15 /client -server_addr="grpc-ping.default.serverless.kuberun.com:80" -insecure
    2019/10/16 11:35:07 Ping got hello - pong
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854794231  0800 CST m= 73.061909052
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854827273  0800 CST m= 73.061942072
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854835802  0800 CST m= 73.061950606
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854842843  0800 CST m= 73.061957643
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854849211  0800 CST m= 73.061964012
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854855249  0800 CST m= 73.061970049
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854861659  0800 CST m= 73.061976460
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854875071  0800 CST m= 73.061989873
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854905416  0800 CST m= 73.062020221
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.85491183  0800 CST m= 73.062026630
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.85492533  0800 CST m= 73.062040133
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854932285  0800 CST m= 73.062047083
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854946977  0800 CST m= 73.062061782
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854953311  0800 CST m= 73.062068112
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854966639  0800 CST m= 73.062081440
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854973939  0800 CST m= 73.062088739
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854985463  0800 CST m= 73.062100268
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854993275  0800 CST m= 73.062108073
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854999812  0800 CST m= 73.062114613
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.855012676  0800 CST m= 73.062127479
    

    小结

    本文通过两个例子分别展示了 WebSocket 和 gRPC 的部署方法:

    • WebSocket 示例通过一个 chat 的方式展示发送和接受消息
    • gRPC 通过启动一个 client 的方式展示 gRPC 远程调用的过程

    作者简介:
    冬岛,阿里云容器平台工程师,负责阿里云容器平台 Knative 相关工作。
    了解更多 ACK 详情:https://www.aliyun.com/product/kubernetes

    欢迎加入 Knative 交流群

    y3

    “ 阿里巴巴云原生微信公众号(ID:Alicloudnative)关注微服务、Serverless、容器、Service Mesh等技术领域、聚焦云原生流行技术趋势、云原生大规模的落地实践,做最懂云原生开发者的技术公众号。”

    展开全文
  • 作者 | 冬岛 阿里云容器平台工程师导读:虽然说 Knative 默认就支持 WebSocket gRPC,但在使用中会发现,有时想要把自己的 WebSocketgRPC 部署到 Knative 中,还是存在各种不顺利。虽然最后排查发现,大多是...

    972e856710e60d145aa0e0746e1a166f.png

    作者 | 冬岛 阿里云容器平台工程师

    导读:虽然说 Knative 默认就支持 WebSocket 和 gRPC,但在使用中会发现,有时想要把自己的 WebSocket 或 gRPC 部署到 Knative 中,还是存在各种不顺利。虽然最后排查发现,大多是自己的程序问题或是配置错误导致的。本文分别给出了一个 WebSocket 和 gRPC 的例子,当需要在生产或者测试环境部署相关服务时,可以使用本文给出的示例进行 Knative 服务的测试。

    WebSocket

    如果自己手动的配置 Istio Gateway 支持 WebSocket 就需要开启 websocketUpgrade 功能。但使用 Knative Serving 部署其实就自带了这个能力。本示例的完整代码放在 https://github.com/knative-sample/websocket-chat ,这是一个基于 WebSocket 实现的群聊的例子。

    使用浏览器连接到部署的服务中就可以看到一个接收信息的窗口和发送信息的窗口。当你发出一条信息以后所有连接进来的用户都能收到你的消息。所以你可以使用两个浏览器窗口分别连接到服务中,一个窗口发送消息一个窗口接收消息,以此来验证 WebSocket 服务是否正常。

    本示例是在 https://github.com/gorilla/websocket/tree/master/examples/chat 基础之上进行了一些优化:

    • 代码中添加了 vendor 依赖,你下载下来就可以直接使用
    • 添加了 Dockerfile 和 Makefile 可以直接编译二进制和制作镜像
    • 添加了 Knative Sevice 的 yaml 文件(service.yaml),你可以直接提交到 Knative 集群中使用
    • 也可以直接使用编译好的镜像 http://registry.cn-hangzhou.aliyuncs.com/knative-sample/websocket-chat:2019-10-15

    Knative Service 配置:

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
     name: websocket-chat
    spec:
     template:
     spec:
     containers:
     - image: registry.cn-hangzhou.aliyuncs.com/knative-sample/websocket-chat:2019-10-15
     ports:
     - name: http1
     containerPort: 8080
    

    代码 clone 下来以后执行 kubectl apply -f service.yaml 把服务部署到 Knative 中,然后直接访问服务地址即可使用。

    查看 ksvc 列表,并获取访问域名。

    └─# kubectl get ksvc
    NAME URL LATESTCREATED LATESTREADY READY REASON
    websocket-chat http://websocket-chat.default.serverless.kuberun.com websocket-chat-7ghc9 websocket-chat-7ghc9 True
    

    现在使用浏览器打开 http://websocket-chat.default.serverless.kuberun.com 即可看到群聊窗口。

    1dd0d43cbe2fbddac0b257bcb5214f58.png

    打开两个窗口,在其中一个窗口发送一条消息,另外一个窗口通过 WebSocket 也收到了这条消息。

    gRPC

    gRPC 不能通过浏览器直接访问,需要通过 client 端和 server 端进行交互。本示例的完整代码放在 https://github.com/knative-sample/grpc-ping-go ,本示例会给一个可以直接使用的镜像,测试 gRPC 服务。

    Knative Service 配置:

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
     name: grpc-ping
    spec:
     template:
     spec:
     containers:
     - image: registry.cn-hangzhou.aliyuncs.com/knative-sample/grpc-ping-go:2019-10-15
     ports:
     - name: h2c
     containerPort: 8080
    

    代码 clone 下来以后执行 kubectl apply -f service.yaml 把服务部署到 Knative 中。

    获取 ksvc 列表和访问域名:

    └─# kubectl get ksvc
    NAME URL LATESTCREATED LATESTREADY READY REASON
    grpc-ping http://grpc-ping.default.serverless.kuberun.com grpc-ping-p2tft Unknown RevisionMissing
    websocket-chat http://websocket-chat.default.serverless.kuberun.com websocket-chat-6hgld websocket-chat-6hgld True
    

    现在我们已经知道 gRPC server 的地址是 http://grpc-ping.default.serverless.kuberun.com,端口是 80,那么我们可以发起测试请求:

    └─# docker run --rm registry.cn-hangzhou.aliyuncs.com/knative-sample/grpc-ping-go:2019-10-15 /client -server_addr="grpc-ping.default.serverless.kuberun.com:80" -insecure
    2019/10/16 11:35:07 Ping got hello - pong
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854794231 +0800 CST m=+73.061909052
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854827273 +0800 CST m=+73.061942072
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854835802 +0800 CST m=+73.061950606
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854842843 +0800 CST m=+73.061957643
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854849211 +0800 CST m=+73.061964012
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854855249 +0800 CST m=+73.061970049
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854861659 +0800 CST m=+73.061976460
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854875071 +0800 CST m=+73.061989873
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854905416 +0800 CST m=+73.062020221
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.85491183 +0800 CST m=+73.062026630
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.85492533 +0800 CST m=+73.062040133
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854932285 +0800 CST m=+73.062047083
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854946977 +0800 CST m=+73.062061782
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854953311 +0800 CST m=+73.062068112
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854966639 +0800 CST m=+73.062081440
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854973939 +0800 CST m=+73.062088739
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854985463 +0800 CST m=+73.062100268
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854993275 +0800 CST m=+73.062108073
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.854999812 +0800 CST m=+73.062114613
    2019/10/16 11:35:07 Got pong 2019-10-16 11:35:07.855012676 +0800 CST m=+73.062127479
    

    小结

    本文通过两个例子分别展示了 WebSocket 和 gRPC 的部署方法:

    • WebSocket 示例通过一个 chat 的方式展示发送和接受消息
    • gRPC 通过启动一个 client 的方式展示 gRPC 远程调用的过程

    作者简介:冬岛,阿里云容器平台工程师,负责阿里云容器平台 Knative 相关工作。了解更多 ACK 详情:https://www.aliyun.com/product/kubernetes

    欢迎加入 Knative 交流群

    c2c851f941657836de62de677501277b.png
    “ 阿里巴巴云原生微信公众号(ID:Alicloudnative)关注微服务、Serverless、容器、Service Mesh等技术领域、聚焦云原生流行技术趋势、云原生大规模的落地实践,做最懂云原生开发者的技术公众号。”
    展开全文
  • chat后缀域名_.chat域名

    2020-12-18 21:10:21
    如何在 Knative 中部署 WebSocket gRPC 服务?作者|冬岛阿里云容器平台工程师导读:虽然说 Knative 默认就支持 WebSocket gRPC,但在使用中会发现,有时想要把自己的 WebSocketgRPC 部署到 Knative 中,...

    如何在 Knative 中部署 WebSocket 和 gRPC 服务?

    作者 | 冬岛  阿里云容器平台工程师

    导读:虽然说 Knative 默认就支持 WebSocket 和 gRPC,但在使用中会发现,有时想要把自己的 WebSocket 或 gRPC 部署到 Knative 中,还是存在各种不顺利。虽然最后排查发现,大多是自己的程序问题或是配置错误导致的。本文分...

    文章

    阿里巴巴云原生小助手

    2019-10-18

    10702浏览量

    Nginx运行Mono Web (ASP.NET)

    Mono Web除了可以使用Apache/mod_mono方式承载运行外,还可以使用Nginx/FastCGI方式运行。

    Nginx配置asp.net更简单方便,用处也多,可以通过FastCGI运行asp.net, php等,通过反向代理做负载均衡,也可运行python web.

    以Ubuntu为...

    文章

    吞吞吐吐的

    2017-10-18

    1475浏览量

    WebSocket 和 gRPC 服务

    本文选自《Knative 云原生应用开发指南》。更多云原生技术资讯可关注阿里巴巴云原生技术圈

    WebSocket

    如果自己手动的配置 Istio Gateway 支持 WebSocket 就需要开启 websocketUpgrade 功能。但使用 Knative Serving 部署其实就自带了...

    文章

    迪科斯彻

    2019-12-23

    675浏览量

    阿里云域名特惠专场,热门域名1元抢购!

    全网低价特惠,顶级域名低至1元,更有96元/年服务器限时抢购!

    广告

    浏览器同源政策及其规避方法

    浏览器安全的基石是"同源政策"(same-origin policy)。很多开发者都知道这一点,但了解得不全面。

    本文详细介绍"同源政策"的各个方面,以及如何规避它。

    一、概述

    1.1 含义

    1995年,同源政策由 Netscape 公司引入浏览器。目前,所有浏览器都实行这个政策。

    最初,它的含义...

    文章

    阮一峰

    2016-06-07

    1303浏览量

    Skype For Business 2015实战系列2:安装活动目录

    Skype For Business 2015实战系列2:安装活动目录

    今天开始我们就正式进入了Skype For Business 2015的部署阶段,在部署开始之前,我们先来看一下我们本次的环境列表:

    计算机名

    IP地址

    角色

    备注

    DC

    192.168.1.2...

    文章

    科技小先锋

    2017-11-14

    903浏览量

    从一道百度面试题到分析输入url到页面返回的过程(或者查询返回过程)

    最近看到一个题目,是当在浏览器中输入一个url后回车,后台发生了什么?比如输入url后,你看到了百度的首页,那么这一切是如何发生的呢?

    这个问题之前、最近、我想以后肯定还会被问到,或者问到这样的题目,如果在百度框里输入查询的字符串开始,是怎么返回你需要的东西呢。

    那这什么个过程呢(这个问题我在之后...

    文章

    atlas2015

    2013-09-06

    2237浏览量

    2018-06-14 第三十九天

    ä¸ã网络的概念和功能

    网络:将若干台计算机使用物理线路或者无线的线路,连接起来的整体。

    分类:网络辐射的范围

    局域网:LAN

    城域网:MAN

    广域网:WAN---www

    网络的功能:1:数据共享;2:信息的传输

    二、IP地址-域名-端口号

    IP地址,在某一个网中,一个唯一的...

    文章

    winniehu

    2018-06-14

    904浏览量

    [IT]当你在浏览器地址栏输入一个URL后回车,将会发生的事情?

    原文:What really happens when you navigate to a URL

    作为一个软件开发者,你一定会对网络应用如何工作有一个完整的层次化的认知,同样这里也包括这些应用所用到的技术:像浏览器,HTTP,HTML,网络服务器,需求处理等等。

    本文将更深入的研究当你输入一个网...

    文章

    sjf0115

    2014-12-29

    1614浏览量

    《Greenplum企业应用实战》一3.2 日志分析

    本节书摘来自华章出版社《Greenplum企业应用实战》一书中的第3章,第3.2节,作者 何勇 陈晓峰,更多章节内容可以访问云栖社区“华章计算机”公众号查看

    3.2 日志分析

    日志分析是网站分析的基础,通过对网站浏览的日志进行分析,可以为网站优化提供数据支持,了解用户群以及用户浏览特性,对改进网站...

    文章

    华章计算机

    2017-07-03

    1384浏览量

    如何用 Linux 拨号上网

    一、Linux 上的 PPP

    Linux 中已经包括了点对点协议PPP,其主体是 pppd ,如果你已经使用过 Windows95 或 NT 的拨号网络,那么你已经具备了 PPP 的基本经验了。在 Windows95 的 PPP 在同 ISP 连接后,视 ISP 情况不同,会自动为 Window...

    文章

    科技小能手

    2017-11-12

    1074浏览量

    【OSS 排查方案-3】OSS 的网络排查

    作者:张医博

    背景

    鉴于之前遇到很多 本地-》OSS ,上传、下载总是慢的情况,或者上传、下载经常出现错误或者异常的问题。根据多个典型案例,抽象出一下排查方案,希望对大家快速定位问题有所帮助。

    一、必要了解信息

    requestID ,一般情况都会有,标识此次 OSS request 到达 OSS...

    文章

    技术课堂的搬运工~

    2020-04-02

    128浏览量

    基于xmpp openfire smack开发之smack类库介绍和使用[2]

    关于Smack编程库,前面我们提到,它是面向Java端的api,主要在PC上使用,利用它我们可以向openfire服务器注册用户,发送消息,并且可以通过监听器获得此用户的应答消息,以及构建聊天室,分组,个人通讯录等等。

    下面我们写几个程序小例子测试一下。

    (1)登录操作

    [java]...

    文章

    一叶飘舟

    2014-11-11

    1336浏览量

    【OSS 排查方案-3】OSS 的网络排查

    背景:鉴于之前遇到很多 本地-》OSS ,上传、下载总是慢的情况,或者上传、下载经常出现错误或者异常的问题。根据多个典型案例,抽象出一下排查方案,希望对大家快速定位问题有所帮助。

    一、必要了解信息

    requestID ,一般情况都会有,标识此次 OSS request 到达 OSS 服务端后返...

    文章

    张医博

    2018-01-28

    4154浏览量

    利用onemanager配合公有云做站和nas(2):在tcb上装om并使它变身实用做站版

    本文关键字:tcb上安装onemanager,onemanger实用做站

    在《利用大容量网盘onedrive配合公有云做你的nas及做站》中,我们初步谈到了使用onemanager配合云函数或云主机做站的投入和尝试,前文说到不能在腾讯cloudbase上安装onemanager,但实际上经过尝试发...

    文章

    minlearn2016

    2020-09-28

    95浏览量

    CCNA培训课总结笔记--路由器基本配置(二)

    实验拓扑图:

    实验内容:

    如何进入路由器的三种模式:

    ⑴用户模式:

    接通路由器后首先进入的就是用户模式了.

    Router>

    Router>?

    Exec commands:

    access-enable    Create a temporary Access-List ent...

    文章

    技术小阿哥

    2017-11-28

    546浏览量

    将 LDAP 目录用于 Samba 认证

    展开全文
  • Swell是一个API开发工具,使开发人员能够测试通过流技术(包括服务器发送事件(SSE),WebSockets,HTTP2,GraphQL和gRPC)提供服务的端点。 入门 访问以下载最新版本。 Swell目前可用于OS X,Linux和Windows。 ...
  • locust压测websocket协议

    2018-11-27 11:40:00
    但是,通过编写触发器request_successrequest_failure事件的自定义客户端,可以轻松扩展到任何基于请求/响应的系统的负载测试。...那么问题来了,如果我想测试其它协议怎么办,比如websocket , grpc...
  • 它为您的下一个网站或API提供了精美表达易于使用的基础。 简单处理程序package main import "github.com/kataras/iris/v12" type ( request struct { Firstname string `json:"firstname"` Lastname string `...
  • debug: false # Shortcut to enable GRPC logging and debug level log_level: info redis_channel: "__anycable__" redis_sentinels: [] production: <<: *default redis_url: "redis://localhost:6379/...
  • AnyCable允许您使用任何WebSocket服务器(以任何语言编写)代替Ruby服务器(例如Faye,Action Cable等)。 AnyCable使用与ActionCable相同的协议,因此您可以使用其而无需任何猴子补丁。 重要说明这是即将发布的v...
  • 什么是Istio?...HTTP,gRPCWebSocket,MongoDBTCP通信的自动负载平衡。 通过丰富的路由规则,重试,故障转移故障注入对流量行为进行细粒度控制。 可配置的策略层API,支持访问控制,...
  • yivgame Yivgame是用go语言基于go-kit编写的一套微服务架构游戏服务器...实现http终结点和websocket终结点 设计实践 微服务架构 通过微服务架构,将传统的游戏服务器替换为不同的微服务 不同的微服务器可以通过grpc
  • 基于混合运行时的框架执行模型,其中由应用程序服务器处理的某些服务(GRPC,队列,WebSocket等)应用程序PHP代码永久保留在内存中(包括抗内存泄漏工具)。 ( , ,)| | | 产品特点 自2013年以来经过战斗测试...
  • Istio简述

    2020-03-09 21:38:15
    istio 是什么 Istio 提供一种简单的方式来为已部署的服务建立网络,该网络具有负载均衡、服务间认证、监控等功能,而不需要对服务的代码做任何改动。... HTTP、gRPCWebSocket TCP 流量的自动负载均...
  • 一....能对HTTP、gRPCWebSocket TCP 流量的自动负载均衡。并通过丰富的路由规则、重试、故障转移故障注入,可以对流量行为进行细粒度控制;支持访问控制、速率限制配额。同时对出入集群入口
  • Ambassador除了支持7层的HTTP,GRPC和Websocket,也可以通过TCPMapping支持4层的TCP连接。 我们先部署一MySQL上游服务,MySQL不对外暴露NodePort,让Ambassador代理对MySQL的访问。 先修改Ambassador的Deployment,...
  • Ambassador设计旨在让Kubernetes服务的开发者可以轻松灵活地配置流量如何路由到该服务,其核心是Mapping资源,支持7层的HTTP,GRPC和Websocket,也可以通过TCPMapping支持4层的TCP连接。Ambassador必须定义一个或多...
  • tinode开发环境搭建

    2020-12-02 15:23:21
    支持websocket, long polling(长轮询), grpc 支持3种数据库:MySQL, Mongodb, rethinkdb 完整的客户端: web, desktop,ios,andorid 后端编程语言:Golang 下载代码 项目在github上的地址 go get 注意 需要梯子 还要...
  • 基于混合运行时的Framework执行模型,其中由Application Server 处理的某些服务(GRPC,Queue,WebSocket等)应用PHP代码永久保留在内存中(包括抗内存泄漏工具)。 ( , ,)| | | | 服务器要求 确保您的...
  • 项目基于SprintBoot 2.1.5、GRPC和Spring AOP,实现了基于Redis的单点登录系统、 基于Netty、Protobuf、WebSocket的直播聊天服务器、基于Spring Web的网页服务器 ...
  • 2、github.com/grpc-ecosystem/grpc-gateway</p> 针对第一个,可以gin web框架相结合,而针对于gf框架,当前似乎无法注入自定义的net.Listener对象。 请评估一下实现的可能性价值。</p><p>该...
  • goim v2.0 Roadmap

    2021-01-12 11:42:50
    - [x] 支持节点连接数权重调度 - [x] 支持节点按区域调度 - [x] 支持指令订阅 - [x] 支持当前连接房间切换 - [x] 支持多房间类型({type}://{room_id}) - [x] 支持房间消息聚合 - [x] 支持按device_...
  • 支持HTTP1,HTTP2,HTTPS,WebSocket,FireBase,MQTT,gRPC,协议缓冲区,MessagePackCBOR作为内置协议。 轻松开发新协议 应用程序渗透测试的功能 同时发送多个数据包以进行数据库事务测试 用自签名证书替换...
  • 支持HTTP1,HTTP2,HTTPS,WebSocket,FireBase,MQTT,gRPC,协议缓冲区,MessagePackCBOR作为内置协议。 轻松开发新协议 应用程序渗透测试的功能 同时发送多个数据包以进行数据库事务测试 用自签名证书替换...
  • :cloud_selector: 云就绪-具有云原生功能的分散式架构即用型:容器化,微服务,扩展,分片,异步IO,REST,gRPCWebSocket。 :jigsaw: 即插即用-通过Pythonic界面易于使用扩展。 :red_heart_selector: 由...
  • |---------------fast-common-grpc-starter grpc整合spring,抽取通用的protobuf文件 |---------------fast-common-custom-mybatis 自定义mybatis |---------------fast-common-tenant 通用多租户底层实现 |----...
  • 2018-04-05 博客Spring Boot系列十六 WebSocket简介spring boot集成简单消息代理对应的git代码为tagv0.19 2018-04-04 修改整个工程结构,将工程由平行目录结构修改为父子目录结构, 可以简化服务的搭建代码的...
  • 扁平化 flatend是一种实验性框架协议,旨在使微服务使用构建更模块化,更简单,... WebSocket支持(即将推出! )。 gRPC支持(即将推出! )。 所有网关均已在 , , , 上进行了广泛的测试。 要求 尽管Flaten

空空如也

空空如也

1 2
收藏数 37
精华内容 14
关键字:

websocket和grpc