草庐IT

gae-quotas

全部标签

google-app-engine - GAE Golang - 如何将后端配置为每 X 秒执行一次任务?

在我的GoogleAppEngineGo应用程序中,我需要每5-10秒执行一次任务。我知道使用标准的Cron是行不通的,因为它只能每分钟安排一次任务。同样,在这样的线程中休眠可能不是最佳选择。据我所知,我需要使用一些后端实例来执行这些任务。如何配置我的应用程序以及时且资源高效的方式处理此类任务?我是只是全天候24/7运行后端并在我需要做某事之前打勾,还是有更有效的方法来执行任务,然后安排另一个任务在5-10秒内运行? 最佳答案 这个问题突出了处理效率和服务质量(计时精度)之间的紧张关系。最有效的方法是TaskQueue(推送队列样式

google-app-engine - GAE/去 : datastore iterator too slow

在GAE/Go中迭代数据存储查询结果非常慢。q:=datastore.NewQuery("MyStruct")gaeLog.Infof(ctx,"run")//(1)it:=client.Run(ctx,q)list:=make([]MyStruct,0,10000)gaeLog.Infof(ctx,"startmapping")//(2)for{varmMyStruct_,err:=it.Next(&m)iferr==iterator.Done{break}iferr!=nil{gaeLog.Errorf(ctx,"datastorereaderror:%s",err.Error()

google-app-engine - GAE/去 : Namespace not working

我正在尝试使用GAE/Go将数据存储记录存储在命名空间MyNameSpace中,但下面的代码不起作用。import("cloud.google.com/go/datastore""github.com/gin-gonic/gin""google.golang.org/appengine")funcSave(c*gin.Context,list[]MyStruct)([]MyStruct,error){r:=c.Requestctx:=appengine.NewContext(r)ctx_with_namespace,err:=appengine.Namespace(ctx,"MyNam

google-app-engine - 在 GAE/Go 中获取结构的大小

我想在GAE/Go中获取结构的大小。我读了this发布并编写如下代码。import("reflect""unsafe")funcGetSize(Tinterface{}){size:=reflect.TypeOf(T).Size()returnint((*int)(unsafe.Pointer(size)))}但这段代码不起作用,因为GAE不允许导入unsafe。我如何在GAE/Go中执行此操作? 最佳答案 您提出的解决方案不是有效代码,它有多个错误。例如GetSize()没有结果类型,所以你不能返回任何东西。接下来,您返回的表达式

google-app-engine - Go 中 GAE Google App Engine 的最佳前端

这是GAE应用的最佳前端解决方案。用Go开发?最好的:=问题是关于选择一个与GAE很好地融合的解决方案,例如,如果我在Java中使用GAE,我会选择GWT,我想知道其他人如何将GAE与Go结合使用;为什么这个问题:=我问这个的原因是我想知道,今天,当我必须为前端选择一些东西时,在设计一个使用GAE和go的Web应用程序时是否有一个可取的路径可循......而且我'在深入研究无用的“重新发明车轮编码模式”之前,我试图弄清楚。 最佳答案 可以看看Gorillawebtoolkit,在设计时就考虑到了AppEngine。

html - GAE GO - html 模板和数据安全

通过使用htmltemplates显示网页时在GoogleAppEngineGo应用程序中,传递的数据和/或原始模板是否曾经离开AppEngine,或者只是最终的html输出?例如,如果我有一个类typeFoostruct{PublicstringSecretstring}和一个只使用{{.Public}}参数的模板,{{.Secret}}参数会离开App吗?类似地,如果通过使用{{if.Secret}}存在{{.Secret}}参数,则存在显示某些特殊数据的模板...{{end}},当{{.Secret}}参数不存在时,有没有办法以任何方式访问那部分html?

google-app-engine - Golang GAE - 更改数据存储结构中的变量名称

我正在编写GoogleAppsEngineGo应用程序,我想更改存储在数据存储区中的结构内的变量名称。假设我有一个结构:typeAAstruct{AstringBBstring}并且想把BB改成B。如果我尝试将BB更改为B,当数据存储尝试将存储的BB值分配给新结构AA没有那个变量。我可以添加B并仍然保留BB,但这样结构就会开始变得困惑。如何巧妙地更改GAEGo数据存储中的变量结构,而无需诉诸临时复制整个数据库并删除大量数据? 最佳答案 您可以让您的AA实现PropertyLoadSaver,如theDatastoredocs中所述。

google-app-engine - 我应该为 GAE 中的 Go 使用哪个日志记录库?

我找到了两种GAE的go库:“google.golang.org/appengine/log”“cloud.google.com/go/logging”我应该使用哪一个?顺便说一下,我在我的应用程序中同时使用了两个日志记录库。在本地开发模式下,我可以看到这样的日志。2019/01/0806:57:34INFO:Searchkeyword="test"idOnly=bool2019/01/0806:57:34INFO:Search:"test"但是当我部署到生产GAE时,我看不到任何日志。不管用stackdriverbyresource.type="gae_app"resource.la

google-cloud-datastore - Go with GAE 将对象保存到数据存储区。取回时,该对象的成员为空

我正在尝试使用GAE学习Go。我创建了2个处理程序。一个用于将对象保存到数据存储区,另一个用于检索它并输出到屏幕。问题是当我从数据存储中检索UserAccount对象时,对象中的每个值都消失了。如有任何帮助,我们将不胜感激。输出:账户数:2val:core.UserAccount{idString:"",deviceId:""}val:core.UserAccount{idString:"",deviceId:""}typeUserAccountstruct{idStringstringdeviceIdstring}funccreate_account(whttp.ResponseWr

javascript - 在 GAE 上的 Go 中显示由 html/template 产生的换行符

我的应用程序是用Go编写的。应用程序的页面从HTML文本区域接收用户数据,该文本区域作为字符串数据保存到GoogleAppEngine数据存储区。然后,在应用程序的另一个页面上,它需要以用户在HTML文本区域中键入的格式显示数据,或者至少在用户在HTML文本字段中键入数据时按下回车键时保留换行符。我尝试使用标记以显示用户在文本字段中输入的保留换行符,效果很好。但是,我发现有一个双标签\t\t在使用时插入到字符串的开头我可以使用Javascript删除双标签的标签。我想保留用户在文本字段中输入的换行符是使用javascript替换函数替换所有\r\n,\n和\r至但是,它没有成功。似乎G