re: 有谁 在 Google APP Engine 成功部署过 APP么

92 views
Skip to first unread message

Alex Xu

unread,
May 18, 2012, 8:01:34 AM5/18/12
to golang...@googlegroups.com
my sample fyi



_Joe_
网络回复已停用
对帖子的更多操作

南海

unread,
May 20, 2012, 10:28:32 PM5/20/12
to golang...@googlegroups.com
hello world算不算?

2012/5/18 Alex Xu <justa...@googlemail.com>

--
官网: http://golang-china.org/
IRC: irc.freenode.net #golang-china
@golangchina

lake liu

unread,
May 21, 2012, 9:43:37 PM5/21/12
to golang...@googlegroups.com
我也只写了个hello world. 而且我自己绑定的域名好像不起作用。
我是基于windowns 平台的,用Python来上传

2012/5/21 南海 <viney...@gmail.com>



--
Lake.Liu

水蓝祝福

unread,
May 22, 2012, 5:48:21 AM5/22/12
to golang...@googlegroups.com
win上可以本地调试吗?

Zoom.Quiet

unread,
May 22, 2012, 5:55:31 AM5/22/12
to golang...@googlegroups.com
在 2012年5月22日 下午5:48,水蓝祝福 <oti...@gmail.com>写道:
>
> win上可以本地调试吗?
>
- 当然可以的! SDK 内置了本地的完备运行环境
- 俺的体验总结: 42分钟乱入 GAE(with go1) !-) — chaos2go1 1.0.120510 documentation
http://readthedocs.org/docs/chaos2go1/en/latest/

>
> 在 2012年5月22日 上午9:43,lake liu <liujian...@gmail.com>写道:
>
>> 我也只写了个hello world. 而且我自己绑定的域名好像不起作用。
>> 我是基于windowns 平台的,用Python来上传
>>
>>
>> 2012/5/21 南海 <viney...@gmail.com>
>>>
>>> hello world算不算?
>>>
>>>
>>> 2012/5/18 Alex Xu <justa...@googlemail.com>
>>>>
>>>> my sample fyi
>>>> http://blog.sina.com.cn/s/blog_5385acc20100xvjv.html
>>>>
>>>>
>>>>
>>>> _Joe_

>>>> 网络回复已停用


>>>>
>>>> --
>>>> 官网: http://golang-china.org/
>>>> IRC: irc.freenode.net #golang-china
>>>> @golangchina
>>>
>>>
>>> --
>>> 官网: http://golang-china.org/
>>> IRC: irc.freenode.net #golang-china
>>> @golangchina
>>
>>
>>
>>
>> --
>> Lake.Liu
>>
>> --
>> 官网: http://golang-china.org/
>> IRC: irc.freenode.net #golang-china
>> @golangchina
>
>
> --
> 官网: http://golang-china.org/
> IRC: irc.freenode.net #golang-china
> @golangchina


--
人生苦短, Pythonic! 冗余不做,日子甭过!备份不做,十恶不赦!
俺: http://about.me/zoom.quiet
文字协议: http://creativecommons.org/licenses/by-sa/2.5/cn/

newblue

unread,
May 25, 2012, 8:50:31 PM5/25/12
to golang...@googlegroups.com

我写的一个社区应用

go gae

http://www.makechan.com/

newblue

unread,
May 25, 2012, 8:50:48 PM5/25/12
to golang...@googlegroups.com

Alex Xu

unread,
May 25, 2012, 10:32:00 PM5/25/12
to golang...@googlegroups.com
Test

Alex Xu

unread,
May 25, 2012, 10:33:30 PM5/25/12
to golang...@googlegroups.com
newblue,这是什么东东

newblue

unread,
May 29, 2012, 8:21:22 AM5/29/12
to golang...@googlegroups.com

试试,好过问我

http://www.makechan.com/~newblue

xing

unread,
May 29, 2012, 9:12:39 AM5/29/12
to golang...@googlegroups.com
锟斤拷锟斤拷锟斤拷go_spec锟叫碉拷原锟斤拷:
If a package has imports, the imported packages are initialized before initializing the package itself. If multiple packages import a package P, P will be initialized only once.
The importing of packages, by construction, guarantees that there can be no cyclic dependencies in initialization.


