[google-appengine] Should developers pay for the useless instances? Can we set max instances to 1?

2012-07-11 Thread alex
What's the point in using AE infrastructure then? You're probably better off to 
EC2 micro instance, or openshift, or cloudfoundry, or appfog, or heroku, in 
that case. 

Personally, I'd be -1 unstarring (if I could) such a feature.

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/Ecu4sDu46WkJ.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



Re: [google-appengine] Should developers pay for the useless instances? Can we set max instances to 1?

2012-07-11 Thread Robert Fischer
I can see how this feature would be useful -- especially for testing.

I have an app I haven't released yet that once a minute sucks in new data
and spawns many (maybe up to 200/minute max) requests using the task queue
to process that data. When using frontends I was often spinning up 2-3+
instances automatically even when throttling back task queue rates. I can
run all of the requests on the same size backend (B1) just fine, the only
downside is that I'm paying $1.20 a day now to have a test app running
24/7...

I am using backends (one B1 backend specifically) for the sole purpose of
being able to control how many instances are running (only one). My
requests should work great with multi-threading (using python 2.7 w/ HR)
and are neither long running or latency critical but I'm using a backend
because it's cheaper than letting frontends spin up and run idle.

-Robert

On Tue, Jul 10, 2012 at 11:06 PM, alex a...@cloudware.it wrote:

 What's the point in using AE infrastructure then? You're probably better
 off to EC2 micro instance, or openshift, or cloudfoundry, or appfog, or
 heroku, in that case.

 Personally, I'd be -1 unstarring (if I could) such a feature.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine/-/Ecu4sDu46WkJ.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.



-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



Re: [google-appengine] Should developers pay for the useless instances? Can we set max instances to 1?

2012-07-11 Thread Sun Jing
I'm using M/S datastore. I think HR may be better, but I don't want to
migrate now.

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



Re: [google-appengine] Should developers pay for the useless instances? Can we set max instances to 1?

2012-07-11 Thread Rerngvit Yanggratoke
The feature can be optional, right? People who want unbounded number of
instances can disable that feature. To me, it doesn't make sense that it is
impossible to limit number of active instances when you are paying for that.

On Wed, Jul 11, 2012 at 8:06 AM, alex a...@cloudware.it wrote:

 What's the point in using AE infrastructure then? You're probably better
 off to EC2 micro instance, or openshift, or cloudfoundry, or appfog, or
 heroku, in that case.

 Personally, I'd be -1 unstarring (if I could) such a feature.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine/-/Ecu4sDu46WkJ.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.




-- 
Best Regards,
Rerngvit Yanggratoke

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



Re: [google-appengine] Synchronous con jobs are BROKEN (logs inside)

2012-07-11 Thread Jeff Schnitzer
Put this logic in a backend.  Start a thread that sleeps for 3
minutes, processes cron, and goes back to sleep for 3 minutes.  You'll
want to be a little more clever than that because you want to be on
3-minute boundaries not 3-minute intervals but it should be
straightforward.

Appengine's cron is best effort and your game requires precise
timing.  It's better to manage the schedule yourself.

Jeff

