google-cloud

Google Cloud Platform: Clojure + {GAE, GCE, anything else on Google Platform}
claudiu 2018-04-02T06:19:56.000070Z

@nickbauman Have you considered the datastore dsl to be over https://github.com/objectify/objectify ? Seems pretty nice & it uses the google-cloud api, meaning you could switch the app between standard and flexible without making changes to the db queries.

nickbauman 2018-04-02T14:21:19.000211Z

I haven’t seen this one but I’ll definitely take a closer look! Thank you for your thoughtful suggestion.

nickbauman 2018-04-08T16:23:13.000050Z

Oh I have seen it. I just forgot about it.

nickbauman 2018-04-08T16:25:08.000003Z

Nothing wrong with it. But my datastore DSL uses the lower-level API instead of that. I never benched between them, but I suspect the lower-level one is faster because you’re ultimately using less code to do the work.

nickbauman 2018-04-08T16:27:05.000011Z

Since my DSL generates a lazy sequence, there are even more opportunities to increase performance by avoiding work anyway.

nickbauman 2018-04-08T16:27:55.000099Z

Going forward, I want to decouple the query functions from the query macro that consumes them so people can compose queries with or without the macro if they so desire.

nickbauman 2018-04-08T16:29:41.000061Z

I also believe that things like projection queries and save/delete hooks are going be nicer when this decoupling is complete.

claudiu 2018-04-10T06:30:31.000239Z

Sounds nice. Still a bit of tinkering to do with my initial setup, then will focus and the datastore part. The decoupling you mentioned sounds really nice. πŸ™‚

domparry 2018-04-02T07:04:24.000210Z

I've always found dsl's a bit weird from clojure. We wrap the api with functions to make it more clojurey rather than objecty. Take a look at how https://github.com/simplevalue does things. We have used a lot of their stuff. Everything as data.

βœ… 2
claudiu 2018-04-02T08:33:55.000212Z

@domparry Thank you. Will check it out. Trying to see what libs are available in clojure for appengine now. Seems like there was a lot of activity a while back, but now a lot of projects seem to be unmaintained 😞 Are you running apps on the standard java env ?

domparry 2018-04-02T09:07:58.000162Z

We're running on flexible environment, but would prefer to move to standard env.

claudiu 2018-04-02T09:16:16.000187Z

πŸ™‚ lein ring uberwar seems to generate a lot of files in classes for my project. 7k files is pretty close to the 10k limit. Deleting some of the AOT compiled libraries add a bit to startup time.

claudiu 2018-04-02T09:16:33.000305Z

Do you have any issues preventing you to move to standard env ? πŸ™‚

domparry 2018-04-02T09:17:59.000053Z

Nothing yet. I just haven't put the effort in...

claudiu 2018-04-02T09:34:08.000129Z

cool. My current app is serving about 150k pageviews a month for free (appengine standard env python). Would like the clojure/clojurescript rewrite to be the same. πŸ™‚

domparry 2018-04-02T10:50:32.000181Z

That's great. And good motivation to move my stuff to standard env...

βœ… 1