Slides from my talk on functions-as-a-service at Wyncode Academy in Miami in April '18. Provides an overview of the tradeoffs between different FaaS providers
A Practical Introduction to Functions-as-a-ServiceValeri Karpov
This document discusses functions-as-a-service (FaaS) and provides an introduction to using AWS Lambda. It outlines the advantages of FaaS such as infinitely scalable devops without server management. It demonstrates a basic "Hello World" Lambda function and connecting Lambda functions to MongoDB. It notes limitations such as cold start times and that database performance is more important than app servers for most use cases. It recommends FaaS for non performance-sensitive backends and provides further reading on serverless platforms and async/await.
In this talk we will cover:
1. Using concurrency to maximize hardware (Elixir, Clojure, Haskell)
2. Serverless technologies for backend architecture (Amazon AWS Lambda, Microsoft Azure Cloud Functions)
3. BaaS – Backend as a Service (Google Firebase, etc)
This document discusses various options for deploying Rails applications in production environments, including Platform as a Service (PaaS) options like Heroku, shared web hosting, virtual private servers, and infrastructure as a service providers like Amazon Web Services. It also covers selecting and configuring a web server (Nginx or Apache), Rails application servers (Unicorn, Thin, Passenger), and deployment tools like Capistrano. The ideal scalable architecture uses a content delivery network, load balancers, and multiple application servers behind a reverse proxy like Nginx.
This document provides instructions for setting up Ruby and Rails on different platforms. It discusses using Rails Installer or Ruby Installer for Windows setup. It recommends Git for Windows, msysGit, or GitHub for Windows. It notes the OS X system versions of Ruby and Rails are often old and recommends using Homebrew. It provides instructions for installing GCC and prerequisites on Linux like Ubuntu before installing Ruby. It also discusses using RVM, rbenv, or pik for managing multiple Ruby versions.
Aws 12 Month Free Tier for Web Designers and DevelopersDylan Burris
An open source focused (Drupal and WordPress) breakdown for web designers and web developers of resources which are available for free on the Amazon Web Services Free tier.
Velocity is a distributed cache that allows sharing of cached data across multiple servers. In version 1, it is best suited for session state caching due to limitations in handling dependencies between cached objects. Future versions will expand its capabilities to support full output caching and read-write operations. Currently, Velocity provides a basic set of cache operations and management functionality through its client and server configuration.
1) RDI uses RavenDB embedded in over 36,000 restaurants with around 500,000 individual machines processing $50,000 per second in payments.
2) RavenDB allows for unit testing without mocking the database, advanced statistics on data persistence, and transparent replication with high availability.
3) The challenges of using RavenDB on specialized older hardware with low memory and ESENT include fine-tuning memory usage, disabling caching, and automating recovery from unclean shutdowns with ESENTUTL.EXE.
This document discusses using ReactPHP as an event-driven and non-blocking I/O HTTP server with Symfony, a request-response PHP framework. ReactPHP runs the application event loop and handles requests without bootstrap code on each request, improving performance. Symfony is lightweight and supports modern practices. Benchmarks show ReactPHP with Symfony is faster than the default Symfony configuration with Apache and PHP-FPM. Some challenges are memory management, file uploads, and database interactions in long-running processes.
Gunnar Peipman discusses what's new in ASP.NET vNext. Key updates include support for true side-by-side deployment, a cloud optimized .NET Core runtime that takes up only 11MB, and ASP.NET components being merged into a single framework. ASP.NET vNext apps are designed to be cloud ready. The new K runtime features multiple layers including the CLR native host and managed entry point. KVM and KPM are also introduced as tools for managing the K runtime and packages.
Zaiyang Li discusses the technology stack for a project, including the front-end framework Angular and build tools like Webpack, and the back-end framework ASP.NET Core with libraries like Dapper and testing tools like Xunit and Moq. Chart.js is used for data visualization, and a bespoke event sourcing framework is in active development to run in the same process as the web server. Protocol buffers are used for serialization and provide benefits like high performance and backward compatibility.
Teaching Cloud to the Programmers of TomorrowMike Crabb
This document discusses Robert Gordon University's use of cloud computing in its computer science curriculum. It describes how courses from first year HTML to final year projects utilize cloud servers for teaching web programming and deploying student work. This allows students to focus on coding rather than server maintenance and eases collaboration. Using the cloud improves students' employability by gaining experience with tools like Git and deploying to platforms such as Microsoft Azure. It also benefits lecturers by increasing security, stability and trackability compared to maintaining physical servers. The cloud facilitates research projects through easier code and data sharing between collaborators. However, cloud services require flexibility as no single solution meets all needs.
Asp.NET Core is a cross-platform, high-performance, open-source framework for building modern, cloud-based, Internet-connected applications. With asp.NET Core, you can: Build web apps and services, IoT apps, and mobile backends; Use your favorite development tools on Windows, macOS, and Linux; Deploy to the cloud or on-premises; Run on .NET Core or .NET Framework. Millions of developers have used (and continue to use) asp.NET 4.x to create web apps. In this presentation we are going to talk about real time apps using these technology. Asp.NET Core
This document discusses moving a web application to Amazon Web Services (AWS) and managing it with RightScale. It outlines the challenges of the previous single-server deployment, including lack of scalability and single point of failure. The solution presented uses AWS services like EC2, S3, EBS and RDS combined with RightScale for management and Zend Server for the application architecture. This provides auto-scaling, high availability, backups and easier management compared to the previous setup. Alternatives to AWS and RightScale are also briefly discussed.
JavaScript has inconsistent and buggy behavior across different browsers due to variations in rendering engines like Trident, WebKit, and Gecko, and JavaScript engines like Spider Monkey, V8, SquirrelFish, and Chakra. JavaScript was created in the 1990s and introduced the concept of Ajax in 2005, allowing dynamic web page updates without reloading the entire page. This document provides resources on how browsers work and the history of Ajax.
Siddharth Vijayakrishnan discusses how web servers work and compares Apache to other web servers like Lighttpd. He explains that while Apache is popular, its multi-process model does not scale well under heavy loads. Lighttpd uses an event-driven model and single process design that allows it to outperform Apache in benchmarks. It has gained popularity as a faster alternative to Apache for serving dynamic content. The document also outlines future areas of improvement for Lighttpd.
A presentation I delivered to the Melbourne Ruby User's Group on some of the things Rails developers need to be aware of when getting a Rails application running on top of JRuby.
This document discusses content delivery networks (CDNs) and considerations for choosing a CDN. It explains that a CDN can decrease latency, prevent server overload, and increase security by caching and delivering content from edge servers closer to users. Key factors in choosing a CDN include traffic volume, content type (static vs dynamic), and level of user engagement. The document provides examples of how a CDN can optimize dynamic websites using technologies like Edge Side Includes to improve caching. It emphasizes the importance of working with CDN experts and covers technical topics related to deploying and monitoring a CDN.
Building & Testing Scalable Rails Applicationsevilmike
This document discusses building scalable Rails applications. It covers using multiple Rails processes and servers to handle concurrent requests. It recommends optimizing database queries, caching, offloading long tasks, and serving static assets externally. It also provides tips for load testing including using realistic data and environments, considering location and caching effects, and paying attention to request headers.
The document summarizes the author's journey from being a C# developer to adopting Scala. He was tired of Microsoft's ecosystem and wanted to use Linux. Scala met his criteria of being open source, cross-platform, functional, and modern. He used Scala with Play Framework and MongoDB to build systems for Tehran International Book Fair that had to handle high traffic. While one project failed initially due to server limitations, he was able to fix it and complete the projects successfully on a larger server. He is now happy with his Scala ecosystem.
Cassandra Summit 2014: Deploying Cassandra for Call of DutyDataStax Academy
Presenters: Seán O Sullivan, Service Reliability Engineer & Tim Czerniak, Software Engineer at Demonware
This presentation covers the eight-month evaluation process we underwent to migrate some of Call of Duty’s core services from MySQL to Cassandra. We will outline our requirements, the process we followed for the evaluation, decisions we made around our schema, configuration and hardware, and some issues we encountered.
This document discusses scaling a web service to handle increasing traffic levels. It outlines 5 stages of scaling: [1] Starting on a shared hosting plan and moving to dedicated hardware; [2] Running multiple web and database servers; [3] Implementing a master-slave database configuration; [4] Adding an application server and load balancer; [5] Using a database cluster. It also provides tips for reducing connections, files sizes, and optimizing caching to improve performance during each stage. Monitoring and further scaling the system to additional demands is mentioned as an ongoing process.
Orchestrator for QlikView: add-on product descriptionMarco Zampieri
The QlikView Desktop and Server add-on that facilitates the automation of QlikView tasks!
With Orchestrator for Qlikview® you could automates many tasks and activities of QlikView documents that now you had to perform manually, making the Qlikview activities easy and usefull.
Orchestrator is the perfect application to take full advantage of the capabilities of QlikView, without having to learn complex programming languages or macro automation.
Send file to FTP server, create triggers to start an automation or launch reload by calling edx has never been so easy!
A few mouse clicks and all done!
Download and try it free.
This document discusses techniques for writing scalable ASP.NET applications, including caching output, objects, and data; managing paging; reducing network loads by optimizing viewstate and using compression; and distributed caching options like Velocity, NCache, and memcached. It provides an overview of these techniques and resources for further information.
ASP.NET 5 is open source and cross-platform, allowing .NET applications to run on Windows, Linux, and OS X. It features a modular architecture and tools like KVM, KRE, and KPM for managing versions and running ASP.NET apps. Developers can use Mono on OS X along with plugins for editors like Sublime Text. JavaScript tools like Grunt and Bower are also discussed for managing dependencies and tasks. The document demonstrates deploying .NET applications to Linux using Visual Studio and Docker.
What comes to you if you want to have some fun with GraphQL?
Join us for the meetup in Munich and enjoy the interesting talk about ‚GraphQL vs. (the) REST ‘.
In this session our colleagues Tsvetan Nikolov (Senior Developer at coliquio) and Tom Sedlmeier (Senior Developer at coliquio) will discuss the basic concepts and how to use them.
We will present you GraphQL on the backend and on the client side with Apollo.
popular FULL stacks and full reference of an MEAN stack with real time applications and more.MEAN stack is mainly for single page web applications and have an professional dynamic web page.
The document provides an overview of the Node Package Manager (npm). It discusses how npm works to reduce friction in the software development process by making it easy for developers to install packages and dependencies without conflicts. It describes npm's vision of avoiding "dependency hell" and its strategies for achieving this like ensuring consistent interfaces and reducing excessive metadata requirements. The document also summarizes key npm commands, how installations work, and future plans like binary distributions, an automated testing system called npat, and build farms to test packages on multiple platforms.
Kiedy aplikacja napisana w Serverless Frameworku jest mała, można zamieść niektóre rzeczy pod dywan. Ale co, kiedy po kilku miesiącach zaczyna wychodzić spod niego prawdziwy potwór? Co, kiedy musisz przetestować jedną lambdę na środowisku, a deploy całego stacka trwa 20 minut? No i jak przeorganizować aplikację wiedząc, że ciągle będzie rosła? Dowiedz się, jak rozbiliśmy naszą hurtownię danych wykorzystując Serverless Compose. Jakie przyniosło nam to efekty i o czym dowiedzieliśmy się w trakcie.
This document discusses using ReactPHP as an event-driven and non-blocking I/O HTTP server with Symfony, a request-response PHP framework. ReactPHP runs the application event loop and handles requests without bootstrap code on each request, improving performance. Symfony is lightweight and supports modern practices. Benchmarks show ReactPHP with Symfony is faster than the default Symfony configuration with Apache and PHP-FPM. Some challenges are memory management, file uploads, and database interactions in long-running processes.
Gunnar Peipman discusses what's new in ASP.NET vNext. Key updates include support for true side-by-side deployment, a cloud optimized .NET Core runtime that takes up only 11MB, and ASP.NET components being merged into a single framework. ASP.NET vNext apps are designed to be cloud ready. The new K runtime features multiple layers including the CLR native host and managed entry point. KVM and KPM are also introduced as tools for managing the K runtime and packages.
Zaiyang Li discusses the technology stack for a project, including the front-end framework Angular and build tools like Webpack, and the back-end framework ASP.NET Core with libraries like Dapper and testing tools like Xunit and Moq. Chart.js is used for data visualization, and a bespoke event sourcing framework is in active development to run in the same process as the web server. Protocol buffers are used for serialization and provide benefits like high performance and backward compatibility.
Teaching Cloud to the Programmers of TomorrowMike Crabb
This document discusses Robert Gordon University's use of cloud computing in its computer science curriculum. It describes how courses from first year HTML to final year projects utilize cloud servers for teaching web programming and deploying student work. This allows students to focus on coding rather than server maintenance and eases collaboration. Using the cloud improves students' employability by gaining experience with tools like Git and deploying to platforms such as Microsoft Azure. It also benefits lecturers by increasing security, stability and trackability compared to maintaining physical servers. The cloud facilitates research projects through easier code and data sharing between collaborators. However, cloud services require flexibility as no single solution meets all needs.
Asp.NET Core is a cross-platform, high-performance, open-source framework for building modern, cloud-based, Internet-connected applications. With asp.NET Core, you can: Build web apps and services, IoT apps, and mobile backends; Use your favorite development tools on Windows, macOS, and Linux; Deploy to the cloud or on-premises; Run on .NET Core or .NET Framework. Millions of developers have used (and continue to use) asp.NET 4.x to create web apps. In this presentation we are going to talk about real time apps using these technology. Asp.NET Core
This document discusses moving a web application to Amazon Web Services (AWS) and managing it with RightScale. It outlines the challenges of the previous single-server deployment, including lack of scalability and single point of failure. The solution presented uses AWS services like EC2, S3, EBS and RDS combined with RightScale for management and Zend Server for the application architecture. This provides auto-scaling, high availability, backups and easier management compared to the previous setup. Alternatives to AWS and RightScale are also briefly discussed.
JavaScript has inconsistent and buggy behavior across different browsers due to variations in rendering engines like Trident, WebKit, and Gecko, and JavaScript engines like Spider Monkey, V8, SquirrelFish, and Chakra. JavaScript was created in the 1990s and introduced the concept of Ajax in 2005, allowing dynamic web page updates without reloading the entire page. This document provides resources on how browsers work and the history of Ajax.
Siddharth Vijayakrishnan discusses how web servers work and compares Apache to other web servers like Lighttpd. He explains that while Apache is popular, its multi-process model does not scale well under heavy loads. Lighttpd uses an event-driven model and single process design that allows it to outperform Apache in benchmarks. It has gained popularity as a faster alternative to Apache for serving dynamic content. The document also outlines future areas of improvement for Lighttpd.
A presentation I delivered to the Melbourne Ruby User's Group on some of the things Rails developers need to be aware of when getting a Rails application running on top of JRuby.
This document discusses content delivery networks (CDNs) and considerations for choosing a CDN. It explains that a CDN can decrease latency, prevent server overload, and increase security by caching and delivering content from edge servers closer to users. Key factors in choosing a CDN include traffic volume, content type (static vs dynamic), and level of user engagement. The document provides examples of how a CDN can optimize dynamic websites using technologies like Edge Side Includes to improve caching. It emphasizes the importance of working with CDN experts and covers technical topics related to deploying and monitoring a CDN.
Building & Testing Scalable Rails Applicationsevilmike
This document discusses building scalable Rails applications. It covers using multiple Rails processes and servers to handle concurrent requests. It recommends optimizing database queries, caching, offloading long tasks, and serving static assets externally. It also provides tips for load testing including using realistic data and environments, considering location and caching effects, and paying attention to request headers.
The document summarizes the author's journey from being a C# developer to adopting Scala. He was tired of Microsoft's ecosystem and wanted to use Linux. Scala met his criteria of being open source, cross-platform, functional, and modern. He used Scala with Play Framework and MongoDB to build systems for Tehran International Book Fair that had to handle high traffic. While one project failed initially due to server limitations, he was able to fix it and complete the projects successfully on a larger server. He is now happy with his Scala ecosystem.
Cassandra Summit 2014: Deploying Cassandra for Call of DutyDataStax Academy
Presenters: Seán O Sullivan, Service Reliability Engineer & Tim Czerniak, Software Engineer at Demonware
This presentation covers the eight-month evaluation process we underwent to migrate some of Call of Duty’s core services from MySQL to Cassandra. We will outline our requirements, the process we followed for the evaluation, decisions we made around our schema, configuration and hardware, and some issues we encountered.
This document discusses scaling a web service to handle increasing traffic levels. It outlines 5 stages of scaling: [1] Starting on a shared hosting plan and moving to dedicated hardware; [2] Running multiple web and database servers; [3] Implementing a master-slave database configuration; [4] Adding an application server and load balancer; [5] Using a database cluster. It also provides tips for reducing connections, files sizes, and optimizing caching to improve performance during each stage. Monitoring and further scaling the system to additional demands is mentioned as an ongoing process.
Orchestrator for QlikView: add-on product descriptionMarco Zampieri
The QlikView Desktop and Server add-on that facilitates the automation of QlikView tasks!
With Orchestrator for Qlikview® you could automates many tasks and activities of QlikView documents that now you had to perform manually, making the Qlikview activities easy and usefull.
Orchestrator is the perfect application to take full advantage of the capabilities of QlikView, without having to learn complex programming languages or macro automation.
Send file to FTP server, create triggers to start an automation or launch reload by calling edx has never been so easy!
A few mouse clicks and all done!
Download and try it free.
This document discusses techniques for writing scalable ASP.NET applications, including caching output, objects, and data; managing paging; reducing network loads by optimizing viewstate and using compression; and distributed caching options like Velocity, NCache, and memcached. It provides an overview of these techniques and resources for further information.
ASP.NET 5 is open source and cross-platform, allowing .NET applications to run on Windows, Linux, and OS X. It features a modular architecture and tools like KVM, KRE, and KPM for managing versions and running ASP.NET apps. Developers can use Mono on OS X along with plugins for editors like Sublime Text. JavaScript tools like Grunt and Bower are also discussed for managing dependencies and tasks. The document demonstrates deploying .NET applications to Linux using Visual Studio and Docker.
What comes to you if you want to have some fun with GraphQL?
Join us for the meetup in Munich and enjoy the interesting talk about ‚GraphQL vs. (the) REST ‘.
In this session our colleagues Tsvetan Nikolov (Senior Developer at coliquio) and Tom Sedlmeier (Senior Developer at coliquio) will discuss the basic concepts and how to use them.
We will present you GraphQL on the backend and on the client side with Apollo.
popular FULL stacks and full reference of an MEAN stack with real time applications and more.MEAN stack is mainly for single page web applications and have an professional dynamic web page.
The document provides an overview of the Node Package Manager (npm). It discusses how npm works to reduce friction in the software development process by making it easy for developers to install packages and dependencies without conflicts. It describes npm's vision of avoiding "dependency hell" and its strategies for achieving this like ensuring consistent interfaces and reducing excessive metadata requirements. The document also summarizes key npm commands, how installations work, and future plans like binary distributions, an automated testing system called npat, and build farms to test packages on multiple platforms.
Kiedy aplikacja napisana w Serverless Frameworku jest mała, można zamieść niektóre rzeczy pod dywan. Ale co, kiedy po kilku miesiącach zaczyna wychodzić spod niego prawdziwy potwór? Co, kiedy musisz przetestować jedną lambdę na środowisku, a deploy całego stacka trwa 20 minut? No i jak przeorganizować aplikację wiedząc, że ciągle będzie rosła? Dowiedz się, jak rozbiliśmy naszą hurtownię danych wykorzystując Serverless Compose. Jakie przyniosło nam to efekty i o czym dowiedzieliśmy się w trakcie.
NoSQL data stores have extreme requirements for throughput, scalability, and management. Overview of the advantages of the new OSv cloud OS for NoSQL applications.
This document provides an overview of Platform as a Service (PaaS) options for Java applications, including Amazon Elastic Beanstalk, Red Hat OpenShift, CloudFoundry, and CloudBees. It discusses the benefits of PaaS for quick deployment and hosting of Java applications. It then describes several popular PaaS platforms in more detail, focusing on their features, pricing, and how they compare for Java development.
This document provides an overview of Platform as a Service (PaaS) options for Java applications, including Amazon Elastic Beanstalk, Red Hat OpenShift, CloudFoundry, and Google App Engine. It discusses features of PaaS like quick deployment, automatic scaling, and reduced maintenance compared to Infrastructure as a Service (IaaS). Specific PaaS products covered include their supported languages, frameworks, and cloud integration. Questions around capabilities like databases, monitoring, and custom domains are also addressed.
Introduction to amazon web services for developersCiklum Ukraine
Introduction to Amazon Web Services for developers
About presenter
Roman Gomolko with 11 years of experience in development including 4 years of day-to-day work with Amazon Web Services.
Disclaimer
Cloud-hosting is buzz-word for a while and in my talk I would like to give an introduction to Amazon Web Services (AWS).
We will talk about basic building blocks of AWS like EC2, ELB, ASG, S3, CloudFront, RDS, IAM, VPC and other scary or funny abbreviations.
Then we will discuss how to migrate existing applications to AWS. This topic includes:
• how to design infrastructure and services to use when migrating
• how to choose proper instance types
• how to estimate infrastructure cost
• how it will affect performance of application migrated
Then we will make an overview of services provided by AWS and possible apply in your current of future applications:
• SQS
• DynamoDB
• Kinesis
• CloudSearch
• CodeDeploy
• CloudFormation
And if we survive we will talk a little how to design Cloud applications. That’s mainly about general principles.
My talk mostly targeted towards decision makers and decisions pushers of small and medium size companies which are consider “going cloud” or already moving into this direction. Everyone interested in gaining knowledge in these areas are welcomed as well.
We will spend around 2–3 hours together and you will be able to pitch-in any questions until we totally goes away from original plan.
Yohei Sasaki leads Rakuten Platform as a Service (RPaaS), which provides a private Platform as a Service built on Cloud Foundry version 1 for over 1000 developers across 70+ teams at Rakuten. Rakuten adopted Cloud Foundry to reduce operational costs and make infrastructure transparent for developers. Over time, Rakuten has focused on adding features like mod_rewrite and improving database integration while filling gaps in Cloud Foundry version 2.
This talk show how Spring technologies can help to develop applications for the cloud. PaaS like Google App Engine, Amazon Beanstalk, Cloud Bees and Cloud Foundry are shown as well as other technologies such as NoSQL, RabbitMQ and Hadoop.
Eric Holmes from Remind discusses building an internal Platform as a Service (PaaS) called Empire using Docker and AWS ECS. Remind started as a monolith but broke services apart due to scaling issues. They previously used Heroku but wanted more control. Empire provides a CLI and API for deploying Docker containers to ECS, replacing their use of CoreOS and etcd. Empire provides operational simplicity while allowing Remind to maintain deployment patterns and focus on building products. Empire is now in production at Remind, improving performance over directly using EC2.
Mad scalability: Scaling when you are not GoogleAbel Muíño
A brief history of how Cabify grew during the last couple of years without using cloud platforms like AWS or Google Cloud
I gave this talk at the madScalability meet up on Madrid, March 2017.
Write less (code) and build more with serverlessDhaval Nagar
Presented the Serverless Use case at the Charotar University of Science and Technology.
CHARUSAT has a very active AWS Student Community.
https://aws.amazon.com/blogs/training-and-certification/aws-academys-big-bet-on-higher-education/
This document summarizes the evolution of cloud computing technologies from virtual machines to containers to serverless computing. It discusses how serverless computing uses cloud functions that are fully managed by the cloud provider, providing significant cost savings over virtual machines by only paying for resources used. While serverless computing reduces operational overhead, it is not suitable for all workloads and has some limitations around cold start times and vendor lock-in. The document promotes serverless computing as the next wave in cloud that can greatly reduce costs and complexity while improving scalability and availability.
The serverless movement represents a paradigm shift in our ability to create impressive, scalable web applications and services. Redesigning how triggers can generate and execute events can be an extremely cost-effective solution for microservices and large projects alike. Why serverless? It's less complex, scales easily, and usually costs less. The challenge today is that you may be creating these functions specific to a cloud vendor's API gateway, rather than creating the functions that are most reliable and useful.
In this session, you will learn how to create a cloud-agnostic serverless execution backend for your APIs. We will show you how to use Postman APIs with Nimbella’s tooling so you have cloud-agnostic runtime environment that can run in any cloud, including private infrastructure when required. If you are building scalable web applications that you want to deploy on any cloud or private cloud, this is a must-attend session.
The document discusses scaling a web application called Wanelo that is built on PostgreSQL. It describes 12 steps for incrementally scaling the application as traffic increases. The first steps involve adding more caching, optimizing SQL queries, and upgrading hardware. Further steps include replicating reads to additional PostgreSQL servers, using alternative data stores like Redis where appropriate, moving write-heavy tables out of PostgreSQL, and tuning PostgreSQL and the underlying filesystem. The goal is to scale the application while maintaining PostgreSQL as the primary database.
With the rise of Docker, we have seen an unprecedented interest in container technologies where small companies and big enterprises bet their future on these technologies. This trend bases on an immense adoption of containers from software developers. And it has been agreed upon that they are considered highly beneficial for modern engineering practices like Agile and DevOps. But there is a new kid in town that proclaims a more radical approach: Serverless or FaaS: Function-As-A-Service. This paradigm suggests that a developer should only write functions and react to events.
The functions are written in high-level programming languages like Javascript, Java or Python, and the underlying compute infrastructure like containers or VMs is transparent to the user. That raises the question: Is the container revolution already dead before it really started? And who now needs container technologies in a serverless world?
In this talk we discuss these questions from both a containers advocate and serverless fanboy viewpoints. We confront these two approaches, show the differences, individual strengths and weaknesses and where they complement each other. This talk will also discuss motivations from different involved parties so that the audience can build their conclusion.
Vaclav Pavlin (Containers & OpenShift guru): Containers will rule the world!.
Matthias Luebken (Developer tools PM): Serverless is the Visual Basic for the cloud-native generation.
This document discusses several Platform as a Service (PaaS) alternatives for .NET applications. It describes what PaaS is and some of the challenges it presents. It then evaluates several specific PaaS options for .NET including Apprenda, CloudFoundry, Uhuru, Tier3, AppHarbor, and AWS Elastic Beanstalk. It concludes that Windows Azure is still the best public PaaS for .NET, but that CloudFoundry-based private PaaS solutions are worth considering to avoid vendor lock-in.
Containerizing GPU Applications with Docker for Scaling to the CloudSubbu Rama
This document discusses containerizing GPU applications with Docker to enable scaling to the cloud. It describes how containers can solve problems of hardware and software portability by allowing applications to run consistently across different infrastructure. The document demonstrates how to build a GPU container using Dockerfiles and deploy it across multiple clouds. It also introduces Boost Containers which combine Bitfusion Boost technology with containers to build virtual GPU machines and clusters, enabling flexible scheduling of GPU workflows without code changes.
Presto is Uber's distributed SQL query engine for their Hadoop data warehouse. Some key points:
- Presto allows interactive SQL queries directly on Uber's petabyte-scale Hadoop data lake without needing to first load the data into another database.
- It provides fast performance at scale by leveraging columnar data formats like Parquet and optimizing for distributed execution across many nodes.
- Uber deployed a 200 node Presto cluster that handles 30,000 queries per day, serving both ad hoc queries and real-time applications accessing data in Hadoop and improving on the performance of alternative solutions like Hive.
This document provides an overview of serverless computing using AWS Lambda. It discusses what serverless means, how it addresses issues with traditional server-based architectures like capacity planning and scaling. It then covers how to build and deploy serverless Python applications using AWS Lambda, including choosing templates and triggers, adding configuration and code, testing, and writing clients. Alternatives like Google Cloud Functions and the Zappa framework for deploying serverless apps are also mentioned.
This document introduces GeoJSON, a format for representing geospatial data in JSON. It describes the common GeoJSON data types like points, lines, and polygons that represent locations, routes, and areas on a map. It provides examples of how GeoJSON can be used for applications like geocoding, routing directions, geofencing, and geospatial queries in databases. The presenter works on optimizing fuel delivery routes using GeoJSON to represent customer locations, vehicle capacity, and projected demand.
Valeri Karpov will lead a workshop on async/await that includes two exercises. The schedule includes introductions to key concepts like return values, error handling, and loops/conditionals with async functions. Attendees will practice gathering blog post comments and retrying failed requests. Key takeaways are that async functions return promises, return resolves them while throw rejects them, and await pauses execution until a promise settles.
TAO and the Essence of Modern JavaScriptValeri Karpov
1. TAO (Type-Action-Observable) is an alternative to MVC for managing state in JavaScript applications, where types represent data, actions represent function calls, and observables represent a stream of all actions.
2. TAO is well-suited for API development, where API calls can be modeled as actions, data validation can be defined in types, and middleware can handle cross-cutting concerns for all actions.
3. The speaker's company Booster uses TAO in practice with their open-source Archetype and TAO.js libraries, where types validate data, actions validate and trigger data changes, and middleware and triggers handle side effects.
This document outlines the schedule and content for a workshop on mastering async/await in Node.js. The workshop covers using async/await to handle asynchronous code, error handling, and composing async functions. It includes two exercises - one to gather blog post comments from an API, and another to retry failed requests. The key takeaways are that async functions always return promises, await pauses execution until a promise settles, and returned values/errors are handled via promise resolution/rejection.
Archetype is a JavaScript library that allows developers to cast and validate object properties to the correct data types. It provides composable, inspectable, and extensible types that make it easier than alternatives like Joi, JSONSchema, and PropTypes. The document demonstrates how Archetype can consolidate logic for a calendar app by casting data from action creators and ensuring assumptions are correct without walls of if statements. More information on Archetype is available on npmjs.com and thecodebarbarian.com.
TDD a REST API With Node.js and MongoDBValeri Karpov
This document discusses developing and testing a MongoDB and Node.js REST API. It introduces MongoDB and Node.js, and then covers building an API with the following parts: using Mongoose to define schemas for products, categories, and users; building routes with Express; and testing with Mocha and Superagent. Key topics include schema design principles, building RESTful routes, and testing the API end-to-end. The goal is to learn how to structure APIs on MongoDB with Node.js and ensure quality with testing.
The document discusses strategies for addressing common AngularJS challenges including SEO, responsive design, and integration testing. It recommends using Prerender.io to generate static HTML for search engines to index Single Page Apps. For responsive design, it suggests using reactive directives that emit events in response to screen size changes rather than having directives know about screen size. Finally, it outlines an approach to integration testing AngularJS directives in isolation using Karma and bootstrapping directives for testing DOM logic.
MongoDB MEAN Stack Webinar October 7, 2015Valeri Karpov
The document discusses building a REST API using Node.js and MongoDB. It covers creating schemas for products, categories, and users using Mongoose. It also discusses building out routes for retrieving, adding, and removing data. Testing the API is covered using Mocha and Superagent to make HTTP requests. Schema design principles like embedding related data are also summarized.
MEAN Stack NYC Meetup 20150717: TDD Your AngularJS + Ionic Directives With jQ...Valeri Karpov
Valeri Karpov discusses testing AngularJS directives with jQuery. He advocates using directives as reusable components and testing them with Karma and jQuery to get fast feedback. He also shows how to share validation logic between the client and server by using Mongoose schemas in the browser. Finally, he briefly explains how to compile directives for use in Ionic mobile apps.
Lessons in Open Source from the MongooseJS ODMValeri Karpov
Valeri Karpov discusses his experience with the Mongoose ODM project for Node.js. He got involved after discovering Mongoose helped reduce his code, and later became the main maintainer. He provides an overview of how Mongoose works through schema validation, syntactic sugar for updates, and hooks/middleware. Recent additions include query middleware and promises support. Lessons learned include being responsive to issues and maintaining a clear vision for an open source project.
MongoDB Miami Meetup 1/26/15: Introduction to WiredTigerValeri Karpov
This document provides an overview of WiredTiger and the MongoDB storage engine API. It discusses how WiredTiger differs from the mmapv1 storage engine in its use of document-level locking, compression, and consistency without journaling. It also covers WiredTiger internals like checkpoints, configuration options, and basic performance comparisons showing WiredTiger can provide higher throughput than mmapv1 for write-heavy workloads.
This document provides a summary of MongoDB presented by Valeri Karpov. It discusses that MongoDB is the leading noSQL database, uses documents to store data instead of columns, and scales both vertically and horizontally. It also demonstrates some features of MongoDB like querying, text search, geospatial search, and data aggregation through examples using a dataset of US cities.
This document provides an overview of a guided hackathon to build a single page application using the MEAN stack (MongoDB, Express, AngularJS, Node.js) in 2 hours. It outlines the concepts that will be covered, including API testing, DOM integration testing, build systems, and more. Attendees will build a package manager for the Go programming language, creating the server with Express and Mongoose, and the client with AngularJS and Browserify. Testing will be done with Mocha, Karma, and other tools.
This document summarizes a presentation about new features in MongoDB 2.6 and how they can be used in Node.js web applications. It discusses text search, the $min and $max update operators, and the $out aggregation operator. Examples are provided of implementing each feature in a Nutrition app built with the MEAN stack to allow searching for food items, conditionally updating data, and aggregating data into a new collection.
This document summarizes a 1 hour hackathon on building a full-stack single page application using the MEAN stack (MongoDB, Express, AngularJS, Node.js). It outlines the steps to build a food journal app that allows users to search a nutrition database, track daily food entries, and view calorie calculations. The steps include setting up the Express backend, Mongoose schema and API, AngularJS controllers and routing, and adding features like unit testing and Twitter authentication.
JS-IL Keynote: MongoDB 2.6, Mongoose 4.0, and BeyondValeri Karpov
This document summarizes a talk about using MongoDB 2.6, Mongoose 4.0, ECMAScript 6 generators, and Browserify. It discusses how ES6 generators can make asynchronous code more readable in Node.js and Mongoose. It also explains how Browserify allows sharing code between Node.js and the browser, enabling the use of Mongoose schemas directly in the browser. The talk outlines an experimental Browserify support branch in Mongoose and looks forward to fully leveraging new JavaScript technologies like ES6 and Browserify.
MEAN Stack Workshop at Node Philly, 4/9/14Valeri Karpov
Valeri Karpov presented a 1 hour hackathon on building a single page food journal app using the MEAN stack (MongoDB, Express, AngularJS, NodeJS). The presentation covered setting up the app structure, defining schemas and APIs, integrating the client and server, adding authentication, and writing unit tests. Key aspects included using Mongoose for models and validation, AngularJS routing, Browserify for building the client, and PassportJS for OAuth authentication with Twitter. The goal was to demonstrate best practices for building full-stack JavaScript apps with the MEAN stack.
MongoDB: Queries and Aggregation Framework with NBA Game DataValeri Karpov
This document provides an overview of querying and aggregating a dataset containing NBA box scores for over 30,000 games since 1985 using MongoDB. It demonstrates various MongoDB query and aggregation operations including findOne(), find(), count(), distinct(), $elemMatch, $sort, $limit, $unwind and aggregation pipelines to analyze and extract insights from the data such as answering questions about individual player and team statistics and performance.
This document provides an overview of MongoDB and how to get started using it. MongoDB is an open-source document database that stores data as JSON-like documents rather than in tables. It allows for horizontal scalability and storing data as objects rather than columns. The document explains how to install MongoDB, use the MongoDB shell to do inserts and queries, and connect to MongoDB from applications using drivers like PyMongo. Examples of large companies using MongoDB are also provided.
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...SOFTTECHHUB
I started my online journey with several hosting services before stumbling upon Ai EngineHost. At first, the idea of paying one fee and getting lifetime access seemed too good to pass up. The platform is built on reliable US-based servers, ensuring your projects run at high speeds and remain safe. Let me take you step by step through its benefits and features as I explain why this hosting solution is a perfect fit for digital entrepreneurs.
Procurement Insights Cost To Value Guide.pptxJon Hansen
Procurement Insights integrated Historic Procurement Industry Archives, serves as a powerful complement — not a competitor — to other procurement industry firms. It fills critical gaps in depth, agility, and contextual insight that most traditional analyst and association models overlook.
Learn more about this value- driven proprietary service offering here.
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...Alan Dix
Talk at the final event of Data Fusion Dynamics: A Collaborative UK-Saudi Initiative in Cybersecurity and Artificial Intelligence funded by the British Council UK-Saudi Challenge Fund 2024, Cardiff Metropolitan University, 29th April 2025
https://alandix.com/academic/talks/CMet2025-AI-Changes-Everything/
Is AI just another technology, or does it fundamentally change the way we live and think?
Every technology has a direct impact with micro-ethical consequences, some good, some bad. However more profound are the ways in which some technologies reshape the very fabric of society with macro-ethical impacts. The invention of the stirrup revolutionised mounted combat, but as a side effect gave rise to the feudal system, which still shapes politics today. The internal combustion engine offers personal freedom and creates pollution, but has also transformed the nature of urban planning and international trade. When we look at AI the micro-ethical issues, such as bias, are most obvious, but the macro-ethical challenges may be greater.
At a micro-ethical level AI has the potential to deepen social, ethnic and gender bias, issues I have warned about since the early 1990s! It is also being used increasingly on the battlefield. However, it also offers amazing opportunities in health and educations, as the recent Nobel prizes for the developers of AlphaFold illustrate. More radically, the need to encode ethics acts as a mirror to surface essential ethical problems and conflicts.
At the macro-ethical level, by the early 2000s digital technology had already begun to undermine sovereignty (e.g. gambling), market economics (through network effects and emergent monopolies), and the very meaning of money. Modern AI is the child of big data, big computation and ultimately big business, intensifying the inherent tendency of digital technology to concentrate power. AI is already unravelling the fundamentals of the social, political and economic world around us, but this is a world that needs radical reimagining to overcome the global environmental and human challenges that confront us. Our challenge is whether to let the threads fall as they may, or to use them to weave a better future.
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul
Artificial intelligence is changing how businesses operate. Companies are using AI agents to automate tasks, reduce time spent on repetitive work, and focus more on high-value activities. Noah Loul, an AI strategist and entrepreneur, has helped dozens of companies streamline their operations using smart automation. He believes AI agents aren't just tools—they're workers that take on repeatable tasks so your human team can focus on what matters. If you want to reduce time waste and increase output, AI agents are the next move.
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfAbi john
Analyze the growth of meme coins from mere online jokes to potential assets in the digital economy. Explore the community, culture, and utility as they elevate themselves to a new era in cryptocurrency.
This is the keynote of the Into the Box conference, highlighting the release of the BoxLang JVM language, its key enhancements, and its vision for the future.
Andrew Marnell: Transforming Business Strategy Through Data-Driven InsightsAndrew Marnell
With expertise in data architecture, performance tracking, and revenue forecasting, Andrew Marnell plays a vital role in aligning business strategies with data insights. Andrew Marnell’s ability to lead cross-functional teams ensures businesses achieve sustainable growth and operational excellence.
Spark is a powerhouse for large datasets, but when it comes to smaller data workloads, its overhead can sometimes slow things down. What if you could achieve high performance and efficiency without the need for Spark?
At S&P Global Commodity Insights, having a complete view of global energy and commodities markets enables customers to make data-driven decisions with confidence and create long-term, sustainable value. 🌍
Explore delta-rs + CDC and how these open-source innovations power lightweight, high-performance data applications beyond Spark! 🚀
Artificial Intelligence is providing benefits in many areas of work within the heritage sector, from image analysis, to ideas generation, and new research tools. However, it is more critical than ever for people, with analogue intelligence, to ensure the integrity and ethical use of AI. Including real people can improve the use of AI by identifying potential biases, cross-checking results, refining workflows, and providing contextual relevance to AI-driven results.
News about the impact of AI often paints a rosy picture. In practice, there are many potential pitfalls. This presentation discusses these issues and looks at the role of analogue intelligence and analogue interfaces in providing the best results to our audiences. How do we deal with factually incorrect results? How do we get content generated that better reflects the diversity of our communities? What roles are there for physical, in-person experiences in the digital world?
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxshyamraj55
We’re bringing the TDX energy to our community with 2 power-packed sessions:
🛠️ Workshop: MuleSoft for Agentforce
Explore the new version of our hands-on workshop featuring the latest Topic Center and API Catalog updates.
📄 Talk: Power Up Document Processing
Dive into smart automation with MuleSoft IDP, NLP, and Einstein AI for intelligent document workflows.
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPathCommunity
Join this UiPath Community Berlin meetup to explore the Orchestrator API, Swagger interface, and the Test Manager API. Learn how to leverage these tools to streamline automation, enhance testing, and integrate more efficiently with UiPath. Perfect for developers, testers, and automation enthusiasts!
📕 Agenda
Welcome & Introductions
Orchestrator API Overview
Exploring the Swagger Interface
Test Manager API Highlights
Streamlining Automation & Testing with APIs (Demo)
Q&A and Open Discussion
Perfect for developers, testers, and automation enthusiasts!
👉 Join our UiPath Community Berlin chapter: https://community.uipath.com/berlin/
This session streamed live on April 29, 2025, 18:00 CET.
Check out all our upcoming UiPath Community sessions at https://community.uipath.com/events/.
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfSoftware Company
Explore the benefits and features of advanced logistics management software for businesses in Riyadh. This guide delves into the latest technologies, from real-time tracking and route optimization to warehouse management and inventory control, helping businesses streamline their logistics operations and reduce costs. Learn how implementing the right software solution can enhance efficiency, improve customer satisfaction, and provide a competitive edge in the growing logistics sector of Riyadh.
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...Impelsys Inc.
Impelsys provided a robust testing solution, leveraging a risk-based and requirement-mapped approach to validate ICU Connect and CritiXpert. A well-defined test suite was developed to assess data communication, clinical data collection, transformation, and visualization across integrated devices.
Mobile App Development Company in Saudi ArabiaSteve Jonas
EmizenTech is a globally recognized software development company, proudly serving businesses since 2013. With over 11+ years of industry experience and a team of 200+ skilled professionals, we have successfully delivered 1200+ projects across various sectors. As a leading Mobile App Development Company In Saudi Arabia we offer end-to-end solutions for iOS, Android, and cross-platform applications. Our apps are known for their user-friendly interfaces, scalability, high performance, and strong security features. We tailor each mobile application to meet the unique needs of different industries, ensuring a seamless user experience. EmizenTech is committed to turning your vision into a powerful digital product that drives growth, innovation, and long-term success in the competitive mobile landscape of Saudi Arabia.
Mobile App Development Company in Saudi ArabiaSteve Jonas
A Gentle Introduction to Functions-as-a-Service
1. A Gentle Introduction to
Functions-as-a-Service
Valeri Karpov
@code_barbarian
github.com/vkarpov15
2. About Me
● Backend Lead @ Booster, Node.js OSS
● Core contributor for Mongoose, Mocha
● Blogger, thecodebarbarian.com
● Early employee at LevelUp, MongoDB, Booster
● Invented the MEAN stack
3. What’s This Talk About?
● The progression of dev-ops for startups
● Why FaaS is the next natural step for dev-ops
● Retaining state in “stateless” functions
● Trade-offs between different FaaS providers
4. 2008: Physical Machine in Dorm Room
● EC2 was limited, other hosting services sucked
● LevelUp’s first release on an Ubuntu tower
○ Physical machines die or get shut down
○ Campus ISP is slow or changes the IP
○ Limited scale: shipping a new PC takes days
5. 2012: Amazon EC2
● My next few startups all ran on 1-5 EC2 VMs
● Cloud VMs solve most physical machine issues
○ Power outages much less likely
○ Reliable internet maintained by Amazon
○ Spinning up a new VM takes minutes
6. 2012: Amazon EC2
● Vanilla EC2 was great for single server apps
● But what about multiple app servers?
○ 2 services on the same VM in isolation
○ Continuous Deployment
○ Scaling horizontally with a click
7. 2015: Containers and Orchestration
● Docker, Mesos, Kubernetes, etc.
● Compelling for CD and isolation
● Still Have Problems with Resource Usage
○ Memory limits per VM
○ Docker hogs disk space
8. Functions as a Service
● Instead of deploying an app, you deploy a
bunch of stateless functions
● No VMs, no OS updates
● Resource limits (RAM, CPU) per function call
● Functions run in response to triggers
9. API Gateways
● Cloud functions respond to triggers
● HTTP is a trigger, but what about:
○ API keys / auth
○ Rate limits
● FaaS providers have API Gateways for this
10. FaaS Providers
● Amazon AWS Lambda
● Microsoft Azure Functions
● Google Cloud Functions
● IBM Cloud Functions
● Oracle Cloud Fn
● LunchBadger, + many more
12. FaaS Advantages
● Easier to scale, no need to worry about too
much load on one service
● Cheaper for low-usage services
● Cheap and easy development environments
● Resource issues rare and easy to debug
13. FaaS Problems
● No strong best practices yet
● Completely different way of writing apps
● Limited language support
● Managing triggers and API Gateways
● Sometimes you want to retain state...
15. Stateless is a Big Performance Problem
● Connecting to a database on every function
call is slow
16. But You Can Retain Global State
● Put db handle in global scope
17. Common Trick Across FaaS Providers
● AWS Lambda: bit.ly/mongodb-lambda
● Azure Functions: bit.ly/mongodb-azure
○ Also With C#: bit.ly/csx-azure-state
● IBM Cloud: bit.ly/mongodb-ibm-cloud
21. Hidden Fees: API Gateways
● AWS Lambda: $3.50 / 1M + data
● Azure Functions: no extra cost necessary
● Google Cloud Functions: no extra cost
necessary