On Tue, Jul 10, 2012 at 7:51 PM, Richard steven...@gmail.com wrote:
 I have a game that relies on a synchronous cron job.  For the last few days,
 the game timer has been out of whack.  I pulled the logs and finally figured
 out that my 3 min synchronous cron job fires like this (see below).

 In the mean time, is there ANY way I can get my game working and always
 firing a URL (to create leaderboards/etc) at 3 minute intervals ?

 10/Jul/2012:09:39:20
 10/Jul/2012:09:42:11
 10/Jul/2012:09:45:06
 10/Jul/2012:09:48:05
 10/Jul/2012:09:51:07
 10/Jul/2012:09:54:11
 10/Jul/2012:09:57:08
 10/Jul/2012:10:00:06
 10/Jul/2012:10:03:04
 10/Jul/2012:10:06:03
 10/Jul/2012:10:09:06
 10/Jul/2012:10:12:03
 10/Jul/2012:10:15:06
 10/Jul/2012:10:18:14
 10/Jul/2012:10:21:12
 10/Jul/2012:10:24:06
 10/Jul/2012:10:27:04
 10/Jul/2012:10:30:03
 10/Jul/2012:10:33:18
 10/Jul/2012:10:36:03
 10/Jul/2012:10:39:07
 10/Jul/2012:10:42:11
 10/Jul/2012:10:45:14
 10/Jul/2012:10:48:03
 10/Jul/2012:10:51:08
 10/Jul/2012:10:54:03
 10/Jul/2012:10:57:04
 10/Jul/2012:11:00:08
 10/Jul/2012:11:03:06
 10/Jul/2012:11:06:15
 10/Jul/2012:11:09:06
 10/Jul/2012:11:12:08
 10/Jul/2012:11:15:16
 10/Jul/2012:11:18:15
 10/Jul/2012:11:21:15
 10/Jul/2012:11:24:09
 10/Jul/2012:11:27:11
 10/Jul/2012:11:30:15
 10/Jul/2012:11:33:08
 10/Jul/2012:11:36:09
 10/Jul/2012:11:39:12
 10/Jul/2012:11:42:08
 10/Jul/2012:11:45:06
 10/Jul/2012:11:48:07
 10/Jul/2012:11:51:03
 10/Jul/2012:11:54:05
 10/Jul/2012:11:57:03
 10/Jul/2012:12:00:10
 10/Jul/2012:12:03:08
 10/Jul/2012:12:06:04
 10/Jul/2012:12:09:07
 10/Jul/2012:12:12:03
 10/Jul/2012:12:15:04
 10/Jul/2012:12:18:03
 10/Jul/2012:12:21:05
 10/Jul/2012:12:24:13
 10/Jul/2012:12:27:09
 10/Jul/2012:12:30:04
 10/Jul/2012:12:33:21
 10/Jul/2012:12:36:10
 10/Jul/2012:12:39:12
 10/Jul/2012:12:42:07
 10/Jul/2012:12:45:15
 10/Jul/2012:12:48:12
 10/Jul/2012:12:51:09
 10/Jul/2012:12:54:14
 10/Jul/2012:12:57:06
 10/Jul/2012:13:00:09
 10/Jul/2012:13:03:10
 10/Jul/2012:13:06:19
 10/Jul/2012:13:09:08
 10/Jul/2012:13:12:17
 10/Jul/2012:13:15:06
 10/Jul/2012:13:18:06
 10/Jul/2012:13:21:03
 10/Jul/2012:13:24:07
 10/Jul/2012:13:27:03
 10/Jul/2012:13:30:04
 10/Jul/2012:13:33:04
 10/Jul/2012:13:36:14
 10/Jul/2012:13:39:07
 10/Jul/2012:13:42:09
 10/Jul/2012:13:45:13
 10/Jul/2012:13:48:06
 10/Jul/2012:13:51:04
 10/Jul/2012:13:54:08
 10/Jul/2012:13:57:10
 10/Jul/2012:14:00:21
 10/Jul/2012:14:03:13
 10/Jul/2012:14:06:02
 10/Jul/2012:14:13:01
 10/Jul/2012:14:15:12
 10/Jul/2012:14:18:11
 10/Jul/2012:14:21:17
 10/Jul/2012:14:24:05
 10/Jul/2012:14:27:12
 10/Jul/2012:14:30:08
 10/Jul/2012:14:33:04
 10/Jul/2012:14:36:13
 10/Jul/2012:14:39:10
 10/Jul/2012:14:42:14
 10/Jul/2012:14:45:11
 10/Jul/2012:14:48:13
 10/Jul/2012:14:51:08
 10/Jul/2012:14:54:11
 10/Jul/2012:14:57:04
 10/Jul/2012:15:00:06
 10/Jul/2012:15:03:09
 10/Jul/2012:15:06:08
 10/Jul/2012:15:09:07
 10/Jul/2012:15:12:07
 10/Jul/2012:15:15:23
 10/Jul/2012:15:18:21
 10/Jul/2012:15:21:08
 10/Jul/2012:15:24:06
 10/Jul/2012:15:27:11
 10/Jul/2012:15:30:04
 10/Jul/2012:15:33:07
 10/Jul/2012:15:34:31
 10/Jul/2012:15:36:12
 10/Jul/2012:15:39:14
 10/Jul/2012:15:42:10
 10/Jul/2012:15:45:11
 10/Jul/2012:15:46:25
 10/Jul/2012:15:48:11
 10/Jul/2012:15:51:10
 10/Jul/2012:15:54:16
 10/Jul/2012:15:57:05
 10/Jul/2012:16:00:07
 10/Jul/2012:16:03:08
 10/Jul/2012:16:06:18
 10/Jul/2012:16:09:18
 10/Jul/2012:16:12:13
 10/Jul/2012:16:15:15
 10/Jul/2012:16:18:06
 10/Jul/2012:16:21:04
 10/Jul/2012:16:24:05
 10/Jul/2012:16:27:10
 10/Jul/2012:16:30:19
 10/Jul/2012:16:33:11
 10/Jul/2012:16:36:19
 10/Jul/2012:16:39:12
 10/Jul/2012:16:42:13
 10/Jul/2012:16:45:14
 10/Jul/2012:16:48:19
 10/Jul/2012:16:51:05
 10/Jul/2012:16:54:09
 10/Jul/2012:16:57:21
 10/Jul/2012:17:00:18
 10/Jul/2012:17:03:04
 10/Jul/2012:17:06:05
 10/Jul/2012:17:09:10
 10/Jul/2012:17:12:12
 10/Jul/2012:17:15:13
 10/Jul/2012:17:18:11
 10/Jul/2012:17:21:14
 10/Jul/2012:17:24:04
 10/Jul/2012:17:27:19
 10/Jul/2012:17:30:16
 10/Jul/2012:17:33:04
 10/Jul/2012:17:36:09
 10/Jul/2012:17:39:08
 10/Jul/2012:17:42:10
 10/Jul/2012:17:45:11
 10/Jul/2012:17:48:24
 10/Jul/2012:17:51:04
 10/Jul/2012:17:54:10
 10/Jul/2012:17:57:19
 10/Jul/2012:18:00:11
 10/Jul/2012:18:03:10
 10/Jul/2012:18:06:10
 10/Jul/2012:18:09:20
 10/Jul/2012:18:12:05
 10/Jul/2012:18:15:26
 10/Jul/2012:18:18:16
 10/Jul/2012:18:21:21
 10/Jul/2012:18:24:11
 10/Jul/2012:18:27:18
 10/Jul/2012:18:30:29
 10/Jul/2012:18:33:13
 10/Jul/2012:18:36:24
 10/Jul/2012:18:39:13
 10/Jul/2012:18:42:18
 10/Jul/2012:18:45:20
 10/Jul/2012:18:48:13
 10/Jul/2012:18:51:24
 10/Jul/2012:18:54:14
 10/Jul/2012:18:57:19
 10/Jul/2012:19:00:12
 

[google-appengine] Re: Datastore Indexes stuck. vacuum_indexes didn't fix it

2012-07-11 Thread Udi h Bauman
We're having the same problem - indices are stuck Building  vacuum 
didn't help. 

Anything else we can do?

The app id is: apps-poc (HRD).


Thanks,
Udi


On Sunday, June 10, 2012 10:46:49 AM UTC+3, Gwyn Howell wrote:

 I have datastore indexes stuck in Building status. I have tried deleting 
 my index.yaml and running vacuum_indexes. That deleted all the other 
 indexes, but not the 5 stuck in Building status. How do I fix this? 
 (Googlers, my App ID is phoenixhealth-dms!)

 Thanks


-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/GP4yuYP_otsJ.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



[google-appengine] Re: Should developers pay for the useless instances? Can we set max instances to 1?

2012-07-11 Thread Kyle Finley
Here's the feature request. Please star it.

http://code.google.com/p/googleappengine/issues/detail?id=5858



-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/O2FqOfUfHdUJ.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



