Christa  Stehr

Christa Stehr

1603934180

Predicting The Cost and Performance of Serverless Workloads Under Different Workload

Serverless Computing is the most promising trend for the future of Cloud Computing. As of 2020, all major cloud providers offer a wide variety of serverless services. Some of the FaaS offerings provided withing different cloud providers are AWS Lambda, Google Cloud Functions, Google Cloud Run, Azure Functions, and IBM Cloud Functions. If you want to use your current infrastructure, you could also use the open-source alternatives like OpenFaaS, IronFunctions, Apache OpenWhisk, Kubeless, Fission, OpenLambda, and Knative.

In a previous article, I iterated the most important autoscaling patterns used in major cloud services, along with their pros/cons. In this post, I will go through the process of predicting key performance characteristics and the cost of scale-per-request serverless platforms (like AWS Lambda, IBM Cloud Functions, Azure Functions, and Google Cloud Functions) with different workload intensities (in terms of requests per second) using a performance model. I will also include a link to a simulator that can generate more detailed insights at the end.

The Performance Model

A performance model is “A model created to define the significant aspects of the way in which a proposed or actual system operates in terms of resources consumed, contention for resources, and delays introduced by processing or physical limitations” [source]. So using a performance model, you can “predict” how different characteristics of your service will change in different settings without needing to perform costly experiments for them.

The performance model we will be using today is from one of my recent papers called “Performance Modeling of Serverless Computing Platforms”. You can try an interactive version of my model to see what kind of information you can expect from it.

Prerequisites

The input properties that need to be provided by the user to the performance model along with some default values.

The only system property you need to provide is the “idle expiration time” which is the amount of time the serverless platform will keep your function instance around after your last request before terminating it and freeing its resources (to know more about this, you are going to have to read my paper, especially the system description section). The good news is, this is a fixed value for all workloads which you don’t need to think about and is 10 minutes for AWS Lambda, Google Cloud Function, and IBM Cloud Functions and 20 minutes for Azure Functions.

The next thing you need is the cold/warm response time of your function. The only way you can get this value, for now, is by actually running your code on the platform and measuring the response times. Of course, there are tools that can help you with that, but I haven’t used them, so, I would be glad if you could tell me in the comments about how they were. Tools like the AWS Lambda Power Tuning can also tell you the response time for different memory settings, so you can check which one fits your QoS guarantees.

#serverless-computing #performance #serverless-architecture #serverless #serverless-apps

What is GEEK

Buddha Community

Predicting The Cost and Performance of Serverless Workloads Under Different Workload
Christa  Stehr

Christa Stehr

1603934180

Predicting The Cost and Performance of Serverless Workloads Under Different Workload

Serverless Computing is the most promising trend for the future of Cloud Computing. As of 2020, all major cloud providers offer a wide variety of serverless services. Some of the FaaS offerings provided withing different cloud providers are AWS Lambda, Google Cloud Functions, Google Cloud Run, Azure Functions, and IBM Cloud Functions. If you want to use your current infrastructure, you could also use the open-source alternatives like OpenFaaS, IronFunctions, Apache OpenWhisk, Kubeless, Fission, OpenLambda, and Knative.

In a previous article, I iterated the most important autoscaling patterns used in major cloud services, along with their pros/cons. In this post, I will go through the process of predicting key performance characteristics and the cost of scale-per-request serverless platforms (like AWS Lambda, IBM Cloud Functions, Azure Functions, and Google Cloud Functions) with different workload intensities (in terms of requests per second) using a performance model. I will also include a link to a simulator that can generate more detailed insights at the end.

The Performance Model

A performance model is “A model created to define the significant aspects of the way in which a proposed or actual system operates in terms of resources consumed, contention for resources, and delays introduced by processing or physical limitations” [source]. So using a performance model, you can “predict” how different characteristics of your service will change in different settings without needing to perform costly experiments for them.

The performance model we will be using today is from one of my recent papers called “Performance Modeling of Serverless Computing Platforms”. You can try an interactive version of my model to see what kind of information you can expect from it.

Prerequisites

The input properties that need to be provided by the user to the performance model along with some default values.

The only system property you need to provide is the “idle expiration time” which is the amount of time the serverless platform will keep your function instance around after your last request before terminating it and freeing its resources (to know more about this, you are going to have to read my paper, especially the system description section). The good news is, this is a fixed value for all workloads which you don’t need to think about and is 10 minutes for AWS Lambda, Google Cloud Function, and IBM Cloud Functions and 20 minutes for Azure Functions.