锟斤拷锟斤拷package A锟斤拷锟斤拷锟斤拷package B, 锟斤拷B锟斤拷A之前锟斤拷始锟斤拷. 锟斤拷锟絧ackage B也锟斤拷锟斤拷锟斤拷package A, 锟斤拷A锟斤拷B前锟斤拷始锟斤拷...
为什么go_spec锟斤拷指锟斤拷package锟斤拷始锟斤拷锟斤拷锟斤拷胁锟斤拷锟斤拷锟斤拷循锟斤拷锟斤拷锟斤拷锟斤拷 锟斤拷锟斤拷锟斤拷牟锟斤拷锟斤拷锟斤拷循锟斤拷锟斤拷锟斤拷, 锟斤拷么package A锟斤拷B锟斤拷锟斤拷锟侥革拷锟饺斤拷锟叫筹拷始锟斤拷锟斤拷




Oling Cat

unread,
May 29, 2012, 9:18:49 AM5/29/12
to golang...@googlegroups.com
直接引用一段:
在一个包中,包级变量或常量值会根据数据依赖的顺序初始化或决定:若 A 的初始化器依赖于 B 的值,则A 将在 B 之后设置。若这种依赖形成一个循环, 则会产生一个错误。依赖分析根据词法完成:若 A 的值涉及到 B, 或包含一个初始化器涉及到 B 的值,或递归地涉及一个涉及到 B 的函数,则 A 依赖于 B。若两项并不互相依赖,它们将按照其出现在源里的顺序初始化。 在按包的依赖分析结束后,若 A 的初始化器调用另一个引用了 B 的包中定义的函数,它会产生不确定的结果。 
原文:It is an error if such dependencies form a cycle.  
 
--
Hello! This is Oling Cat!



2012/5/29 xing <xing.zhang....@gmail.com>
先引用go_spec中的原文:

If a package has imports, the imported packages are initialized before initializing the package itself. If multiple packages import a package P, P will be initialized only once.
The importing of packages, by construction, guarantees that there can be no cyclic dependencies in initialization.


假设package A导入了package B, 则B在A之前初始化. 如果package B也导入了package A, 则A在B前初始化...
为什么go_spec中指出package初始化过程中不会出现循环依赖? 就算真的不会出现循环依赖, 那么package A和B到底哪个先进行初始化?




minux

unread,
May 29, 2012, 9:19:56 AM5/29/12
to golang...@googlegroups.com


2012/5/29 xing <xing.zhang....@gmail.com>
先引用go_spec中的原文:

If a package has imports, the imported packages are initialized before initializing the package itself. If multiple packages import a package P, P will be initialized only once.
The importing of packages, by construction, guarantees that there can be no cyclic dependencies in initialization.


假设package A导入了package B, 则B在A之前初始化. 如果package B也导入了package A, 则A在B前初始化...
为什么go_spec中指出package初始化过程中不会出现循环依赖? 就算真的不会出现循环依赖, 那么package A和B到底哪个先进行初始化?
这种情况gc直接报编译错误。

Xing Zhang

unread,
May 29, 2012, 9:27:21 AM5/29/12
to golang...@googlegroups.com
你说的是package内部的变量/常量的循环依赖, 而我指的是package之间的循环依赖. 

Oling Cat

unread,
May 29, 2012, 9:28:50 AM5/29/12
to golang...@googlegroups.com
如果包之间相互依赖应该也直接报错,你可以试试。
--
Hello! This is Oling Cat!



2012/5/29 Xing Zhang <xing.zhang....@gmail.com>

Xing Zhang

unread,
May 29, 2012, 9:41:13 AM5/29/12
to golang...@googlegroups.com
我发现我做不了这个实验, 因为在如果package A导入了package B, 则编译package A的时候package B必须已经编译完成. 所以A和B之间互相依赖的情况不可能发生. 这或许就是go_spec的原意:
The importing of packages, by construction, guarantees that there can be no cyclic dependencies in initialization.
无论如何, 多谢@Oling Cat的回复了。

minux

unread,
May 29, 2012, 9:29:09 AM5/29/12
to golang...@googlegroups.com
2012/5/29 Xing Zhang <xing.zhang....@gmail.com>
你说的是package内部的变量/常量的循环依赖, 而我指的是package之间的循环依赖. 
你举个例子吧,注意先试试能不能编译通过哦~ 

