BT

QCon NY: Joe Emison on Serverless Patterns and Anti-Patterns

| by Srini Penchikala Follow 36 Followers on Jul 09, 2018. Estimated reading time: 2 minutes | NOTICE: The next QCon is in San Francisco Nov 5 - 9, 2018. Save an extra $100 with INFOQSF18!

Joe Emison, CTO at Branch, spoke at QCon New York 2018 Conference about the design patterns and anti-patterns in serverless architecture.

Emison stated that with the software we develop, especially the Software as a Service (SaaS)-based products, maintenance is very critical because the software will last for a long time. Software applications with less custom code is easier to maintain. It is important for developers to know that the software is all about the value it delivers, not what's in that software. Serverless provides the pragmatic approach to architecture, which allows developers to focus on business logic and not infrastructure.

Emison talked about how serverless architecture based applications work. Serverless doesn't mean no servers, it means "no server ops". Technologies like containers helped with abstracing away infrastructure and server-level operations. Serverless takes away even the application-level operations.

Four real-world application use cases were presented for "Fuel SQC", "Spaceful", "Commercial Search", and "Branch". The architecture of these applications included Angular and React on the web UI side, AuthO for user authentication, Cloudinary for image management, Netlify, Amazon's CloudFront, Amazon S3, Lambda@Edge, Cognito for security, and DynamoDB as the database.

Emison continued the presentation with discussion on design patterns for serverless applications, anti-patterns for greenfield applications and migrations, and real-world consequences of running serverless apps in production. Serverless patterns and anti-patterns he discussed included the following: 

  • Thick clients: You should have thick clients in your serverless based apps, but not thick middle tiers. Serverless doesn't work well on the client side (using frameworks like Ruby on Rails, Django, or Angular). Developers who are used to taking these frameworks and just moving them over to the serverless model are going to face challenges.
  • Functions: He said functions are the glue in this architecture model, but avoid functions calling other functions. You'll have to pay for every function execution which could become very expensive in terms of total cost. Deploy each function monolithically to address this concern.
  • Serviceful: Develop your applications based on a service-centric approach and build on the backend middle tier services as opposed to writing and running them yourself. But beware of multiple single points of failure (SPOF). Make sure the service you are using has the right uptime.
  • Custom research (and code): Custom research is a good practice in developing applications to leverage serverless architecture. But custom code can be an anti-pattern. It's ok to take some time to do the research and pick the right solution. Emison gave an example of this as, "prefer two weeks of planning and two days of development over two days of planning and two weeks of development".

For more information about this presentation, checkout the presentation slides on QCon New York conference website, as well as the other presentations in the track titled "Finding the Serverless Sweetspot".

Rate this Article

Adoption Stage
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Discuss

Login to InfoQ to interact with what matters most to you.


Recover your password...

Follow

Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.

Like

More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.

Notifications

Stay up-to-date

Set up your notifications and don't miss out on content that matters to you

BT