The next thing you need is the cold/warm response time of your function. The only way you can get this value, for now, is by actually running your code on the platform and measuring the response times. Of course, there are tools that can help you with that, but I haven’t used them, so, I would be glad if you could tell me in the comments about how they were. Tools like the AWS Lambda Power Tuning can also tell you the response time for different memory settings, so you can check which one fits your QoS guarantees.

#serverless-computing #performance #serverless-architecture #serverless #serverless-apps

Ron  Cartwright

Ron Cartwright

1600596000

Improve Your Cost Management with AWS Saving Plans

The adaptability and flexibility of today’s cloud services present a lot of opportunities to cut infrastructure costs. Amazon Web Services and its plethora of services let you set up any kind of cloud environment for any type of application, without forcing you to make long-term commitments. At the very least, you don’t have to make a big initial investment to set up your cloud environments.

AWS resources are designed to make deploying cloud-native applications easy and affordable. Affordability is always important for businesses because cost-efficient applications guarantee higher returns on cloud investment. The way AWS services are set up allows for easy scaling of apps and cloud resource usage, but keeping your cloud environment efficient is not without its challenges.

#aws #amazon web services #cost #cost optimization #cost analysis #cost management #cost analytics #aws costs

Ashish parmar

Ashish parmar

1611567681

Serverless Applications - Pros and Cons to Help Businesses Decide - Prismetric

In the past few years, especially after Amazon Web Services (AWS) introduced its Lambda platform, serverless architecture became the business realm’s buzzword. The increasing popularity of serverless applications saw market leaders like Netflix, Airbnb, Nike, etc., adopting the serverless architecture to handle their backend functions better. Moreover, serverless architecture’s market size is expected to reach a whopping $9.17 billion by the year 2023.

Global_Serverless_Architecture_Market_2019-2023

Why use serverless computing?
As a business it is best to approach a professional mobile app development company to build apps that are deployed on various servers; nevertheless, businesses should understand that the benefits of the serverless applications lie in the possibility it promises ideal business implementations and not in the hype created by cloud vendors. With the serverless architecture, the developers can easily code arbitrary codes on-demand without worrying about the underlying hardware.

But as is the case with all game-changing trends, many businesses opt for serverless applications just for the sake of being up-to-date with their peers without thinking about the actual need of their business.

The serverless applications work well with stateless use cases, the cases which execute cleanly and give the next operation in a sequence. On the other hand, the serverless architecture is not fit for predictable applications where there is a lot of reading and writing in the backend system.

Another benefit of working with the serverless software architecture is that the third-party service provider will charge based on the total number of requests. As the number of requests increases, the charge is bound to increase, but then it will cost significantly less than a dedicated IT infrastructure.

Defining serverless software architecture
In serverless software architecture, the application logic is implemented in an environment where operating systems, servers, or virtual machines are not visible. Although where the application logic is executed is running on any operating system which uses physical servers. But the difference here is that managing the infrastructure is the soul of the service provider and the mobile app developer focuses only on writing the codes.

There are two different approaches when it comes to serverless applications. They are

Backend as a service (BaaS)
Function as a service (FaaS)

  1. Backend as a service (BaaS)
    The basic required functionality of the growing number of third party services is to provide server-side logic and maintain their internal state. This requirement has led to applications that do not have server-side logic or any application-specific logic. Thus they depend on third-party services for everything.

Moreover, other examples of third-party services are Autho, AWS Cognito (authentication as a service), Amazon Kinesis, Keen IO (analytics as a service), and many more.

  1. Function as a Service (FaaS)
    FaaS is the modern alternative to traditional architecture when the application still requires server-side logic. With Function as a Service, the developer can focus on implementing stateless functions triggered by events and can communicate efficiently with the external world.

FaaS serverless architecture is majorly used with microservices architecture as it renders everything to the organization. AWS Lambda, Google Cloud functions, etc., are some of the examples of FaaS implementation.

Pros of Serverless applications
There are specific ways in which serverless applications can redefine the way business is done in the modern age and has some distinct advantages over the traditional could platforms. Here are a few –

🔹 Highly Scalable
The flexible nature of the serverless architecture makes it ideal for scaling the applications. The serverless application’s benefit is that it allows the vendor to run each of the functions in separate containers, allowing optimizing them automatically and effectively. Moreover, unlike in the traditional cloud, one doesn’t need to purchase a certain number of resources in serverless applications and can be as flexible as possible.