暴雨不在明天

unread,
May 29, 2012, 7:19:48 PM5/29/12
to golang...@googlegroups.com
��ѭ������û���κ����Ⱑ.
��Ϊ��a����b,b����c,c����aʱ,ʵ���ϻ����������,
package (
a
b
c
)
��ʱ�ȵ���a,Ȼ�����a,������Ҫb, ����b,����b,����c,���ʱ��c����a,��a���ᵼ��,����û���κ������;
��һ�ֽ���������ֱ�ӵ���a,b,cȻ�����ν���������,��������ô����ѭ����
------------
�� 2012��05��29�� 21:41, Xing Zhang �:
�ҷ��������������ʵ��, ��Ϊ�����package A������package B, �����package A��ʱ��package B�����Ѿ��������. ����A��B֮�以����������������ܷ���. ��������go_spec��ԭ��:
The importing of packages, by construction, guarantees that there can be no cyclic dependencies in initialization.
�������, ��л@Oling Cat�Ļظ��ˡ�
�� 2012��5��29�� ����9:28��Oling Cat <olin...@gmail.com>д ����
����֮���໥����Ӧ��Ҳֱ�ӱ��?��������ԡ�
--
Hello! This is Oling Cat!
--
����: http://golang-china.org/
IRC: irc.freenode.net #golang-china
@golangchina

minux

unread,
May 30, 2012, 4:04:27 AM5/30/12
to golang...@googlegroups.com

2012/5/30 暴雨不在明天 <byb...@gmail.com>
包循环依赖没有任何问题啊.
因为当a依赖b,b依赖c,c依赖a时,实质上会是这种情况,

package (
a
b
c
)
这时先导入a,然后解析a,发现需要b, 导入b,解析b,导入c,这个时候c依赖a,但a己结导入,所以没有任何问题的;
另一种解析方法是直接导入a,b,c然后依次解析并导入,但不管怎么样都不会循环
没明白这是啥意思。a依赖b,b依赖c,c依赖a的时候根本编译不了的。
因为go tool会做topology sort来获取包编译顺序,任何循环依赖根本没办法通过go tool的检查的。
就算你手工编译也不行,前面已经有人说了,gc编译一个包的时候要读取所有它依赖的包的编译结果。

chai2010

unread,
May 30, 2012, 5:07:11 AM5/30/12
to golang...@googlegroups.com
我感觉是可以的.
比如:
第一个版本, abc独立, 编译后安装到gopath.
第二个版本, a依赖b, 重新编译安装a.
第三个版本, b依赖c, 重新编译安装b
...


2012/5/30 minux <minu...@gmail.com>

暴雨不在明天

unread,
May 30, 2012, 11:13:13 AM5/30/12
to golang...@googlegroups.com
�Ż�����������߼�����(��php)���������Ǻܳ���İ�..ľ������...
������ν������Ҳ�Ƿֲ�ִ�е�,����php���������,�໥�������ļ�������,Ȼ���ٽ�����Ӧ�ij�ʷ��,go�����ʷ��Ҳ����Ӧ�����Ƶİ�,�� �������.
------------
�� 2012��05��30�� 17:07, chai2010 �:
�Ҹо��ǿ��Ե�.
����:
��һ���汾, abc����, �����װ��gopath.
�ڶ����汾, a����b, ���±��밲װa.
������汾, b����c, ���±��밲װb
...


2012/5/30 minux <minu...@gmail.com>

2012/5/30 ���겻������ <byb...@gmail.com>
��ѭ������û���κ����Ⱑ.
��Ϊ��a����b,b����c,c����aʱ,ʵ���ϻ����������,
package (
a
b
c
)
��ʱ�ȵ���a,Ȼ�����a,������Ҫb, ����b,����b,����c,���ʱ��c����a,��a���ᵼ��,����û���κ������;
��һ�ֽ���������ֱ�ӵ���a,b,cȻ�����ν���������,��������ô����ѭ��
û��������ɶ��˼��a����b��b����c��c����a��ʱ�����벻�˵ġ�
��Ϊgo tool����topology sort����ȡ�����˳���κ�ѭ��������û�취ͨ��go tool�ļ��ġ�
�������ֹ�����Ҳ���У�ǰ���Ѿ�����˵�ˣ�gc����һ�����ʱ��Ҫ��ȡ�����������İ�ı�����
--
����: http://golang-china.org/
IRC: irc.freenode.net #golang-china
@golangchina
--
����: http://golang-china.org/
IRC: irc.freenode.net #golang-china
@golangchina