Re: [google-appengine] Re: Spring MVC + GAE = slow startup

2012-07-11 Thread Joakim
Out of interest, which framework(s) are you using to replace Spring?

On Tuesday, July 10, 2012 10:02:17 PM UTC+2, Rick Mangi wrote:

 FWIW I gave up on spring for that same reason. All of the reflection, 
 scanning and parsing of XML or annotations is just not designed for an 
 environment like appengine. It's meant for apps that start up once and stay 
 up for a long time.

 On Tuesday, July 10, 2012 8:19:44 AM UTC-4, rerngvit yanggratoke wrote:

 I read it earlier somewhere that Spring MVC is kind of too heavy for GAE. 
 The cold start time will be much lower if you use some other lightweight 
 libraries. However, this means you could not take advantages of mature and 
 advanced framework like Spring anyway.

 On Tue, Jul 10, 2012 at 2:13 PM, Jordi P.S. planad...@gmail.com wrote:

 Hello guys,

 Tomas, I'm facing the same issues as you. I have Spring MVC with 
 velocity and one single JSP and I get startup times from 50+ seconds.
 I started applying the measures you guys propose and I don't get major 
 reductions.

 Have you fixed this issue already?

 Jordi.

 On Tuesday, April 10, 2012 3:47:57 PM UTC+2, jon wrote:

 Just did one quick test, it takes about 24 s to spin up an instance. I 
 guess all this code we've written has added about 10 s of startup 
 time. So far it hasn't been a problem because we reserve instances. 

 Oh there's one other trick that we do. We map /_ah/warmup to a servlet 
 that exercises as much of our stack as possible. 

 We use Spring 3.0.x. Our lib folder shows 47 individual JARs 
 (including our own). Yikes! 

 On Apr 10, 6:12 am, Tomas tomas.ada...@gmail.com wrote: 
  Hi, I've done all of those already and nothing helps. 
  
  As I said - the simplest MVC with just minimal spring libraries 
 (excluding 
  jpa/jdo app engine lib) with one JSP with only htm in it tak 13+ secs 
 to 
  startup. 
  
  I've spent two days trying to optimize everything (annotations 
 support, 
  scanning, repacking to bigger jars) but nothing helps. 
  
  1) what version of spring do you use (maybe the 3.1 is causing 
 troubles) 
  2) how many other libraries did you have in your application 
  
  Thanks. 
  
  
  
  
  
  
  
  On Monday, 9 April 2012 17:48:35 UTC+12, jon wrote: 
  
   Our app is also Spring-based. We did some optimisation about a year 
   ago. Don't really remember how quickly we got our app to start. I 
   think it was in the ballpark of the 13s result you got. 50s is too 
   long. 
  
   Here's what we've done: 
   * combine our own classes into one JAR 
   * reduce dependencies as much as possible (exclude unnecessary 
 JPA/JDO 
   dependencies if you're not using them) 
   * turn off Spring autoscan (we list Controllers explicitly, but we 
 do 
   use annotations inside the Controllers) 
   * use static instead of dynamic JSP includes when possible 
   * turn on JSP precompilation 
   * there may be a few other things I'm forgetting 
  
   On Apr 8, 6:16 pm, Tomas tomas.ada...@gmail.com wrote: 
Hi guys, 
  
I've decided to convert my servlet/jdo based app engine app to 
 spring 
   mvc 
(the current app is starting to limit me on doing quick 
changes/improvements in the code and as I have quite good 
 experience 
   with 
spring on standard non cloud platforms I've decided to give it a 
 go). 
  
So I've put together project including: 
  
- Spring + Spring MVC + Apache Velocity 
- ehcache + spring-annotations for ehcache + own 
 decorators/interceptors 
for appengine memcached 
- objectify 
- some other util classes ie jsoup, commons (util, baens, 
 logging, 
   codec), 
gdata 
  
The lib directory contains ~42MB of jars (including appengine 
 libraries 
which makes ~25MB) 
  
After deploy, the app takes 50+ seconds to start (sometime the 
 first 
request get killed after 60 seconds and another app is started) - 
 I've 
   read 
some articles about speeding up the spring on gae and decided to 
 do 
   another 
little test. I've created testing app containing only spring + 
 spring 
   mvc 
with one controller (no other beans, but had to keep the 
 annotation scan 
enabled for mvc mapping - but disabled the component scan). The 
   controller 
simply forwards to JSP file with text. Deployed and the page got 
   displayed 
after 13 seconds. 
  
I knew the Spring with all proxies and scanning is not optimal 
 for GAE 
   but 
I wasn't expecting this at all - it seems like the app have 
 issues with 
simple loading the libraries as I can see how the memory of 
 instance is 
growing by 1 MB per second. I've tried to: 
  
1) merge jars into 3-4 bigger ones 
2) disable annotations (just for the test as with new spring mvc 
 its 
   quite 
hard to do some better mapping only in xml) 
3) lazy load some spring beans 
  
And I can save like 5-10 secods from those 50+ seconds of my 
 startup - 
   is 
it really so bad for everyone or is there some magic 

[google-appengine] Task Guarantee?

2012-07-11 Thread Richard Arrano
Hello,
I have been designing my app with the notion in mind that even named
tasks may execute more than once, but I only recently came to realize
that a task may not execute at all. I have a task that operates on a
subset of my entities and it's absolutely imperative that all members
of this subset get processed and saved. I originally thought named
tasks would help accomplish this, but this does not seem to be the
case. Is there any way to guarantee that I process these entities? I
also considered a cron job that checks every couple of minutes to
check for unprocessed entities(since a cron job will kick off the
initial task) but I was hoping for a slightly more elegant solution.

Thanks,
Richard

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



[google-appengine] Re: Task Guarantee?

2012-07-11 Thread Per

If you need to be super-certain, then you will always want to have a status 
flag that tells you if you have already processed some entity or not. It's 
also useful for cases where you cannot use transactions (a task might die 
in the middle as well of course)

Well, at least that's how we do it :) Whenever something is important, we 
want to track some kind of status anyhow. One of these statuses would be 
STATUS_UNPROCESSED or so. 

