Akamai Technologies, headquartered in Boston, offers Akamai Connected Cloud, a content delivery network (CDN) with a variety of services used to guarantee application, API, and media delivery.
N/A
AWS Lambda
Score 8.3 out of 10
N/A
AWS Lambda is a serverless computing platform that lets users run code without provisioning or managing servers. With Lambda, users can run code for virtually any type of app or backend service—all with zero administration. It takes of requirements to run and scale code with high availability.
I am just getting into AWS at work and it will be difficult to supplant the incumbent Akamai solution as there is simply nothing wrong with it - from my point of view. I suspect we will be looking at integrating Akamai/AWS solutions in the future as the effort and or business …
Akamai is a well-established brand name with a great product. It meets and many time exceeds the needs for global content delivery and security management layer at the edge. Fine grain security tuning seems cumbersome as the definition of the app keeps changing. It also requires an investment of time for the setup which doesn't necessarily make sense for smaller scale scenarios. Some products offered by AWS, Azure or the Google Cloud can be more tightly integrated with cloud provider offerings thus easier to configure.
Lambda excels at event-driven, short-lived tasks, such as processing files or building simple APIs. However, it's less ideal for long-running, computationally intensive, or applications that rely on carrying the state between jobs. Cold starts and constant load can easily balloon the costs.
Content offloading - once rules are set up within Akamai you don't need to even think about how many images or large JavaScript or CSS files (for example) are being served from your own estate, Akamai takes care of it all via rules that are quick, easy and flexible.
Page caching - for pages that don't change very often Akamai allows you to set up rules, quickly and easily, to serve up your page content for you, which takes even more load away from your origin servers.
Quick rollback - the Akamai system allows easy testing of rules and changes via a staging system, and also offers a quick rollback option, which is perfect for the rare occasions when something has been set up incorrectly.
The interface in their control centre could be a bit more user-friendly with some of the settings in places that you wouldn't expect them to be. The search offsets this problem to an extent but it's still sometimes slower than you'd like to find what you are looking for.
Developing test cases for Lambda functions can be difficult. For functions that require some sort of input it can be tough to develop the proper payload and event for a test.
For the uninitiated, deploying functions with Infrastructure as Code tools can be a challenging undertaking.
Logging the output of a function feels disjointed from running the function in the console. A tighter integration with operational logging would be appreciated, perhaps being able to view function logs from the Lambda console instead of having to navigate over to CloudWatch.
Sometimes its difficult to determine the correct permissions needed for Lambda execution from other AWS services.
I give it a seven is usability because it's AWS. Their UI's are always clunkier than the competition and their documentation is rather cumbersome. There's SO MUCH to dig through and it's a gamble if you actually end up finding the corresponding info if it will actually help. Like I said before, going to google with a specific problem is likely a better route because AWS is quite ubiquitous and chances are you're not the first to encounter the problem. That being said, using SAM (Serverless application model) and it's SAM Local environment makes running local instances of your Lambdas in dev environments painless and quite fun. Using Nodejs + Lambda + SAM Local + VS Code debugger = AWESOME.
Their support documents are excellent and provide a lot of useful information for all their services. The only reason I didn't give them a 10 is that the time it takes for them to respond to an issue could be slightly faster.
Amazon consistently provides comprehensive and easy-to-parse documentation of all AWS features and services. Most development team members find what they need with a quick internet search of the AWS documentation available online. If you need advanced support, though, you might need to engage an AWS engineer, and that could be an unexpected (or unwelcome) expense.
We've used -- and considered -- a whole number of CDN offerings. The good news is that almost all of the CDN products on the market are terrific, and will pay for themselves via increased customer satisfaction and lower monthly hosting bills. For some cases, we're still more likely to suggest CloudFlare (which has a free tier) or an integrated offering from a cloud provider, like Cloudfront.
AWS Lambda is good for short running functions, and ideally in response to events within AWS. Google App Engine is a more robust environment which can have complex code running for long periods of time, and across more than one instance of hardware. Google App Engine allows for both front-end and back-end infrastructure, while AWS Lambda is only for small back-end functions
Akamai RoI improved over a period of times since it comes with heavy costs, however global deliveries in over 100 counties and global web platforms usage helps improve RoI
With the complex UI challenges, ROI could be impacted negatively when you have to invest in operations and time.
Positive - Only paying for when code is run, unlike virtual machines where you pay always regardless of processing power usage.
Positive - Scalability and accommodating larger amounts of demand is much cheaper. Instead of scaling up virtual machines and increasing the prices you pay for that, you are just increasing the number of times your lambda function is run.
Negative - Debugging/troubleshooting, and developing for lambda functions take a bit more time to get used to, and migrating code from virtual machines and normal processes to Lambda functions can take a bit of time.