mon...@gmail.com

unread,
May 30, 2012, 11:46:49 PM5/30/12
to golang...@googlegroups.com
暴雨不在明天 wrote, On 05/30/2012 11:13 AM:
> 偱环依赖在其它高级语言(如php)中这中这是很常见的啊..木有问题...
> 另外所谓依赖它也是分步执行的,比如php中正常的做法,相互依赖的文件都导入,然
> 后再进行相应的初史化,go里面初史化也有相应的限制的吧,萌 有问题的.

0. 世界上有些问题,可以通过直接观测解决。比如我的笔记本是不是索尼的
1. 世界上还有些问题,可以通过事先设置的公理和规则,通过逻辑解决。比如停
机问题
2. 世界上还有些问题,可以通过实验证伪的方式,部分地在短期内得到缓解。比
如万有引力问题
3. 世界上还有些问题,永远会争吵下去,比如人生的意义是什么
4. 世界上还有些问题,永远会有人去争吵,但确实没什么意义。比如争论我究竟
爱吃西餐还是中餐。

go是否支持循环依赖的问题,属于第0类,结果是:

$ go build
can't load package: package etc/testcyclicdep/pkga
imports etc/testcyclicdep/pkgb
imports etc/testcyclicdep/pkga: import loop
package etc/testcyclicdep/pkga
imports etc/testcyclicdep/pkgb
imports etc/testcyclicdep/pkga: import loop

go以何种方式支持循环依赖的问题,属于第1类问题。答案minux给出了:拓扑排序
go为什么不支持循环依赖的问题,属于第3类问题
go该不该支持循环依赖的问题,属于第4类问题

-Monnand

> ------------
> 于 2012年05月30日 17:07, chai2010 写道:
>> 我感觉是可以的.
>> 比如:
>> 第一个版本, abc独立, 编译后安装到gopath.
>> 第二个版本, a依赖b, 重新编译安装a.
>> 第三个版本, b依赖c, 重新编译安装b
>> ...
>>
>>
>> 2012/5/30 minux <minu...@gmail.com <mailto:minu...@gmail.com>>
>>
>>
>> 2012/5/30 暴雨不在明天 <byb...@gmail.com <mailto:byb...@gmail.com>>
>>
>> 包循环依赖没有任何问题啊.
>> 因为当a依赖b,b依赖c,c依赖a时,实质上会是这种情况,
>> package (
>> a
>> b
>> c
>> )
>> 这时先导入a,然后解析a,发现需要b, 导入b,解析b,导入c,这个时候c依
>> 赖a,但a己结导入,所以没有任何问题的;
>> 另一种解析方法是直接导入a,b,c然后依次解析并导入,但不管怎么样都
>> 不会循环
>>
>> 没明白这是啥意思。a依赖b,b依赖c,c依赖a的时候根本编译不了的。
>> 因为go tool会做topology sort来获取包编译顺序,任何循环依赖根本没办
>> 法通过go tool的检查的。
>> 就算你手工编译也不行,前面已经有人说了,gc编译一个包的时候要读取所
>> 有它依赖的包的编译结果。
>> --
>> 官网: http://golang-china.org/
>> IRC: irc.freenode.net <http://irc.freenode.net> #golang-china
>> @golangchina
>>
>>
>>
>>
>> --
>> chaishushan
>> http://chaishushan.blog.163.com/
>> http://chai2010.bitbucket.org/
>> http://golang-china.org
>>
>>
>> --
>> 官网: http://golang-china.org/
>> IRC: irc.freenode.net #golang-china
>> @golangchina
>
> --
> 官网: http://golang-china.org/
> IRC: irc.freenode.net #golang-china
> @golangchina

Oling Cat

unread,
May 31, 2012, 12:46:24 AM5/31/12
to golang...@googlegroups.com
0.0这个..
表示仰视ing....
--
Hello! This is Oling Cat!



fango