🔹 Cost-Effective
As the organizations don’t need to spend hundreds and thousands of dollars on hardware, they don’t need to pay anything to the engineers to maintain the hardware. The serverless application’s pricing model is execution based as the organization is charged according to the executions they have made.

The company that uses the serverless applications is allotted a specific amount of time, and the pricing of the execution depends on the memory required. Different types of costs like presence detection, access authorization, image processing, etc., associated with a physical or virtual server is completely eliminated with the serverless applications.

🔹 Focuses on user experience
As the companies don’t always think about maintaining the servers, it allows them to focus on more productive things like developing and improving customer service features. A recent survey says that about 56% of the users are either using or planning to use the serverless applications in the coming six months.

Moreover, as the companies would save money with serverless apps as they don’t have to maintain any hardware system, it can be then utilized to enhance the level of customer service and features of the apps.

🔹 Ease of migration
It is easy to get started with serverless applications by porting individual features and operate them as on-demand events. For example, in a CMS, a video plugin requires transcoding video for different formats and bitrates. If the organization wished to do this with a WordPress server, it might not be a good fit as it would require resources dedicated to serving pages rather than encoding the video.

Moreover, the benefits of serverless applications can be used optimally to handle metadata encoding and creation. Similarly, serverless apps can be used in other plugins that are often prone to critical vulnerabilities.

Cons of serverless applications
Despite having some clear benefits, serverless applications are not specific for every single use case. We have listed the top things that an organization should keep in mind while opting for serverless applications.

🔹 Complete dependence on third-party vendor
In the realm of serverless applications, the third-party vendor is the king, and the organizations have no options but to play according to their rules. For example, if an application is set in Lambda, it is not easy to port it into Azure. The same is the case for coding languages. In present times, only Python developers and Node.js developers have the luxury to choose between existing serverless options.

Therefore, if you are planning to consider serverless applications for your next project, make sure that your vendor has everything needed to complete the project.

🔹 Challenges in debugging with traditional tools
It isn’t easy to perform debugging, especially for large enterprise applications that include various individual functions. Serverless applications use traditional tools and thus provide no option to attach a debugger in the public cloud. The organization can either do the debugging process locally or use logging for the same purpose. In addition to this, the DevOps tools in the serverless application do not support the idea of quickly deploying small bits of codes into running applications.

#serverless-application #serverless #serverless-computing #serverless-architeture #serverless-application-prosand-cons

Christa  Stehr

Christa Stehr

1602681082

Overcoming Common Serverless Challenges with Mainframe CICS Programs

By this point most enterprises, including those running on legacy infrastructures, are familiar with the benefits of serverless computing:

  • Greater scalability
  • Faster development
  • More efficient deployment
  • Lower cost

The benefits of agility and cost reduction are especially relevant in the current macroeconomic environment when customer behavior is changing, end-user needs are difficult to predict, and development teams are under pressure to do more with less.

So serverless is a no-brainer, right?

Not exactly. Serverless might be relatively painless for a new generation of cloud-native software companies that grew up in a world of APIs and microservices, but it creates headaches for the many organizations that still rely heavily on legacy infrastructure.

In particular, enterprises running mainframe CICS programs are likely to encounter frustrating stumbling blocks on the path to launching Functions as a Service (FaaS). This population includes global enterprises that depend on CICS applications to effectively manage high-volume transactional processing requirements – particularly in the banking, financial services, and insurance industries.

These organizations stand to achieve time and cost savings through a modern approach to managing legacy infrastructure, as opposed to launching serverless applications on a brittle foundation. Here are three of the biggest obstacles they face and how to overcome them.

Challenge #1

Middleware that introduces complexity, technical debt, and latency. Many organizations looking to integrate CICS applications into a microservices or serverless architecture rely on middleware (e.g., an ESB or SOA) to access data from the underlying applications. This strategy introduces significant runtime performance challenges and creates what one bank’s chief architect referred to as a “lasagna architecture,” making DevOps impossible.

#serverless architecture #serverless functions #serverless benefits #mainframes #serverless api #serverless integration

Banking App Development Cost - 8 Hidden Factors

Since 1994, Digital banking has been here. It is a very long time, but digital banking through mobile devices is entirely new to the banking industry. It all started when Atom became the first digital-only bank in the UK.

Nowadays, Tech-savvy customers expect corporations to support their digital movement, and because of this, almost every industry has adopted technologies to stay relevant with these modern customers. Most of the newbies who plan to develop a banking app have two questions in mind: “What is the cost of developing a banking application” and “Which hidden factors affect the cost of developing a banking app?”

