google-app-engine - 如何使用 Go 运行时在 App Engine 上的实例之间传递套接字?

标签 google-app-engine go

Python 运行时通过 pickling the connection 允许它.是否有类似的方式在经典 App Engine 上使用 Go 运行时与 google.golang.org/appengine/socket 共享套接字?

最佳答案

描述符未在 Go API 中公开:https://github.com/golang/appengine/blob/master/socket/socket_classic.go#L152

type Conn struct {
    ctx    context.Context
    desc   string
    offset int64

    prot          pb.CreateSocketRequest_SocketProtocol
    local, remote *pb.AddressPort

    readDeadline, writeDeadline time.Time // optional
}

desc 是您在另一端重建套接字所需要的。

应该可以在 GitHub 上 fork 这个库,更改 conn 结构以公开所需的 desc 属性,然后将导入更改为 github.com/YOURUSERNAME/appengine/socket 而不是 appengine/socket

这需要大量工作,所以如果您能想出不同的方法来解决这个问题,您可能会过得更好。尽管如此,这应该是可能的。

关于google-app-engine - 如何使用 Go 运行时在 App Engine 上的实例之间传递套接字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34316147/

相关文章:

google-app-engine - gcloud app deploy - 更新服务默认值失败,代码为 13 超过实例限制的配额,以及 401 unathorized

java - GAE-开发-服务器 : How to exclude part of the code from beeing checked for restricted classes?

go - Go 类型的方法集在内存中是如何分配的?

带有私有(private) gitlab (ssh) 的 Goland 模块

json - golang websocket.JSON。接收无效字符 'q'寻找值的开始

json - 如何使用标签在 Go 中解码/编码 JSON?

go - 在 Golang 当前演示文稿中编辑 .play 代码部分

google-app-engine - CRMint 部署问题 - IndexError : tuple index out of range

google-app-engine - 访问服务器后,浏览器仍然使用缓存版本

python - 解析 POST json 消息 Django/GAE 的问题