草庐IT

主程序

全部标签

docker - 在 Docker 容器中部署 Golang 应用程序

我需要将gorestful应用程序部署到Docker容器中。我的项目结构如下去项目|-bin|-src|||-com.example||||-web_service.go||||-github.com.gorilla.mux|||-...|-Dockerfile我的Dockerfile应该是什么样的?也许我应该从容器中下载库(mux)? 最佳答案 我有一些使用Docker部署Go应用程序的经验。长话短说这就是我的项目在${GOPATH}/src/github.com/githubhandle/project中的样子main.gove

go - SQL 查询在服务器上完成但程序永远不会恢复

我正在使用go-langpostgres驱动程序将我的go脚本连接到redshift。当查询需要5分钟以上的时间才能完成时,我的程序永远无法收回控制权。在redshift-server检查查询后,我确实看到该查询在~7分钟内完成。不知道为什么会这样。我的代码functruncate_and_populate_set_1(db*sql.DB,parameterstring){insert_q:=`...`db:=GetDB()util.ExeQ(db,insert_q)log.Println("Doneaddingrecordstotable")}funcGetDB()*sql.DB{c

java - 带有 Android 应用程序的 Golang 后端

我已经开始创建一个应用程序,这个应用程序的所有前端都使用androidstudio编写。我突然想到用golang创建后端是个好主意,但一开始我遇到了一些问题。如何将我在golang中创建的内容与androidstudio项目连接起来?我如何为CRUD定义golang类? 最佳答案 您需要在后端设置一个服务器,该服务器使用您的前端可以理解的协议(protocol)。如果您只需要crud,那么REST可能是一个不错的选择。根据您的需要,您还可以使用grpc或适合您的用例的任何其他工具。只要客户说的一样,你就没事。

go - pprof 配置文件与 julienschmidtrouter 和基准测试不分析处理程序

我正在尝试分析我编写的Web服务器,但我的pprof不包含有关处理程序函数的任何数据。我正在使用httprouterpackage由julienschmidt编写,并想简单地对我的一个处理程序进行基准测试,然后查看pprof配置文件。对于基准测试,我使用go-wrk我像这样设置我的网络服务器和pprof://Configuretheserverserver:=&http.Server{Addr:":4000",Handler:router,}gofunc(){log.Println(http.ListenAndServe(":6060",nil))}()//Starttheserver

windows - 替换 Windows 中可执行程序的策略

我有一个Windows程序需要从服务器自动更新。它已经能够从服务器传输文件并在加载它们之前更新和验证诸如DLL插件文件之类的东西。但是,这个程序也需要self更新。可能有几种不同的方法可以做到这一点,我从各种在线游戏客户端看到的最明显的方法是创建一个“自动修补程序”,它下载并运行客户端可执行文件。这引入了必须更新自动修补程序的问题,因此如果有更优雅的解决方案,我想听听。我不得不想象有一种方法可以将新的可执行文件下载为临时文件,比方说“client.exe.tmp”,然后启动一个单独的进程等待原始client.exe退出然后在其顶部重命名/复制新文件。有没有人成功地做过这种事情,你用什么

go - 为什么两个 http 处理程序都被调用

这个问题在这里已经有了答案:Whythissimplewebserveriscalledevennumbertimes?(1个回答)HandleFuncbeingcalledtwice(4个答案)http.ListenAndServehandlerfunctionexecutedtwiceonport80[duplicate](2个答案)Runningasimpleserver,butthecounterseemstogoupby3,why?[duplicate](2个答案)关闭5年前。为什么每次我用浏览器访问服务器时都会调用这两个处理程序。我认为根据书本只会调用一个或另一个。我错过了

go - 我有一个在 Kubernetes 上运行的 Golang 应用程序,但是当 pod 死亡时根本没有错误消息。我应该怎么办?

如题。当我运行kubectllogsmy-go-app-deployment-1967699436-yxxn7或kubectllogsmy-go-app-deployment-1967699436-yxxn7-p时,根本没有错误日志打印出来。我该怎么办?是什么导致Golangpod崩溃? 最佳答案 首先,您应该检查pod以了解它死亡的原因以及它是否重新启动。kubectldescribepodmy-go-app-deployment-1967699436-yxxn7在Containers->yourcontainer->LastSt

go - 处理应用程序中的 NULL 值并发送到数据库

我尝试在我的应用程序中使用可为null的变量,并将其发送到包含默认为null的列的数据库。这是一个示例结构://LocationtypetypeLocationstruct{IDint`schema:"id"`Title*string`schema:"title"`}标题定义为*string,因为它可能为null(例如,没有用户输入或客户端应用程序将其作为null发送)。这是我接收表单数据的函数://JSONLocationCreatefuncfunc(a*App)JSONLocationCreate(whttp.ResponseWriter,r*http.Request){r.Par

database - Postgres 驱动程序在 go 中找不到表

非常奇怪但很常见的错误。关系“用户”不存在。我知道你在说什么-之前有人问过这个问题!它已经成功了,但是和我一起工作,因为我正在做一堆检查,但它仍然没有通过。首先,这是迁移:CREATETABLEusers(idserialPRIMARYKEY,obfuscated_idVARCHAR(128)NOTNULLUNIQUE,emailVARCHAR(128)NOTNULLUNIQUE,encrypted_passwordVARCHAR(128)NOTNULL,created_atTIMESTAMP,updated_atTIMESTAMP,activeBOOLEANDEFAULTTRUE);

go - 如何让多个对象从一个go子程序中获取数据

我有一个案例,我想启动一个go子例程,它会定期从源中获取一些数据。如果调用失败,它将存储错误直到下一次调用成功。现在代码中有几个实例,其中一个实例将访问由go子例程提取的数据。我怎样才能实现类似的东西?更新我睡了一觉,喝了咖啡,我想我需要使用java风格的语义更连贯地重新表述这个问题。我想出了一个基本的单例模式,它返回一个接口(interface)实现,它在一个永远循环的内部运行一个go子例程(让我们暂时搁置永远循环的主要错误)。问题是这个接口(interface)实现正被多个线程访问,以获取go子例程收集的数据。本质上,子程序每10分钟提取一次数据,然后无限次地请求数据。我怎样才能实