unread,
May 31, 2012, 2:02:52 AM5/31/12
to golang...@googlegroups.com
其实每个人都会走过这个求解不解和解放的过程。按《银河系漫游指南》通俗的说法,就是这三个阶段:

1。这怎么吃
2。干嘛要吃
3。这回去哪吃

fango

暴雨不在明天

unread,
May 31, 2012, 8:33:58 AM5/31/12
to golang...@googlegroups.com
Ĥ������,����Ļظ�.


�� 2012��05��31�� 14:02, fango �:
> ��ʵÿ���˶����߹������ⲻ��ͽ�ŵĹ�̡��������ϵ����ָ�ϡ�ͨ�׵�˵��������������׶Σ�
>
> 1������ô��
> 2������Ҫ��
> 3�����ȥ�ij�
>
> fango
>

laputa

unread,
May 31, 2012, 9:51:40 AM5/31/12
to golang...@googlegroups.com
哈哈

xing

unread,
May 31, 2012, 10:17:24 PM5/31/12
to golang...@googlegroups.com
����ڿ�monnand ��Դ��uniqush��Ŀ.
monnand��push���ɺܶ�Դ�ļ����, �ҿ���һ��function����package level�ı���/������ʱ��, ���Dz�֪��������ٶ�λ������ĵط�. �������, �о�˼·���DZ����, �dz��IJ�˳��.
��λ�����ʲô�õķ�����

Oling Cat

unread,
May 31, 2012, 10:23:20 PM5/31/12
to golang...@googlegroups.com
此时应该考虑用IDE看源码,当然如果会Emacs或Vim的话配合cscope和ctags方便些。
--
Hello! This is Oling Cat!



2012/6/1 xing <xing.zhang....@gmail.com>
最近在看monnand 开源的uniqush项目.
monnand的push包由很多源文件组成, 我看到一个function或者package level的变量/常量的时候, 总是不知道怎样快速定位到定义的地方. 如此下来, 感觉思路总是被打断, 非常的不顺利.
各位大大有什么好的方法?

王学富

unread,
May 31, 2012, 10:30:55 PM5/31/12
to golang...@googlegroups.com
推荐使用golangide,在类视图中定位。
godoc也可以定位到源码。

zhang xinli

unread,
Jun 1, 2012, 12:29:38 AM6/1/12
to golang...@googlegroups.com
vim + ctags
张新礼

mon...@gmail.com

unread,
Jun 1, 2012, 1:19:03 AM6/1/12
to golang...@googlegroups.com
xing wrote, On 05/31/2012 10:17 PM:
> 最近在看monnand <https://github.com/monnand> 开源的uniqush项目.
> monnand的push包由很多源文件组成, 我看到一个function或者package level的变
> 量/常量的时候, 总是不知道怎样快速定位到定义的地方. 如此下来, 感觉思路总
> 是被打断, 非常的不顺利.
> 各位大大有什么好的方法?

先得感谢这么捧场。

这个问题确实存在。一方面,因为Go本身的原因,导致方法的定义和对应结构体的
定义不在一起,很难有个全貌。

另一方面,我把很多东西放在一个package里。目前的计划是把数据库的部分单独
拿出来,其他的部分再整理整理。尽量让每个包只包含少量的文件。

这阵子由于有一个意大利的开发团队,在使用uniqush,并且非常热情地和我互
动,各种提交bug。让我感动不已。所以主要精力都放在改bug,加log上(有些问
题不是uniqush的bug,而是log不全,让对方很难找出他们代码里的bug)。暂时没
有时间去整理代码。但是由于在博客上都承诺要在9月之前推出uniqush-conn,所
以6月开始就必须把经历放在这个项目的后续开发上了。到时候代码整理必须也得
提到日程上。

另外,这里也许能帮个(小)忙:
http://go.pkgdoc.org/github.com/monnand/uniqush/push

由于代码都是自己写的,所以没有遇到过需要快速定位的问题。个人感觉也许
ctags之类的会有帮助。不知道LiteIDE会不会有这方面的功能。

个人设想,何不用go开发个程序,自动地把Go代码转换成HTML。这样的程序在其他
语言里应该有现成的,也许只是需要给别的程序加个代码啥的。不知道哪位有兴
趣,可以考虑一下这个项目。

最后,由于作者本人就在这列表上,所以对代码有什么问题就尽管上来问,我看到
后肯定尽快回复。项目刚起步,需要大伙支持掺合!

