草庐IT

无需注册

全部标签

go - 无法通过golang删除注册表项

我在golang中写了一段代码来从注册表项中删除一个键,我的代码如下。k,err:=registry.OpenKey(registry.LOCAL_MACHINE,`SYSTEM\CurrentControlSet\services`,registry.ALL_ACCESS)iferr!=nil{log.Println("ERROR::Erroringettingtheregistryvalues:",err)}deferk.Close()err=k.DeleteValue("MyKey")iferr!=nil{log.Println("ERROR::Erroroccuredwhile

go - Go Server无需重启的无缝补丁部署

我很好奇是否有任何解决方案可以部署go服务器而无需将其关闭并重新启动。我知道ASP.Net和PHP等流行的解决方案可以为用户session无缝执行此操作。无状态session会处理这个问题吗? 最佳答案 即使是最简单的应用程序服务器也可以通过引入请求路由器(例如nginx)来实现这种无缝部署。或haproxy.这两个路由器都允许您将请求转发到不同的服务(称为反向代理),并在不断开连接的情况下重新加载它们的配置。举个例子:将您的路由器配置为监听0.0.0.0.80并将这些请求转发到127.0.0.1:5001。在127.0.0.1:5

go - 编写像 node.js 应用程序这样的 go 程序而无需 go 路径

在学习了go的基础知识后,我意识到我需要这个根gocode目录导出为GOPATH,我更愿意简单地拥有一个项目文件夹,我可以在其中安装包,并从中运行我的go代码,这真的是他们编程的方式吗……谁喜欢这个?我查看了vendor文件夹选项,但这仍然意味着需要一个gocodeGOPATH导出并且vendor目录需要位于该源文件夹结构中。我希望我的项目成为根,仅此而已。golang怎么可能做不到呢?或者是吗? 最佳答案 是的。你需要设置你的GOPATH,你所有的go-code、-binaries、-packages等都将放在这个文件夹中。您可以

windows - golang 无法枚举注册表项的子项

我正在尝试查看整个Windows注册表以查找一些键和值。有一些键不能用registry.READ权限打开,所以我要读取值和键,我必须使用registry.QUERY_VALUE和registry.ENUMERATE_SUB_KEYS权限;但是在使用具有此类权限的k.OpenKey()(例如HKEY_LOCAL_MACHINE\SOFTWARE)成功打开key后,k.ReadSubKeyNames()函数在两种情况下都会出错:ReadSubKeyNames:HKEY_LOCAL_MACHINE\SOFTWAREAccessisdenied.当然,实际注册表项权限QUERY_VALUE和E

go - jsonrpc 服务器接受请求的小写方法名称(用于大写注册服务)

我正在尝试编写一个jsonrpc服务器,它将接受请求的小写方法名称,例如Arith.multiply,并将它们正确地路由到相应的大写方法,例如Arith.Multiply。这可能吗?附言它是用于测试的生产服务器的轻量级克隆,API是固定的,包括小写的方法名称,所以我无法将请求的方法名称更改为大写。packagemainimport("log""net/http""github.com/gorilla/mux""github.com/gorilla/rpc""github.com/gorilla/rpc/json")typeArgsstruct{A,Bint}typeArithintty

json - 解析大型单行 JSON 而无需将整个文件加载到内存中

这个问题在这里已经有了答案:HowcanIreadjsonobjectsoneatatimefromastreamcontainingajsonarraywithoutloadingthewholearrayintomemory?(1个回答)DecodeJSONasitisstillstreaminginvianet/http(2个答案)关闭3年前。我正在尝试从S3CloudTrail日志中解析JSON,一些文件在解压缩后是一行40MB的JSON。我试图避免将所有这些加载到内存中-有没有一种方法可以更正确地逐一读取条目,而不是将整个blob加载到内存中?我是新手,所以我现在唯一的代码是

go - docker注册的驱动在源码哪里初始化?

我正在尝试理解Docker的源代码,同时也在学习Go。Docker的一个让我感到困惑的区域是docker/daemon/graphdriver/driver.go内部在第75行,访问strings映射的name属性以获取类型为InitFunc的函数。但是,我似乎无法找到使用已注册驱动器初始化drivers的位置,似乎需要在某处完成。 最佳答案 在line62在init()中:funcinit(){drivers=make(map[string]InitFunc)}然后在依赖于它的每个包中,他们调用graphdriver.Regist

go - exec.Command 没有注册来自 Go 自己的 pprof 工具的错误

这是我的代码:cmd:=exec.Command("go","tool","pprof","-dot","-lines","http://google.com")out,err:=cmd.Output()iferr!=nil{panic(err)}println(string(out))当我在控制台中运行完全相同的命令时,我看到:$gotoolpprof-dot-lineshttp://google.comFetchingprofilefromhttp://google.com/profilezPleasewait...(30s)serverresponse:404NotFound但是

go - 使用 aws-sdk-go 将对象上传到 AWS S3 而无需创建文件

我正在尝试使用golangsdk将对象上传到AWSS3,而无需在我的系统中创建文件(尝试仅上传字符串)。但我很难做到这一点。谁能举例说明如何在无需创建文件的情况下上传到AWSS3?关于如何上传文件的AWS示例://CreatesaS3Bucketintheregionconfiguredinthesharedconfig//orAWS_REGIONenvironmentvariable.////Usage://goruns3_upload_object.goBUCKET_NAMEFILENAMEfuncmain(){iflen(os.Args)!=3{exitErrorf("bucke

go - 提供者未注册交互

我正在使用PactGoimplementation尝试契约(Contract)测试。我做了一个无法正常工作的提供商测试,因为我需要模拟我的服务对Twilio的请求。我为我的消费者和该提供者之间的契约(Contract)创建了一个Pact对象,然后为我的提供者和Twilio之间的契约(Contract)创建了另一个名为twilioPact的对象。我已将POST的交互添加到Twilio端点,但在pact.log中我没有看到它已注册。我的测试正确发出了请求,但没有为它注册交互,所以我从模拟服务器收到500错误。有没有人有将Pact与同时也是“消费者”的“提供者”一起使用的经验?编辑:在与Ma