You can get all the answers to these questions here, because this article will take you through the cost of developing a banking app, the features of banking apps, and much other pertinent information. After reading this, you will be able to plan better for your mobile banking app development. But before directly jumping into the cost of mobile banking app development, let’s take a look at the global digital payment market size of mobile banking.

Global Digital Payment Market Size

According to GlobalNewsWire, by 2026, the Global Digital Payment Market size is estimated to reach $175.8 billion, rising at a market growth of 20% CAGR during the forecast period.

Around 23% of millennials use mobile banking apps daily.
Around 49.2% of total smartphone users use mobile banking apps.
41% of Americans said that mobile banking apps had minimized their concerns about managing finances.

Banking app development cost

Data Source: Statista

As you can see, the data clearly indicates that the percentage of smartphone users are increasing day-by-day. Therefore, by engaging in your own mobile banking app development currently, you will be able to take advantage of the growth in mobile users. But, the cost of developing a banking application depends on so many factors like the platform, features, technologies, and so on.

Mobile banking app development cost

Cost of developing a banking app depends on various factors. To give you a rough idea of the mobile banking application development cost, the total development time for a fully-featured app sums to 3760 hours. Considering hourly rate for fintech projects of $25, the cost of developing a feature-loaded banking app stands around $94k.

Banking Application Development Cost depends on different phases such as:

  • Research and Planning
  • UI/UX Design
  • Development
  • Testing
  • Maintenance and Support

8 Hidden Factors of Costs of Mobile Banking App Development

1. Push Notifications

It’s not easy to imagine an app that does not utilize this necessary mobile capability. Push notifications always increase your users’ engagement with your mobile banking app and encourage the desired action. Push notifications are of three types:

  1. Transactional notifications notify users about their account updates.

  2. The Application-based notifications indicate when the mobile banking app requires the user’s attention, whether related to the password change requests or document submissions.

  3. Promotional notifications are to grab the attention of customers to offer discounts and attractive deals.

2. Chatbot Integration

For most users, mobile banking has a steep learning curve, and due to that, the customer will require immediate assistance on various occasions. Hence, creating a chatbot for customer service is the best way for many institutions to improve their customer service availability. The chatbots will save you a lot of time and money, whilst providing customer support 24/7. But this feature has a separate development process, and therefore you have to pay separately for this.

3. Servers

Servers are where your mobile banking app will be hosted. If you are not with the largest enterprises, you will want to outsource hosting from Amazon, Azure, or Google, which will result in more costs.

4. Content Delivery Network

A CDN is a system that is used to deliver content to the app based on the origin of the content, the content delivery server, and the geographic location of the particular user. In simple words, if you have users across the globe, and they have to keep coming back to one far off location to access the content, then the app will not perform in a good way. So, if you want your mobile banking app to perform effectively, you should use a content delivery network, because it reduces the app loading time and also increases the responsiveness of the app.

5. Development Tools

If you want to use paid deployment tools like iBuildApp, Appy Pie, and IBM MobileFirst, to develop your mobile banking apps, you will need to subscribe to them over the lifespan of your app. This will also affect your banking app development cost.

6. Android and iOS Updates

As we all know, both platforms constantly release updates, and those updates require maintenance. Depending on the extent of maintenance required, the cost in the long-term can sometimes be significant.

7. APIs

Every mobile app usually has multiple third-party APIs that they interact with, especially at the enterprise level. If you make changes to any of these applications, they will require periodic maintenance of your APIs. For instance, Facebook updated their API version four times in 2016; now, what if you want to integrate with Facebook? You will need to update your app to accommodate those changes.

8. Bugs

As you know, every app has bugs, and not even a single developer can assure you that there will be no bugs in the future in your app. It’s just that sometimes they go undiscovered for months or even years. User communities are not kind to apps that are slow to address the issues that they have reported.

Conclusion

The cost of banking application development not only depend on the features of the banking application, but they are also heavily affected by the hidden factors I have mentioned. The primary issue with mobile banking app development cost is the amount of individual components that you need to gather. Each of them can cost thousands of dollars, and these costs will continue throughout the lifespan of your app. However, the rewards that come from a successful mobile banking app development project are huge.

Pro Tip: The cost of developing a banking application greatly depends on the hourly rates of programmers and the expertise of the team. FinTech experts are able to complete these projects much more efficiently.

#banking app development cost #banking application development cost #cost of developing a banking app #cost of developing a banking application #mobile banking app development cost #mobile banking application development cost