草庐IT

layout-engine

全部标签

google-app-engine - 在 Appengine 上将帖子标记为已读

我目前正在设计一个在结构上类似于twitter/jaiku/reddit的应用程序。基本上有点赞和反对的小帖子,它们像reddit一样按分数和时间排序。我已经完成了所有这些工作,但现在我们的要求发生了一些变化,我们需要用户能够将帖子标记为“已读”。这将使该帖子不再显示在该用户的供稿中。我可以为(User,Post)的每个元组使用Read实体对其进行建模,但这需要大量工作才能找到该表中“不”存在的帖子。或者我可以反转这种关系,这样我就可以为每个未读的帖子创建一个实体,这样就可以更容易地找到表中“确实”存在的帖子......但是我需要在这个表中创建一个条目每次发帖时的每个用户。这不会很好地

google-app-engine - datastore.NewQuery() 过滤器规范中的 golang slice 变量?

我正在使用strings.Split()对逗号分隔的字符串进行slice,并且能够提取所需的子slice。friends:=string("9q4kq,9q47y,9q4kp,9q4kj,9q4km,9q47v,9q4kr,9q47z")s:=strings.Split(friends,",")f0:=s[0]当我使用slicef0指定datastore.NewQuery()的Filter组件时,datastore.NewQuery()阻塞(没有返回记录)>:Filter("Field1=",f0)同样的结果使用Filter("Field1=",string(f0))但是,当我对Fil

google-app-engine - GAE Golang 实现一些独特的请求队列?

我有一个GoogleAppEngineGo应用程序正在处理来自第三方服务器的实时通知。这些通知或多或少需要在现场记录和处理。然而,第三方服务器有一个坏习惯,即同时发送两个请求,有时彼此相隔1毫秒-速度太快甚至无法使数据存储/内存缓存写入指示信号量。我想知道是否有一种方法可以巧妙地处理这种并发请求?理想情况下,我希望将它们放在某个堆栈上,这样可以保证一次处理一个项目。在GAEGolang中可以实现这样的功能吗? 最佳答案 为具有较短超时时间的消息的唯一标识符添加内存缓存(实际上并不重要)。如果添加成功,处理消息。

google-app-engine - 为什么测试没有运行? ( Golang ) - goapp 测试 - 错误?

我正在尝试运行GAE测试多个包。我的应用程序(testapp)如下所示:testapp>README.mdpackage1package2每个包都有两个go文件。一个是包本身,另一个是“测试”包。包1$lspackage1package1.gopackage1_test.go包2$lspackage2package2.gopackage2_test.go运行我使用的测试goapptest-v./...输出:warning:buildingout-of-datepackages:github.com/mihai/APIinstallingthesepackageswith'gotest-

google-app-engine - 目前在谷歌应用引擎中获得递增数字的最佳接受方式是什么?

我们有一个迁移到googleappengine的应用程序,所有者要求它继续使用递增数字或其近似值,即如果每个服务器有一个100左右的数字block来分发(分片)).是否有用于此的库,还是它仍然是您自己的库? 最佳答案 自己动手。但这是一个高度不可扩展的要求;在简单情况下(单例计数器数据存储实体),您每秒无法获得超过一个数字。如果您有100的回旋余地,则有一些解决方案,例如分片计数器分配器。 关于google-app-engine-目前在谷歌应用引擎中获得递增数字的最佳接受方式是什么?,我

google-app-engine - Go 在 Google App Engine Datastore 中有很多关系

我是Go的新手,到目前为止我很喜欢它。但是,我这辈子都弄不明白。我有一个简单的包裹,发票。typeInvoicestruct{keydatastore.KeyNamestringCreatedtime.TimeUpdatedtime.TimelineItems[]LineItem}一张发票有多个订单项。typeLineItemstruct{keydatastore.KeyInvoiceKey*datastore.KeyNamestringDescriptionstring}我的包有几个功能。funcNew(cappengine.Context)(iInvoice)func(i*Invo

google-app-engine - GAE (go) 推送队列率未强制执行

我正在尝试让推送队列中的某些任务以大约每秒一次的速度执行。下面是我如何定义我的queue.yamlqueue:-name:defaultrate:1/sbucket_size:1max_concurrent_requests:1我有一个处理程序(用于/tasks/readalerts),它将任务排入队列:t:=taskqueue.NewPOSTTask("/tasks/readalerts",map[string][]string{})if_,err:=taskqueue.Add(context,t,"");err!=nil{context.Errorf("%v",err)}一旦我访问

google-app-engine - App Engine 作为 OAuth2 提供者

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭8年前。Improvethisquestion据我了解,默认情况下,AppEngine应用程序是OAuth1提供程序。有没有办法使用OAuth2,例如使用Google+登录或(移动)chrome.identityAPI,同时仍然利用GAE用户API而不必实现自定义提供程序?如果不可能,有什么替代方案?

google-app-engine - 第三方路由器和静态文件

我在GoogleAppEngine上使用第三方路由器(httprouter),并希望从根目录提供静态文件。由于AppEngine,我需要将第三方路由器附加到/上的DefaultServeMux:router:=httprouter.New()//Doesn'twork,duplicated"/".http.Handle("/",http.FileServer(http.Dir("public")))//NeededbecauseofAppEngine.http.Handle("/",router)问题是这会重复/模式并出现“multipleregistrationsfor/”的pani

google-app-engine - appengine dispatch.yaml 没有找到我的模块?

为什么使用此调度配置会出现以下错误?https://github.com/gertcuykens/gcl-11/tree/master/server%20goMac:servergogert$/Users/gert/Desktop/IdeaProjects/toolbox/serve.shdispatch.yamlwww/www.yamldefaultTraceback(mostrecentcalllast):File"/Users/gert/Documents/sdk-appengine/dev_appserver.py",line82,in_run_file(__file__,gl