-Monnand

xing

unread,
Jun 1, 2012, 1:46:58 AM6/1/12
to golang...@googlegroups.com
�� 2012��06��01�� 13:19, mon...@gmail.com �:
> �ȵø�л��ô ������
>
> �������ȷʵ���ڡ�һ���棬��ΪGo�����ԭ�򣬵��·����Ķ���Ͷ�Ӧ�ṹ��
> �� ���岻��һ�𣬺����и�ȫò��
>
> ��һ���棬�ҰѺܶණ������һ��package�Ŀǰ�ļƻ��ǰ���ݿ�IJ��ֵ�
> �� �ó���������IJ������������?������ÿ����ֻ���������ļ���
>
> ������������һ�������Ŀ����Ŷӣ���ʹ��uniqush�����ҷdz�����غ��һ�
> ���������ύbug�����Ҹж����ѡ�������Ҫ���������ڸ�bug����log�ϣ���Щ
> �� �ⲻ��uniqush��bug������log��ȫ���öԷ������ҳ����Ǵ������bug����
> ��ʱû ��ʱ��ȥ������롣���������ڲ����϶���ŵҪ��9��֮ǰ�Ƴ�uniqush-
> conn���� ��6�¿�ʼ�ͱ���Ѿ�����������Ŀ�ĺ������ˡ���ʱ�������
> �����Ҳ�� �ᵽ�ճ��ϡ�
>
> ���⣬����Ҳ���ܰ����С��æ��
> http://go.pkgdoc.org/github.com/monnand/uniqush/push
>
> ���ڴ��붼���Լ�д�ģ�����û����������Ҫ���ٶ�λ�����⡣���˸о�Ҳ��
> ctags֮��Ļ��а���֪��LiteIDE�᲻�����ⷽ��Ĺ��ܡ�
>
> �������룬�β���go�����������Զ��ذ�Go����ת����HTML������ij�������
> �� ������Ӧ�����ֳɵģ�Ҳ��ֻ����Ҫ���ij���Ӹ�����ɶ�ġ���֪����λ
> ���� Ȥ�����Կ���һ�������Ŀ��
>
> ����������߱��˾������б��ϣ����ԶԴ�����ʲô����;��������ʣ��ҿ�
> �� ��϶�����ظ�����Ŀ���𲽣���Ҫ���֧�ֲ��ϣ�
>
> -Monnand

û�뵽@MonnandҲ�������ҵı�Թ, �Ǻ�.
�һ����濴uniqush�Ĵ����, ϣ����Դ��л��go��ʵ����. Ҳϣ���Լ�����
һ�տ��Զ���Ŀ������.

minux

unread,
Jun 8, 2012, 3:39:08 PM6/8/12
to golang...@googlegroups.com
2012/6/1 xing <xing.zhang....@gmail.com>
最近在看monnand 开源的uniqush项目.
monnand的push包由很多源文件组成, 我看到一个function或者package level的变量/常量的时候, 总是不知道怎样快速定位到定义的地方. 如此下来, 感觉思路总是被打断, 非常的不顺利.
各位大大有什么好的方法?
忘记说了,有一个好办法,不依赖于别的工具。

其实godoc有一个”隐藏“功能,就是URL后面加上?m=all的时候会显示包定义的所有东西,而不受
是否导出的限制。

而且所有函数都可以点击直接跳转到定义点,非常方便。

你需要做的,只是一个趁手的浏览器,本机开godoc,浏览器开那个?m=all的URL,然后从一个
你觉得有意思的函数开始看,发现未知的函数了就后退到文档页,搜索下那个函数,如果还想看
怎么实现的再点击函数名过去。
虽然源代码里面没有交叉链接,但是这样也够方便了。尤其是打开了显示所有变量/函数/常量之后
本身文档页已经能给你一个很大概的概况了。当然,这要求项目的文档要做得合规矩,非导出的
符号也应该有良好的文档。

如果godoc跑在移动设备上(尤其是大屏幕的比如iPad),我觉得这基本是移动设备上看Go代码
最佳的方式了。当然,go本身提供的信息已经足够godoc做源代码级(至少是包内的)符号的交叉
索引了。只不过godoc还没做。

Reply all
Reply to author
Forward
0 new messages