Serverless technology should not be applied to all application initiatives.
Serverless technology should not be applied to all application initiatives. The term “serverless” is a bit of a misnomer. It refers to a moment in time when computing resources are employed for the spin-up time of a few milliseconds, that execute cleanly, and that hand off the output to the next operation in a sequence. Not all applications can effectively be deployed using serverless platforms.
Hardware servers exist to create this “serverless” abstraction, but the software application component will only execute a transient abstraction of a server in a small point in time. A good use case might be an RFID hand scanner checking in a pallet of goods. The hand scanner software initiates a transaction on the backend that only needs to update a single field in a database and there could literally be hundreds of scanners operating simultaneously for short bursts of time. IoT scenarios are another good example of infrequent arrival of messages that only require a small amount of computing.
If the application business requirement approaches a 24/7 uptime, requires predictable, consistent performance, involves consistent throughput on I/O, it might not be a good fit.
Pros and Cons of Serverless Technology (SWOT)
Strength
Can derive significant cost savings over the more traditional fixed server(s) provisioning, regardless of who your cloud service provider (CSP) might be.
Using fairly straightforward operations dashboards you can see what applets are executing over time and which are rarely executed. This should allow you to refactor applications and cut out dead code faster.
Weakness
Contracting might require really good estimates on usage and length of time the serverless code runs. If this is a new application, those estimates may introduce some contracting/price errors over time.
Debugging a large complex set of applets is difficult. Test cases should be designed prior to writing any code
At the moment you cannot enable a debugging tool in the cloud.
Digital forensics for a server that exists for a couple 100 milliseconds make this a whole new area of concern.
Opportunity
New initiatives using an Agile framework may allow companies to spin up new initiatives quickly without a lot of sunk development costs and possibly a smaller initial operating cost.
Migrate individual components by breaking a workload into discrete functions and only implementing pieces onto serverless technology.
Threats
Re-architecting an existing application to take advantage of serverless computing may be a protracted process. This will impact your business case.If the application is not built around an event taxonomy or SOA then it is an unlikely candidate to take advantage of serverless architecture.
If the application is not built around an event taxonomy or SOA then it is an unlikely candidate to take advantage of serverless architecture.
Comments