Cheers,
Per



On Wednesday, July 11, 2012 1:55:37 PM UTC+2, Richard Arrano wrote:

 Hello, 
 I have been designing my app with the notion in mind that even named 
 tasks may execute more than once, but I only recently came to realize 
 that a task may not execute at all. I have a task that operates on a 
 subset of my entities and it's absolutely imperative that all members 
 of this subset get processed and saved. I originally thought named 
 tasks would help accomplish this, but this does not seem to be the 
 case. Is there any way to guarantee that I process these entities? I 
 also considered a cron job that checks every couple of minutes to 
 check for unprocessed entities(since a cron job will kick off the 
 initial task) but I was hoping for a slightly more elegant solution. 

 Thanks, 
 Richard

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/UNIfi6NldFYJ.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



[google-appengine] Re: Task Guarantee?

2012-07-11 Thread pdknsk
 tasks may execute more than once, but I only recently came to realize
 that a task may not execute at all.

How so? I've noticed the former, but not the latter.

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



[google-appengine] Re: Task Guarantee?

2012-07-11 Thread Michael Hermus
Same here; I would be very concerned if this were the case. I use 
transactional task en-queues; once successfully on a queue, I have never 
seen a task fail to attempt execution. In cases where the execution is not 
successful, the task system correctly retries the task as specified by 
configuration.

I don't expect any guarantees around timing of execution, although for the 
most part the ETA settings work pretty well.

On Wednesday, July 11, 2012 9:15:19 AM UTC-4, pdknsk wrote:

  tasks may execute more than once, but I only recently came to realize 
  that a task may not execute at all. 

 How so? I've noticed the former, but not the latter.

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/RTFjRsfgETQJ.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



[google-appengine] Re: Should developers pay for the useless instances? Can we set max instances to 1?

2012-07-11 Thread Michael Hermus
Starred. IMO there is absolutely no good reason to NOT allow people to set 
a maximum number of instances. 

I personally would not use such a setting for a production app that expects 
variable traffic spikes, but GAE is not just for apps that need to scale 
infinitely. Sure, that is one of its most powerful features, but simply 
avoiding all infrastructure management, at whatever scale, is a huge value.

On Wednesday, July 11, 2012 4:40:56 AM UTC-4, Kyle Finley wrote:

 Here's the feature request. Please star it.

 http://code.google.com/p/googleappengine/issues/detail?id=5858



-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/F1sb3sPiBfoJ.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



[google-appengine] What happened today?

2012-07-11 Thread Francois Masurel
Check these two Java status screenshots below for today and june 23.

Is there an update going on or something that could explain this 
significant latency difference?

Francois


http://www.google.com/chart?chxt=x,ychd=e:BUCrECFYGvIGJdKzMKNhO4QORlS8UTVpXAYXZubEcbdyfJgfh2jNkkl6nRoop.rVssuDvawxyHze012M3i456Q7n89-U.b,agRbRMZoSSdHqVaaR8qgZ5Y.S0XTW1ePhEahaUX7vBdlgiqek.cuaaY5zsrPhWM2TUfmgLs4bmhteegVjs1FeroyYRUySSchxp=0,0.0,16.7,33.3,50.0,66.7,83.3,100.0|1,20.0,40.0,60.0,80.0,100.0chxs=chg=0,20.00,1,2chco=0077ccchm=R,7f7f7f,0,0.000,0.001|R,7f7f7f,0,0.167,0.168|R,7f7f7f,0,0.333,0.335|R,7f7f7f,0,0.500,0.501|R,7f7f7f,0,0.667,0.668|R,7f7f7f,0,0.833,0.835|R,7f7f7f,0,1.000,1.001|B,eaf0f4,0,0,0chs=700x290cht=lxychxl=0%3A%7C6/23%2012%20AM%7C4%20AM%7C8%20AM%7C12%20PM%7C4%20PM%7C8%20PM%7C6/24%2012%20AM%7C1%3A%7C40.00%7C80.00%7C120.00%7C160.00%7C200.00chls=2,0,0chxx=0_0
June 23 : max 160ms, average ~80ms

http://www.google.com/chart?chxt=x,ychd=e:AdA8A8C5C5DYDYEXEXEXF1F1GUGUHTHTHyIRIxJQJvKOKuLNLsNKNKNpOJOoPHPnQGQlQlRkRkSDSiTCTCUAUAUAU.U.VeV9WdWv,GbOkmugvsdhGZg2naaEcFsEbMIEFKrIyKtOcuSRaiqO2FhNDFjE6foHbPXagdld3MNRMKDSC,A8BbB6CaC5C5DYDYD4EXEXEXEXE2FVF1F1GUGUGzHTHTMrNKNKQlQlRERkRkTCTCThUAUAUAUAUfU.U.,Ok5Q2i1MmugvnCsdsdhY0lhGZgfa2nOcY7uSE6WwfoagnhdldllXd3__chxp=0,0.0,16.7,33.3,50.0,66.7,83.3,100.0|1,20.0,40.0,60.0,80.0,100.0chxs=chg=0,20.00,1,2chco=0077cc,00chm=R,7f7f7f,0,0.000,0.001|R,7f7f7f,0,0.167,0.168|R,7f7f7f,0,0.333,0.335|R,7f7f7f,0,0.500,0.501|R,7f7f7f,0,0.667,0.668|R,7f7f7f,0,0.833,0.835|R,7f7f7f,0,1.000,1.001|B,eaf0f4,0,0,0|B,cc,1,0,0chs=700x290cht=lxychxl=0%3A%7C7/11%2012%20AM%7C4%20AM%7C8%20AM%7C12%20PM%7C4%20PM%7C8%20PM%7C7/12%2012%20AM%7C1%3A%7C250.00%7C500.00%7C750.00%7C1000.00%7C1250.00chls=2,0,0|2,0,0chxx=0_0
 
July 11 : max 1000ms, average ~250ms (?)

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/vXzOetAKrIgJ.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



Re: [google-appengine] Can't access google-engage.appspot.com/ru/dashboard/

