Beware of dilution of DynamoDB throughput due to excessive scaling

TL;DR — The no. of par­ti­tions in a DynamoDB table goes up in response to increased load or stor­age size, but it nev­er come back down, ever. DynamoDB is pret­ty great, but as I have seen this par­tic­u­lar prob­lem at 3 dif­fer­ent com­pa­nies — Gamesys, JUST EAT, and now Space Ape Games — I think it’s …

Beware of dilu­tion of DynamoDB through­put due to exces­sive scal­ingRead More »

From F# to Scala – implicits

Read the whole series: Part 1 — type infer­ence Part 2 — traits Part 3 — case class/object (ADTs) Part 4 — apply & unap­ply func­tions Part 5 — implic­its <- you’re here Hav­ing looked at case class and extrac­tors recent­ly, the next log­i­cal thing would be par­tial func­tions. Since Andrea point­ed me to a real­ly well arti­cle on the sub­ject I don’t think …

From F# to Scala – implic­itsRead More »

Serverless 1.X — enable API Gateway caching on request parameters

Hav­ing pre­vi­ous­ly blogged about the untrod­den path to enable caching on API Gate­way request para­me­ters in the Server­less frame­work 0.5.X, it’s a lit­tle dis­ap­point­ing that it’s still not offi­cial­ly fixed in the 1.X ver­sions… The Prob­lem The prob­lem is two-fold: there’s cur­rent­ly no way to spec­i­fy caching should be enabled for path & query string …

Server­less 1.X — enable API Gate­way caching on request para­me­tersRead More »

Yubl’s road to Serverless architecture – building a scalable push notification system

part 1: overview part 2: test­ing and CI/CD part 3: ops part 4: build­ing a scal­able noti­fi­ca­tion sys­tem <- you’re here part 5: build­ing a bet­ter rec­om­men­da­tion sys­tem Just before Yubl’s untime­ly demise we did an inter­est­ing piece of work to redesign the sys­tem for send­ing tar­get­ed push noti­fi­ca­tions to our users to improve reten­tion. The …

Yubl’s road to Server­less archi­tec­ture – build­ing a scal­able push noti­fi­ca­tion sys­temRead More »

Auto-scaling Kinesis streams with AWS Lambda

Fol­low­ing on from the last post where we dis­cussed 3 use­ful tips for work­ing effec­tive­ly with Lamb­da and Kine­sis, let’s look at how you can use Lamb­da to help you auto scale Kine­sis streams. Auto-scal­ing for DynamoDB and Kine­sis are two of the most fre­quent­ly request­ed fea­tures for AWS, as I write this post I’m sure the folks …

Auto-scal­ing Kine­sis streams with AWS Lamb­daRead More »

AWS Lambda —3 pro tips for working with Kinesis streams

At Yubl, we arrived at a non-triv­ial server­less archi­tec­ture where Lamb­da and Kine­sis became a promi­nent fea­ture of this archi­tec­ture. Whilst our expe­ri­ence using Lamb­da with Kine­sis was great in gen­er­al, there was a cou­ple of lessons that we had to learn along the way. Here are 3 use­ful tips to help you avoid some …

AWS Lamb­da —3 pro tips for work­ing with Kine­sis streamsRead More »

AWS Lambda — build yourself a URL shortener in 2 hours

An inter­est­ing require­ment came up at work this week where we dis­cussed poten­tial­ly hav­ing to run our own URL Short­en­er because the Uni­ver­sal Links mech­a­nism (in iOS 9 and above) requires a JSON man­i­fest at Since the OS doesn’t fol­low redi­rects this man­i­fest has to be host­ed on the URL shortener’s root domain. Owing to a lim­i­ta­tion on Apps­Fly­er it’s …

AWS Lamb­da — build your­self a URL short­en­er in 2 hoursRead More »

AWS Lambda — comparing platform performances

As Lamb­da adds node­js 6.10 to its sup­port­ed plat­forms I won­dered if there’s any per­for­mance dif­fer­ences between the plat­forms. Thank­ful­ly the tem­plates in the Server­less frame­work make it a rel­a­tive breeze to test it out with a sim­ple Hel­loWorld func­tion.   The Test see the test code here. I cre­at­ed a sim­ple Lamb­da func­tion for each plat­form that will …

AWS Lamb­da — com­par­ing plat­form per­for­mancesRead More »

Yubl’s road to Serverless architecture — ops

part 1: overview part 2: test­ing and CI/CD part 3: ops <- you’re here part 4: build­ing a scal­able noti­fi­ca­tion sys­tem part 5: build­ing a bet­ter rec­om­men­da­tion sys­tem A cou­ple of folks asked me about our strat­e­gy for mon­i­tor­ing, log­ging, etc. after part 2, and hav­ing watched Chris Swan talk about “Server­less Oper­a­tions is not a …

Yubl’s road to Server­less archi­tec­ture — opsRead More »

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.