关于snovaa 的劣势 把Snova&Gsnova部署到GAE最新图文教程
Box 的 snova 已经上传了,就是客户端了,可以参考!
相比较之下,还是apjp比较容易 ! 只要有google 的ip,不需要hosts !
snova 是通过 hosts和 加密浏览的!
现在GAE可能某个IP用着用着就会挂掉,但重启Snova一下换一个IP就可以接着用,可不可以Snova在碰到GAE出现问题的时候自动换下一个IP,或者重新解析一次google的地址获得新的IP,直到没有一个IP连得上最后自动走C4?
Project Member #1 yinqiwen@gmail.comsnova/gsnova都已提供了hosts配置文件可供修改,多个IP默认是轮询选择 snova修改conf/hosts.conf gsnova修改hosts/user_hosts.confNov 23, 2012#4 bibup...@gmail.com我说的是重启snova,比方说用着用着它提示GAE上不了了,浏览器提示500错误,重启一下snova后它会重新搜索新的IP,这个时候就可以继续用了,如果不用重启它就会自动搜索新IP,或者跳到C4就好了。Nov 23, 2012#6 disun...@gmail.com我这里也发现这种情况,当一个google的IP挂掉了,客户端没有尝试其他IP,导致只能重启.我改的是cloud_hosts.conf这个文件,user_hosts.conf配置appspot的IP不起作用把Snova&Gsnova部署到GAE最新图文教程
准备依赖环境
- 运行部署snova需要JRE/JDK 1.6+
- 运行部署gsnova无需任何依赖
- 下载解压Google App Engine SDK(Java/Go) (最新版本), snova-gae支持Java/Go两种语言的server端实现,任选一个即可
Step 4: 部署Server到Appengine服务器Appid如果上传不了请开VPN再试试!
- (Go版本和Java版本任选其一)
- Go版本
两种方式
- 用自带的Deployer部署(如果用这种方式不行,可用下面的用Appengine Go SDK部署方式)
- 下载并解压snova-gae-gserver-[version].zip
- windows用户执行deployer.exe;Mac/Linux用户执行python deployer.py
- 按照deployer的指示输入,执行部署
- 用Appengine Go SDK部署
- 下载并解压snova-gae-gserver-[version].zip
- 进入解压的目录, 修改app.yaml, 将application: snova-master中snova-master值改为自己创建需要上传的appid,每次上传新appid都要修改成要上传的appid。
- 执行appcfg.py update snova-gae-gserver-<version>上传(appcfg.py在'<Google App Engine Go SDK>/'下
- 用Appengine Go SDK部署方法如下:
- 1.运行cmd命令,然后转到appcfg.py (appcfg.py在'<Google App Engine Go SDK>/'下) 所在的Google App Engine Go SDK文件夹,例如我的Google App Engine Go SDK文件夹在C:\Program Files\Google App Engine Go SDK。如图:
- 2.然后执行appcfg.py update snova-gae-gserver-0.18.4(我的是0.18.4版本,应该执行你下载的版本)的src文件夹(因为app.yaml文件在src文件夹里)上传,正确的应该是这样输入appcfg.py update G:\snova-gae-gserver-0.18.4\src(src的路径)(我的是在G:\snova-gae-gserver-0.18.4,你应该输入你自己的snova-gae-gserver-0.18.4所在的路径,),如图:
- 然后输入gmail账户和密码(输入的密码不可见,你输入或者复制密码然后黏贴就可以了)
- 然后输入你的邮箱和app应用的专用密码(输入的密码不可见,你输入或者复制密码然后黏贴就可以了)
- 完成。
- Java版本
两种方式
- GUI方式 (如果用这种方式不行,可用下面命令行方式)
- appcfgwrapper安装程序已经集成到snova-gae-jserver-[version].zip中,执行install.bat/install.sh即可,具体请参考此项目说明http://code.google.com/p/appcfgwrapper/
- 命令行方式
- 下载并解压snova-gae-jserver-[version].zip
- 进入解压的目录, 修改war/WEB-INF/appengine-web.xml,将<application>值改为自己创建需要上传的appid,每次上传新appid都要修改成要上传的appid。如下图
- 执行appcfg.cmd/appcfg.sh update war (因为appengine-web.xml文件在war文件夹里)上传, 注意在解压后进入的目录执行(appcfg在'<Google App Engine Java SDK>/bin'下 )
- 命令行方式操作和上面GO版本用Appengine Go SDK部署的步骤差不多,如下:
- 运行cmd命令,转到appcfg.cmd(windows用appcfg.cmd,其他的用appcfg.sh)(appcfg在'<Google App Engine Java SDK>/bin'下 )所在的appengine-java-sdk-1.7.3\bin文件夹,例如我的appengine-java-sdk-1.7.3在G:\appengine-java-sdk-1.7.3,如图
2.. 接着执行appcfg.cmd/appcfg.sh update snova-gae-jserver-0.14.0\war上传,正确的应该是这样输入appcfg.cmd update G:\snova-gae-jserver-0.14.0\war(war的路径)(你应该输入你的snova-gae-jserver-0.14.0的路径),如图
- 接着你要输入email和你的app应用的专用密码(输入的密码不可见,你输入或者复制密码然后黏贴就可以了)。
- 完成,如图:
Step 5: 配置客户端
Client可选gsnova(Go)或者snova(Java).GSNOVA(GO)
- 修改gsnova.conf
[GAE]
Enable=1
WorkerNode[0]=myappid1
WorkerNode[1]=myappid2
WorkerNode[2]=myappid3
- 或者修改[SPAC]的Enable设置为0
- HTTPS站点代理需要导入伪造的证书。伪造证书为cert/Fake-ACRoot-Certificate.cer
- 如果不配置appid的话,client会到master node上获取数个共享的appid用于自身启动,注意—— 共享的appid只能用于匿名用户使用(匿名用户的概念看这里Authorization)
- 不支持XMPP
SNOVA(JAVA)
- Framework
Framework的配置仅有两三项,具体涉及proxy的配置均在相应plugin的配置中;目前均在conf/snova.conf中(GUI启动则在Config对话框中配置),简要说明如下:
- 如下的配置为默认的proxy地址,相应的浏览器的proxy地址应该填"127.0.0.1:48100"
[Framework] #本地ProxyServer监听地址 LocalHost=localhost LocalPort=48100
- 如下为默认选择的proxy实现,若安装了其他的plugin,则可以在此修改为其它的proxy实现
[Framework] ...... ##Can choose in plugins GAE/SPAC/C4, default is GAE ProxyService=GAE
- GAE Plugin
基于GAE实现大部分配置均在gae-client.conf中(GUI启动则在GAE plugin的相应Config对话框中配置),简要说明如下:
- WorkerNode 为已部署的ApplicationID,即<appid>.appspot.com中<appid>, eg:
[GAE] WorkerNode[0]=root:passwd@appid1GUI方式下参考下面方式在 Windows 上,你可以双击 "bin" 文件夹里面的 "startgui.bat" 文件;然后,你就可以打开 Snova 客户端,点击 "Plugins" 标签 "GAE xxx" 插件下面的 "Config" 按钮,再点击新窗口里面的 "New" 按钮,然后输入你的 GAE 应用程序名称,完了之后,点击 "Apply"按钮就可以了。你可以部署多个 GAE 应用程序名称。 千万记住点击"new" 每输入一个appid都要点击一次"apply"(部署)。如下图所示:
- <WorkerNode appid="" />可配置多个,此情况下, 代理过程中采用轮询策略选择, eg:
[GAE] WorkerNode[0]=appid1 WorkerNode[1]=appid2WorkerNode[2]=appid3WorkerNode[3]=appid4
- WorkerNode 中可以配置用户名/密码,具体用户名/密码概念请参考Authorization, eg:
WorkerNode[0]=root:passwd@appid1最后修改plugins\gae\conf\gae-client.conf
- HTTPS站点代理需要导入伪造的证书。伪造证书为conf/Fake-ACRoot-Certificate.cer
应用程序添加成功之后,点击 "Start" 按钮就可以运行 Snova 服务了。
- 如果不配置appid的话,client会到master node上获取数个共享的appid用于自身启动,注意—— 共享的appid只能用于匿名用户使用(匿名用户的概念看这里Authorization)
- 以下是额外的设置,仅供参考,默认不用修改
- XMPP下Account为XMPP账户,是可选配置,在HTTP无法直连情况下可启用,目前可配置GTALK/jabber.org/OVI等几乎所有XMPP帐号(若有不支持的XMPP account,请提交ISSUE), eg:
[XMPP] Account[0]=user:passwdGUI方式则需要在Connection Tab下配置
- XMPP账户可配置多个,此情况下代理过程中采用轮询策略选择,eg:
[XMPP] Account[0]=user:passwd Account[1]=user:passwd[#serverhost:serverport][/oldssl]
- XMPP模式仅在ConnectionMode模式为XMPP(ConnectionMode=XMPP)情况下生效
- ConcurrentRangeFetchWorker=3 在下载文件/观看视频时生效,含义为并发的下载线程数,可以任意调整,建议在1~5之间调整
- FetchLimitSize=512000 在下载文件/观看视频时生效,每次事务获取的大文件部分的大小,默认512KB
- 配置多AppID情况下若需要将访问一个站点的请求绑定到指定AppID,则需要配置AppIdBinding
[AppIdBinding] #站点域名可用|,;隔开 appid=twitter.com|youtube.com
评论
发表评论