2012-07-11 Thread Robert Schuppenies
Hi Jorge.

Thanks for the report. As others have pointed out, this forum is for App
Engine related issues, but you are better of letting the engage folks know
directly. You can reach them at: engage-supp...@google.com.

cheers,
robert


On Tue, Jul 10, 2012 at 7:51 AM, Jorge Grajales 
jorge.graja...@aumentatutrafico.co wrote:


 Can't access 
 google-engage.appspot.com/ru/**dashboard/http://google-engage.appspot.com/ru/dashboard/,
 there is error
 500 server error
 Error: Server ErrorThe server encountered an error and could not complete
 your request.

 If the problem persists, please 
 reporthttp://code.google.com/appengine/community.html your
 problem and mention this error message and the query that caused it.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine/-/bSm3bhQSLoQJ.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.


-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



[google-appengine] Re: App Engine Office Hours hangout, 4pm PDT, Wed. 11th July

2012-07-11 Thread Amy Unruh
Reminder: this Office Hours hangout is today: Wed., 11th July, at 4pm
Pacific time.

 -Amy

On 10 July 2012 10:28, Amy Unruh a...@google.com wrote:

 hi all,

 We will have an App Engine office hours G+ hangout on this Wed., 11th
 July, at 4pm Pacific time (23:00 UTC, 9:00 Thu in Sydney, 8:00 in Tokyo :).
 We'll do a review of the Cloud-related news from Google I/O, and have time
 for general discussion/questions.

 Visit this event to find the link to the hangout when it starts up:

 https://developers.google.com/live/shows/ahNzfmdvb2dsZS1kZXZlbG9wZXJzcg4LEgVFdmVudBjOu4UDDA/
 Submit questions via Google Moderator:
   https://www.google.com/moderator/#15/e=1faeact=1faeac.43

  -Amy



-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



Re: [google-appengine] Endpoints section in the control panel?

2012-07-11 Thread Dan Holevoet
The Java command line tool is shipped in the current SDK in
$SDK/bin/endpoints.sh. The Python version isn't currently in the SDK.

You can also use the latest version of the Google Plugin for Eclipse if
you're working on a Java backend.

Thanks,
Dan


On Tue, Jul 10, 2012 at 8:49 PM, Kyle Finley kylefin...@gmail.com wrote:

 Perfect, that's what I was hoping.

 How are the Discovery docs created?
 I suspect that there is a program that takes the annotated code (python /
 java) and creates the document? Where would one find this tool? I apologize
 if it is in the SDK. I couldn't find it.


 - Kyle


 On Jul 10, 2012, at 8:10 PM, Dan Holevoet wrote:

 Hi Kyle,

 Discovery documents *are* served for all Endpoints (at
 your_app_id.appspot.com/_ah/apis/discovery/v1/apis) just like
 Google-authored APIs. We also provide a local version of the discovery doc
 (as a file) when you do local development so you don't have to push to
 production to test your Endpoint.

 The local discovery doc is used to generate the Objective-C library. The
 Go generator would use the local file as well. (Of course, you can point
 them to the live discovery doc if you'd like to.) So, I think we're
 offering what you want. Apologies if my explanation is (or was) confusing.
 I'm happy to elaborate further.

 Thanks,
 Dan


 On Tue, Jul 10, 2012 at 4:11 PM, Kyle Finley kylefin...@gmail.com wrote:

 Hi Dan,

 Thank you for your reply.

 If you're just interested in generating a client library for an Endpoint
 that you can consume in Go, you can probably use the 
 gen.gohttp://code.google.com/p/google-api-go-client/source/browse/google-api-go-generator/gen.gofile
  provided by the Go client library. I must include the disclaimer that
 this is entirely untested, the generated library may make assumptions which
 are incorrect for non-Google-authored APIs.


 Yeah this is partly was I was interested in.  I must admin I'm not
 completely clear on how endpoints works. I thought that you might have a
 tools that created discovery https://developers.google.com/discovery/docs 
 from annotated code. That's was what I was interested in looking
 at. I'm sure I can create something similar. I just thought looking at some
 code might help.

 I think this whole process has a lot potential as an open source
 standard. Everyone is struggling for consistency In there API's. You guys
 have done a lot good work with the discovery api and the tools that parse I
 would like to see that spread.

 Thank you,

 Kyle

 If you want to write a backend in Go, there are probably some server-side
 details that would block your implementation.

 Thanks,
 Dan


 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine/-/ArnV9WAiW0MJ.

 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.




 --
 Dan Holevoet
 Google Developer Relations


 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.


  --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.




-- 
Dan Holevoet
Google Developer Relations

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



Re: [google-appengine] Re: Spring MVC + GAE = slow startup

2012-07-11 Thread Rick Mangi
None specifically. We're just not using spring. Spring's not really a 
framework as much as it is a set of tools and glue for building things 
(although I guess spring-mvc is a framework). Our app is built mostly on 
jersey, objectify and backbone.js


On Wednesday, July 11, 2012 7:46:37 AM UTC-4, Joakim wrote:

 Out of interest, which framework(s) are you using to replace Spring?

 On Tuesday, July 10, 2012 10:02:17 PM UTC+2, Rick Mangi wrote:

 FWIW I gave up on spring for that same reason. All of the reflection, 
 scanning and parsing of XML or annotations is just not designed for an 
 environment like appengine. It's meant for apps that start up once and stay 
 up for a long time.

 On Tuesday, July 10, 2012 8:19:44 AM UTC-4, rerngvit yanggratoke wrote:

 I read it earlier somewhere that Spring MVC is kind of too heavy for 
 GAE. The cold start time will be much lower if you use some other 
 lightweight libraries. However, this means you could not take advantages of 
 mature and advanced framework like Spring anyway.

 On Tue, Jul 10, 2012 at 2:13 PM, Jordi P.S. planad...@gmail.com wrote:

 Hello guys,

 Tomas, I'm facing the same issues as you. I have Spring MVC with 
 velocity and one single JSP and I get startup times from 50+ seconds.
 I started applying the measures you guys propose and I don't get major 
 reductions.

 Have you fixed this issue already?

 Jordi.

 On Tuesday, April 10, 2012 3:47:57 PM UTC+2, jon wrote:

 Just did one quick test, it takes about 24 s to spin up an instance. I 
 guess all this code we've written has added about 10 s of startup 
 time. So far it hasn't been a problem because we reserve instances. 

 Oh there's one other trick that we do. We map /_ah/warmup to a servlet 
 that exercises as much of our stack as possible. 

 We use Spring 3.0.x. Our lib folder shows 47 individual JARs 
 (including our own). Yikes! 

 On Apr 10, 6:12 am, Tomas tomas.ada...@gmail.com wrote: 
  Hi, I've done all of those already and nothing helps. 
  
  As I said - the simplest MVC with just minimal spring libraries 
 (excluding 
  jpa/jdo app engine lib) with one JSP with only htm in it tak 13+ 
 secs to 
  startup. 
  
  I've spent two days trying to optimize everything (annotations 
 support, 
  scanning, repacking to bigger jars) but nothing helps. 
  
  1) what version of spring do you use (maybe the 3.1 is causing 
 troubles) 
  2) how many other libraries did you have in your application 
  
  Thanks. 
  
  
  
  
  
  
  
  On Monday, 9 April 2012 17:48:35 UTC+12, jon wrote: 
  
   Our app is also Spring-based. We did some optimisation about a 
 year 
   ago. Don't really remember how quickly we got our app to start. I 
   think it was in the ballpark of the 13s result you got. 50s is too 
   long. 
  
   Here's what we've done: 
   * combine our own classes into one JAR 
   * reduce dependencies as much as possible (exclude unnecessary 
 JPA/JDO 
   dependencies if you're not using them) 
   * turn off Spring autoscan (we list Controllers explicitly, but we 
 do 
   use annotations inside the Controllers) 
   * use static instead of dynamic JSP includes when possible 
   * turn on JSP precompilation 
   * there may be a few other things I'm forgetting 
  
   On Apr 8, 6:16 pm, Tomas tomas.ada...@gmail.com wrote: 
Hi guys, 
  
I've decided to convert my servlet/jdo based app engine app to 
 spring 
   mvc 
(the current app is starting to limit me on doing quick 
changes/improvements in the code and as I have quite good 
 experience 
   with 
spring on standard non cloud platforms I've decided to give it a 
 go). 
  
So I've put together project including: 
  
- Spring + Spring MVC + Apache Velocity 
- ehcache + spring-annotations for ehcache + own 
 decorators/interceptors 
for appengine memcached 
- objectify 
- some other util classes ie jsoup, commons (util, baens, 
 logging, 
   codec), 
gdata 
  
The lib directory contains ~42MB of jars (including appengine 
 libraries 
which makes ~25MB) 
  
After deploy, the app takes 50+ seconds to start (sometime the 
 first 
request get killed after 60 seconds and another app is started) 
 - I've 
   read 
some articles about speeding up the spring on gae and decided to 
 do 
   another 
little test. I've created testing app containing only spring + 
 spring 
   mvc 
with one controller (no other beans, but had to keep the 
 annotation scan 
enabled for mvc mapping - but disabled the component scan). The 
   controller 
simply forwards to JSP file with text. Deployed and the page got 
   displayed 
after 13 seconds. 
  
I knew the Spring with all proxies and scanning is not optimal 
 for GAE 
   but 
I wasn't expecting this at all - it seems like the app have 
 issues with 
simple loading the libraries as I can see how the memory of 
 instance is 
growing by 1 MB per second. I've tried to: 
  
1) merge jars into 3-4 bigger ones 
   

Re: [google-appengine] Endpoints section in the control panel?

2012-07-11 Thread Kyle Finley
Dan, Thank you.

On Jul 11, 2012, at 1:22 PM, Dan Holevoet wrote:

 The Java command line tool is shipped in the current SDK in 
 $SDK/bin/endpoints.sh. The Python version isn't currently in the SDK.
 
 You can also use the latest version of the Google Plugin for Eclipse if 
 you're working on a Java backend.
 
 Thanks,
 Dan
 
 
 On Tue, Jul 10, 2012 at 8:49 PM, Kyle Finley kylefin...@gmail.com wrote:
 Perfect, that's what I was hoping. 
 
 How are the Discovery docs created?
 I suspect that there is a program that takes the annotated code (python / 
 java) and creates the document? Where would one find this tool? I apologize 
 if it is in the SDK. I couldn't find it.
 
 
 - Kyle
 
 
 On Jul 10, 2012, at 8:10 PM, Dan Holevoet wrote:
 
 Hi Kyle,
 
 Discovery documents are served for all Endpoints (at 
 your_app_id.appspot.com/_ah/apis/discovery/v1/apis) just like 
 Google-authored APIs. We also provide a local version of the discovery doc 
 (as a file) when you do local development so you don't have to push to 
 production to test your Endpoint.
 
 The local discovery doc is used to generate the Objective-C library. The Go 
 generator would use the local file as well. (Of course, you can point them 
 to the live discovery doc if you'd like to.) So, I think we're offering what 
 you want. Apologies if my explanation is (or was) confusing. I'm happy to 
 elaborate further.
 
 Thanks,
 Dan
 
 
 On Tue, Jul 10, 2012 at 4:11 PM, Kyle Finley kylefin...@gmail.com wrote:
 Hi Dan,
 
 Thank you for your reply.
 
 If you're just interested in generating a client library for an Endpoint 
 that you can consume in Go, you can probably use the gen.go file provided by 
 the Go client library. I must include the disclaimer that this is entirely 
 untested, the generated library may make assumptions which are incorrect for 
 non-Google-authored APIs.
 
 Yeah this is partly was I was interested in.  I must admin I'm not 
 completely clear on how endpoints works. I thought that you might have a 
 tools that created discovery docs from annotated code. That's was what I was 
 interested in looking at. I'm sure I can create something similar. I just 
 thought looking at some code might help.
 
 I think this whole process has a lot potential as an open source standard. 
 Everyone is struggling for consistency In there API's. You guys have done a 
 lot good work with the discovery api and the tools that parse I would like 
 to see that spread.
 
 Thank you,
 
 Kyle
 
 If you want to write a backend in Go, there are probably some server-side 
 details that would block your implementation.
 
 Thanks,
 Dan
 
 -- 
 You received this message because you are subscribed to the Google Groups 
 Google App Engine group.
 To view this discussion on the web visit 
 https://groups.google.com/d/msg/google-appengine/-/ArnV9WAiW0MJ.
 
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to 
 google-appengine+unsubscr...@googlegroups.com.
 For more options, visit this group at 
 http://groups.google.com/group/google-appengine?hl=en.
 
 
 
 -- 
 Dan Holevoet
 Google Developer Relations
 
 
 -- 
 You received this message because you are subscribed to the Google Groups 
 Google App Engine group.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to 
 google-appengine+unsubscr...@googlegroups.com.
 For more options, visit this group at 
 http://groups.google.com/group/google-appengine?hl=en.
 
 
 -- 
 You received this message because you are subscribed to the Google Groups 
 Google App Engine group.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to 
 google-appengine+unsubscr...@googlegroups.com.
 For more options, visit this group at 
 http://groups.google.com/group/google-appengine?hl=en.
 
 
 
 -- 
 Dan Holevoet
 Google Developer Relations
 
 
 -- 
 You received this message because you are subscribed to the Google Groups 
 Google App Engine group.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to 
 google-appengine+unsubscr...@googlegroups.com.
 For more options, visit this group at 
 http://groups.google.com/group/google-appengine?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



[google-appengine] Re: Task Guarantee?

2012-07-11 Thread stevep
Having no insight about you logic... Agree with other responses that while 
the timing of a task queue task may be unpredictable, the final execution 
of said task is pretty certain. If you want more control, then perhaps a 
pull queue may be an option since you should easily find a means to 
record/log what is in the queue, and delete the queue items only after your 
logic has ascertained its final disposition is proven (e.g. completed a 
put() operation without exception). HTH -stevep

On Wednesday, July 11, 2012 4:55:37 AM UTC-7, Richard Arrano wrote:

 Hello, 
 I have been designing my app with the notion in mind that even named 
 tasks may execute more than once, but I only recently came to realize 
 that a task may not execute at all. I have a task that operates on a 
 subset of my entities and it's absolutely imperative that all members 
 of this subset get processed and saved. I originally thought named 
 tasks would help accomplish this, but this does not seem to be the 
 case. Is there any way to guarantee that I process these entities? I 
 also considered a cron job that checks every couple of minutes to 
 check for unprocessed entities(since a cron job will kick off the 
 initial task) but I was hoping for a slightly more elegant solution. 

 Thanks, 
 Richard

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/Y6aDa5c8YFEJ.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



Re: [google-appengine] Re: Datastore Indexes stuck. vacuum_indexes didn't fix it

2012-07-11 Thread Takashi Matsuo
Hi Udi,

I'm looking into it.

-- Takashi


On Wed, Jul 11, 2012 at 5:02 PM, Udi h Bauman dibauna...@gmail.com wrote:

 We're having the same problem - indices are stuck Building  vacuum
 didn't help.

 Anything else we can do?

 The app id is: apps-poc (HRD).


 Thanks,
 Udi


 On Sunday, June 10, 2012 10:46:49 AM UTC+3, Gwyn Howell wrote:

 I have datastore indexes stuck in Building status. I have tried
 deleting my index.yaml and running vacuum_indexes. That deleted all the
 other indexes, but not the 5 stuck in Building status. How do I fix this?
 (Googlers, my App ID is phoenixhealth-dms!)

 Thanks

  --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine/-/GP4yuYP_otsJ.

 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.




-- 
Takashi Matsuo

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



Re: [google-appengine] Re: Datastore Indexes stuck. vacuum_indexes didn't fix it

2012-07-11 Thread Takashi Matsuo
Hi Udi,

Now you're good to go.

Sorry for the inconvenience.

-- Takashi


On Thu, Jul 12, 2012 at 6:08 AM, Takashi Matsuo tmat...@google.com wrote:


 Hi Udi,

 I'm looking into it.

 -- Takashi


 On Wed, Jul 11, 2012 at 5:02 PM, Udi h Bauman dibauna...@gmail.comwrote:

 We're having the same problem - indices are stuck Building  vacuum
 didn't help.

 Anything else we can do?

 The app id is: apps-poc (HRD).


 Thanks,
 Udi


 On Sunday, June 10, 2012 10:46:49 AM UTC+3, Gwyn Howell wrote:

 I have datastore indexes stuck in Building status. I have tried
 deleting my index.yaml and running vacuum_indexes. That deleted all the
 other indexes, but not the 5 stuck in Building status. How do I fix this?
 (Googlers, my App ID is phoenixhealth-dms!)

 Thanks

  --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine/-/GP4yuYP_otsJ.

 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.




 --
 Takashi Matsuo




-- 
Takashi Matsuo

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



Re: [google-appengine] deploying the App Engine: I just can seem to do it!

2012-07-11 Thread Dan Holevoet
Hi,

Google Cloud Endpoints is currently a trusted tester feature. In order to
be able to deploy your Endpoint to your appspot app, you will need to be
whitelisted. Please complete this form:
endpoints-trusted-tester.appspot.comif you haven't already.

Thanks,
Dan


On Mon, Jul 9, 2012 at 9:19 AM, Boy Lenssen boylens...@gmail.com wrote:

 I have been trying all day to get something running with App Engine. I use
 the Google plugin. I generate the cloud endpoints.
 Running it locally and addressing it via curl, no problems...

 Then I deploy it, use the registered application id on appspot and go to:
 appl_id.appspot.com/_ah/api/discovery/v1/apis/my_api/v1/rest, and it
 says : Not found!

 I was following this video until 20 minutes,
 http://www.youtube.com/watch?v=v9TG7OzsZqQ and did the above again, but
 still..the same...

 what am I doing wrong...do I need to change a setting on appspot?

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine group.
 To view this discussion on the web visit
 https://groups.google.com/d/msg/google-appengine/-/4Fu02n47IZoJ.
 To post to this group, send email to google-appengine@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine+unsubscr...@googlegroups.com.
 For more options, visit this group at
 http://groups.google.com/group/google-appengine?hl=en.




-- 
Dan Holevoet
Google Developer Relations

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



[google-appengine] Channel API and compression

2012-07-11 Thread Vlad Alexandru Ionescu

In here https://developers.google.com/appengine/kb/general#compression it 
says that compression is used by default if the browser supports it and 
requires no modification to the application.

My question is, does that apply to Channel API messages too?

I have an application that needs to send large JSON (text) data through a 
persistent connection and I'm hoping to get it through faster by having it 
compressed.

Cheers!

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/95L3hHAieIgJ.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



[google-appengine] Backend latency

2012-07-11 Thread Jeff Schnitzer
I've been doing some load testing on Python27 frontends and backends
and getting some fairly awful results.

My test is a simple no-op that returns a 4-letter constant string.  I
hit frontend (F1) and backend (B1) versions with ab -c 100.

The frontend peaks at about 140 requests/sec per instance.  I've set
the min latency to 15s to keep the # of instances to a minimum, which
seems to work.  It never goes above 2 instances and one of them makes
the 140 mark.  The admin instances page shows avg latency of 10-15ms.
However, app logs show varying latency #s ranging from 30ms to 250ms.

The backend (single instance) peaks under 80 requests/sec.  The
admin/instances page shows avg latency of 100ms.  App logs show
latencies of 3000-4000ms.

Questions and observations:

1) What does the avg latency # on admin/instances mean?  Presumably
this is time spent executing my code and not time spent in the pending
queue.  Except that no-ops don't take 100ms to execute.  What else is
part of that number?

2) Request time in the app logs includes time spent waiting in the
pending queue, right?  It's the actual wall-clock time between when
the request enters Google and leaves Google?

3) Why are backends so abysmally slow?  If a backend is supposed to be
*at all* useful for maintaining in-memory game state for more than
five players, it needs to be able to process a high QPS rate.  That's
fine, a couple synchronized operations on an in-memory data structure
are lightning fast - a couple ms.  But where does this mysterious
100ms come from?  It destroys throughput.

4) Try this exercise:  Deploy a frontend handler that does nothing but
urlfetch to a backend no-op.  Run it.  It usually takes *hundreds* of
milliseconds.  I've verified this with appstats.  Huh?  I can make
urlfetches to Europe faster.

Jeff

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



[google-appengine] Re: Task Guarantee?

2012-07-11 Thread Richard Arrano
I also have not seen tasks fail to run, but I found this thread:
 
http://stackoverflow.com/questions/5583813/google-app-engine-added-task-goes-missing
 
Specifically, the part that says: Tasks are not guaranteed to be executed 
in the order they arrive, and they are not guaranteed to be executed 
exactly once. In some cases, a single task may be executed *more than once 
or not at all*.
 
I haven't seen the behavior myself, and perhaps the commenter is not 
correct, but it occurred to me that I need to account for the 
possibility. I believe I will have a status flag a la Per's 
suggestion. Thanks!
 
-Richard 

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/SYVZ0ymSYoYJ.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.



[google-appengine] separating files for Handler

2012-07-11 Thread soujiro0725
AppEngine for Python SDK latest

Hi, I'm trying to separate the program into many files.  In order to do so, 
I need to put import handler for handler.py file if I'm correct.

But for some reason, I keep getting errors.

main.py is

import webapp2
 import os
 import jinja2
 import handler

 template_dir = os.path.join(os.path.dirname(__file__), 'templates')
 jinja_env = jinja2.Environment(loader = 
 jinja2.FileSystemLoader(template_dir),
autoescape = True)
 def render_str(template, **params):
 t = jinja_env.get_template(template)
 return t.render(params)
 def make_secure_val(val):
 return '%s|%s' % (val, hmac.new(secret, val).hexdigest())
 def check_secure_val(secure_val):
 val = secure_val.split('|')[0]
 if secure_val == make_secure_val(val):
 return val
 class MainPage(Handler):
 def get(self):
 self.response.headers['Content-Type'] = 'text/plain'
 self.render('front.html', wikis = wikis[0], time = 
 int(diff.total_seconds()))
 app = webapp2.WSGIApplication([('/?', MainPage)], debug=True)


 handler.py is

import webapp2
 class Handler(webapp2.RequestHandler):
 def write(self, *a, **kw):
 self.response.out.write(*a, **kw)
 def render_str(self, template, **params):
 params['user'] = self.user
 return render_str(template, **params)
 def render(self, template, **kw):
 self.write(self.render_str(template, **kw))
 def set_secure_cookie(self, name, val):
 cookie_val = make_secure_val(val)
 self.response.headers.add_header(
 'Set-Cookie',
 '%s=%s; Path=/' % (name, cookie_val))
 def read_secure_cookie(self, name):
 cookie_val = self.request.cookies.get(name)
 return cookie_val and check_secure_val(cookie_val)
 def login(self, user):
 self.set_secure_cookie('user_id', str(user.key().id()))
 def logout(self):
 self.response.headers.add_header('Set-Cookie', 'user_id=; Path=/')
 def initialize(self, *a, **kw):
 webapp2.RequestHandler.initialize(self, *a, **kw)
 uid = self.read_secure_cookie('user_id')
 self.user = uid and User.by_id(int(uid))


This raises an error,

  File /Users/ishidasouichi/appengine_python/chword/main.py, line 28, in 
 module
 class MainPage(Handler):
 NameError: name 'Handler' is not defined
 INFO 2012-07-12 04:40:05,243 dev_appserver.py:2904] GET /favicon.ico 
 HTTP/1.1 500 - 


Looks like main.py is not reading handler.py at all.  

Could anyone point out the mistake I am making?  

soujiro0725 

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine/-/V4KbCWSLNBsJ.
To post to this group, send email to google-appengine@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.