The slide deck for my session from NDC Oslo 2017 on multitenant software architecture. The code samples for this session is available at:
https://github.com/estiller/noisy-neighbors
DevOps is focused on Agile development and in great demand.
GCP Supports DevOps in a manner similar to AWS.
Differences between API Gateway (CLI support and OpenAPI Support)
GCP uses a NGINX Proxy with Cloud Endpoints.
Microservices architectures are changing the way that organizations build their applications and infrastructure. Companies can now achieve new levels of scale and efficiency by disaggregating their large, monolithic applications into small, independent “micro services”, each of which perform different functions. In this session, we’ll introduce the concept of microservices, help you evaluate whether your organization is ready for microservices, and discuss methods for implementing these architectures. We’ll also cover topics such as using API gateways, enabling self-service infrastructure provisioning, and ways to manage your microservices.
Microservice Architecture | Microservices Tutorial for Beginners | Microservi...Edureka!
( Microservices Architecture Training: https://www.edureka.co/microservices-... )
This Edureka's Microservices tutorial gives you detail of Microservices Architecture and how it is different from Monolithic Architecture. You will understand the concepts using a UBER case study. In this video, you will learn the following:
1. Monolithic Architecture
2. Challenges Of Monolithic Architecture
3. Microservice Architecture
4. Microservice Features
5. Compare architectures using UBER case-study
Private Apps in the Public Cloud - DevConTLV March 2016Issac Goldstand
In the current technical world, SaaS providers have plenty to help them out: from public clouds, to containers. From microservices architectures, to limitless scaling potential. But when you need to deploy multiple singe-tenant applications that use these, how do you manage to share resources while keeping sensitive data apart? In this presentation I'll talk about how we did it at ironSource.
Kevin Huang: AWS San Francisco Startup Day, 9/7/17
Architecture: When, how, and if to adopt microservices - Microservices are not for everyone! If you're a small shop, a monolith provides a great amount of value and reduces the complexities involved. However as your company grows, this monolith becomes more difficult to maintain. We’ll look at how microservices allow you to easily deploy and debug atomic pieces of infrastructure which allows for increased velocity in reliable, tested, and consistent deploys. We’ll look into key metrics you can use to identify the right time to begin the transition from monolith to microservices.
The document provides an overview of microservices architecture. It discusses key characteristics of microservices such as each service focusing on a specific business capability, decentralized governance and data management, and infrastructure automation. It also compares microservices to monolithic and SOA architectures. Some design styles enabled by microservices like domain-driven design, event sourcing, and functional reactive programming are also covered at a high level. The document aims to introduce attendees to microservices concepts and architectures.
G07.2014 magic quadrant for enterprise file synchronization and sharingSatya Harish
Gartner's Magic Quadrant report evaluated vendors in the enterprise file synchronization and sharing (EFSS) market. EMC Syncplicity was named a leader in this market. The report provides qualitative analysis of the EFSS market, including where it is going. It also analyzes key EFSS participants. Gartner does not endorse any particular vendor but provides the report to help technology users understand the options in this space.
Decomposing applications for deployability and scalability #springone2gx #s12gxChris Richardson
Today, there are several trends that are forcing application architectures to evolve. Users expect a rich, interactive and dynamic user experience on a wide variety of clients including mobile devices. Applications must be highly scalable, highly available and run on cloud environments. Organizations often want to frequently roll out updates, even multiple times a day. Consequently, it’s no longer adequate to develop simple, monolithic web applications that serve up HTML to desktop browsers.
In this talk we describe the limitations of a monolithic architecture. You will learn how to use the scale cube to decompose your application into a set of narrowly focused, independently deployable back-end services and an HTML 5 client. We will also discuss the role of technologies such as NodeJS and AMQP brokers. You will learn how a modern PaaS such as Cloud Foundry simplifies the development and deployment of this style of application.
DevOps is focused on Agile development and in great demand.
GCP Supports DevOps in a manner similar to AWS.
Differences between API Gateway (CLI support and OpenAPI Support)
GCP uses a NGINX Proxy with Cloud Endpoints.
Microservices architectures are changing the way that organizations build their applications and infrastructure. Companies can now achieve new levels of scale and efficiency by disaggregating their large, monolithic applications into small, independent “micro services”, each of which perform different functions. In this session, we’ll introduce the concept of microservices, help you evaluate whether your organization is ready for microservices, and discuss methods for implementing these architectures. We’ll also cover topics such as using API gateways, enabling self-service infrastructure provisioning, and ways to manage your microservices.
Microservice Architecture | Microservices Tutorial for Beginners | Microservi...Edureka!
( Microservices Architecture Training: https://www.edureka.co/microservices-... )
This Edureka's Microservices tutorial gives you detail of Microservices Architecture and how it is different from Monolithic Architecture. You will understand the concepts using a UBER case study. In this video, you will learn the following:
1. Monolithic Architecture
2. Challenges Of Monolithic Architecture
3. Microservice Architecture
4. Microservice Features
5. Compare architectures using UBER case-study
Private Apps in the Public Cloud - DevConTLV March 2016Issac Goldstand
In the current technical world, SaaS providers have plenty to help them out: from public clouds, to containers. From microservices architectures, to limitless scaling potential. But when you need to deploy multiple singe-tenant applications that use these, how do you manage to share resources while keeping sensitive data apart? In this presentation I'll talk about how we did it at ironSource.
Kevin Huang: AWS San Francisco Startup Day, 9/7/17
Architecture: When, how, and if to adopt microservices - Microservices are not for everyone! If you're a small shop, a monolith provides a great amount of value and reduces the complexities involved. However as your company grows, this monolith becomes more difficult to maintain. We’ll look at how microservices allow you to easily deploy and debug atomic pieces of infrastructure which allows for increased velocity in reliable, tested, and consistent deploys. We’ll look into key metrics you can use to identify the right time to begin the transition from monolith to microservices.
The document provides an overview of microservices architecture. It discusses key characteristics of microservices such as each service focusing on a specific business capability, decentralized governance and data management, and infrastructure automation. It also compares microservices to monolithic and SOA architectures. Some design styles enabled by microservices like domain-driven design, event sourcing, and functional reactive programming are also covered at a high level. The document aims to introduce attendees to microservices concepts and architectures.
G07.2014 magic quadrant for enterprise file synchronization and sharingSatya Harish
Gartner's Magic Quadrant report evaluated vendors in the enterprise file synchronization and sharing (EFSS) market. EMC Syncplicity was named a leader in this market. The report provides qualitative analysis of the EFSS market, including where it is going. It also analyzes key EFSS participants. Gartner does not endorse any particular vendor but provides the report to help technology users understand the options in this space.
Decomposing applications for deployability and scalability #springone2gx #s12gxChris Richardson
Today, there are several trends that are forcing application architectures to evolve. Users expect a rich, interactive and dynamic user experience on a wide variety of clients including mobile devices. Applications must be highly scalable, highly available and run on cloud environments. Organizations often want to frequently roll out updates, even multiple times a day. Consequently, it’s no longer adequate to develop simple, monolithic web applications that serve up HTML to desktop browsers.
In this talk we describe the limitations of a monolithic architecture. You will learn how to use the scale cube to decompose your application into a set of narrowly focused, independently deployable back-end services and an HTML 5 client. We will also discuss the role of technologies such as NodeJS and AMQP brokers. You will learn how a modern PaaS such as Cloud Foundry simplifies the development and deployment of this style of application.
SCS 4120 - Software Engineering IV
BACHELOR OF SCIENCE HONOURS IN COMPUTER SCIENCE
BACHELOR OF SCIENCE HONOURS IN SOFTWARE ENGINEERING
All in One Place Lecture Notes
Distribution Among Friends Only
All copyrights belong to their respective owners
Viraj Brian Wijesuriya
vbw@ucsc.cmb.ac.lk
Benefits of Containers, Microservices and Containerized MicroservicesHTS Hosting
Containers, microservices and containerized microservices have many benefits, such as enhanced performance and stability, faster development of applications etc.
Projecting Enterprise Security Requirements on the CloudScientia Groups
The presentation discussed enterprise security risks and requirements when projecting workloads to the cloud. It identified seven main risks, including insecure APIs, logical multi-tenancy issues, data protection, and lack of access controls. It noted that enterprises have direct control over some risks but little control over others like multi-tenancy and provider threats. The presentation explored cloud access models using brokers to provide a single entry point and normalize credentials and policies. It also described using a virtual gateway to secure access to private and public clouds through protocols, load balancing, and token generation.
Edge can be divided into the Device Edge and the Infrastructure Edge. This presentation discusses how to leverage the Infrastructure edge in modern software architecture.
Full lifecycle of a microservice: how to
realize a fault-tolerant and reliable
architecture and deliver it as a Docker
container or in a Cloud environment
This document provides an introduction and overview of containers, Kubernetes, IBM Container Service, and IBM Cloud Private. It discusses how microservices architectures break monolithic applications into smaller, independently developed services. Containers are presented as a standard way to package applications to move between environments. Kubernetes is introduced as an open-source system for automating deployment and management of containerized applications. IBM Cloud Container Service and IBM Cloud Private are then overviewed as platforms that combine Docker and Kubernetes to enable deployment of containerized applications on IBM Cloud infrastructure.
Vmware Seminar Security & Compliance for the cloud with Trend MicroGraeme Wood
The document discusses security and compliance requirements for cloud computing. It provides an overview of key compliance standards and regulations that affect customers. It then discusses some of the unique security challenges that virtualized and cloud environments can present compared to traditional IT environments. Specifically, it notes that system boundaries are less clear in virtual systems and that more components and complexity are involved. Finally, it outlines some of the foundations that VMware and its partners are providing to help address these challenges, such as security hardening guides, virtual trust zones, and network segmentation controls.
The document discusses deploying Java microservices applications to Kubernetes. It covers running a sample Spring Boot app in Docker containers, then deploying it and its MongoDB dependency to a local Kubernetes cluster using Minishift. It also discusses using the Fabric8 Maven plugin to simplify building Docker images and generating Kubernetes manifests from a Maven project. Helm is introduced as a way to package full applications and dependencies for Kubernetes.
Using patterns and pattern languages to make better architectural decisions Chris Richardson
This is a presentation that gave at the O'Reilly Software Architecture Superstream: Software Architecture Patterns.
The talk's focus is the microservices pattern language.
However, it also shows how thinking with the pattern mindset - context/problem/forces/solution/consequences - leads to better technically decisions.
The microservices architecture offers tremendous benefits, but it’s not a silver bullet. It also has some significant drawbacks. The microservices pattern language—a collection of patterns that solve architecture, design, development, and operational problems—enables software developers to apply the microservices architecture effectively. I provide an overview of the microservices architecture and examines the motivations for the pattern language, then takes you through the key patterns in the pattern language.
The webinar discusses multi-tenant business intelligence in a cloud computing environment. It defines multi-tenancy as a software architecture where a single instance of an application serves multiple organizations. The webinar then covers use cases for multi-tenant BI and the benefits of the approach. It also outlines four main approaches to multi-tenant BI and the steps to onboard new clients for each approach.
Multi-Tenant SOA Middleware for Cloud ComputingSrinath Perera
This document discusses the need for multi-tenant SOA middleware for cloud computing. It outlines the challenges of implementing multi-tenancy and describes WSO2's Carbon platform and its architecture for achieving tenant isolation at different layers. The architecture isolates tenants through separate security domains, a multi-tenant registry implementation, and tenant-specific Axis2 contexts. It also discusses scaling and monitoring open challenges.
Code Freeze 2018: There is no such thing as a microservice!Chris Richardson
This is a talk I gave at Code Freeze 2018:
The microservice architecture is becoming increasingly popular. However, frequent references to using “a microservice to solve a problem” suggest that the concept is not universally well understood. In this talk, I define the microservice architecture as an architectural style and explain what that actually means. I also describe how the primary goal of the microservice architecture is to enable continuous delivery and deployment, and how it achieves that. You will learn why the architecture that you pick for your application matters. And you will learn how to solve key challenges with decomposing an application into microservices. This talk explains why there is no such thing as a microservice!
Slides: Polyglot Persistence for the MongoDB, MySQL & PostgreSQL DBASeveralnines
Polyglot Persistence for the MongoDB, PostgreSQL & MySQL DBA
The introduction of DevOps in organisations has changed the development process, and perhaps introduced some challenges. Developers, in addition to their own preferred programming languages, also have their own preference for backend storage.The former is often referred to as polyglot languages and the latter as polyglot persistence.
Having multiple storage backends means your organization will become more agile on the development side and allows choice to the developers but it also imposes additional knowledge on the operations side. Extending your infrastructure from only MySQL, to deploying other storage backends like MongoDB and PostgreSQL, implies you have to also monitor, manage and scale them. As every storage backend excels at different use cases, this also means you have to reinvent the wheel for every one of them.
This webinar covers the four major operational challenges for MySQL, MongoDB & PostgreSQL:
Deployment
Management
Monitoring
Scaling
And how to deal with them
SPEAKER
Art van Scheppingen is a Senior Support Engineer at Severalnines. He’s a pragmatic MySQL and Database expert with over 15 years experience in web development. He previously worked at Spil Games as Head of Database Engineering, where he kept a broad vision upon the whole database environment: from MySQL to Couchbase, Vertica to Hadoop and from Sphinx Search to SOLR. He regularly presents his work and projects at various conferences (Percona Live, FOSDEM) and related meetups.
This webinar is based upon the experience Art had while writing our How to become a ClusterControl DBA blog series and implementing multiple storage backends to ClusterControl. To view all the blogs of the ‘Become a ClusterControl DBA’ series visit: http://severalnines.com/blog-categories/clustercontrol
Learn how Cloud Computing is changing applications deployment.
See how software deployment is moving away from traditional on-premise installable, license based software to consuming software applications as services, on a subscription based models.
Learn about different SaaS application architectures that can help you convert your on-premise single tenant installable application to an online multi-tenant application.
Find out how to avoid huge capital expenditures upfront and do away with managing applications and dealing with software licenses, there are obvious benefits of running a SaaS business on Cloud for ISVs as well.
This slide deck explores the impact of MSA on API strategies and designs and the possible changes in API design and deployment, API security, control and monitoring, and CI/CD.
Watch recording: https://wso2.com/library/webinars/2018/09/apis-in-a-microservice-architecture
This webinar covers cloud security fundamentals across AWS, Azure, and GCP. It begins with introductions and an overview of the course, which includes cloud security 101, best practices for each cloud provider, and a discussion of current threats. The presentation covers topics such as the shared responsibility model, cloud security risks and governance models, identity and access management, data security, and techniques for mitigating risks in the cloud. It emphasizes the importance of a data-centric approach to security and controlling access according to the principles of least privilege and separation of duties.
This document provides an overview of service-based architectures and compares microservices architecture and service-oriented architecture (SOA). It discusses key topics for service-based architectures like service contracts, availability, security, and transactions. The document then compares characteristics of services and architectures between microservices and SOA, such as service granularity, ownership, orchestration, and capabilities. The goal is to understand the differences between microservices and SOA and which may be better suited for different situations.
Seven Seas Technology is an IT services company with over 250 employees that provides a wide range of IT solutions and services to over 1000 customers. They have a mission to help customers become successful businesses by designing and delivering ICT solutions that provide value and enhance productivity. Their solutions include enterprise systems, infrastructure, information security, cloud solutions, and managed services. They also have expertise in many technology domains and partnerships with leading technology companies.
Cloud Computing Use Cases Whitepaper 3 0Jason Reed
This document provides definitions and taxonomy for cloud computing concepts. It outlines 7 common use case scenarios for cloud computing including end user to cloud, enterprise to cloud, enterprise to cloud to enterprise, private cloud, changing cloud vendors, hybrid cloud, and cross-references between requirements and use cases. It also provides 5 customer scenarios that could benefit from cloud computing. The main focus is on security use cases and requirements to ensure interoperability and portability across cloud vendors. The goal is to define practical scenarios to guide standards development and avoid vendor lock-in.
The document provides an overview of Agile, DevOps and Cloud Management from a security, risk management and audit compliance perspective. It discusses how the IT industry paradigm is shifting towards microservices, containers, continuous delivery and cloud platforms. DevOps is described as development and operations engineers participating together in the entire service lifecycle. Key differences in DevOps include changes to configuration management, release and change management, and event monitoring. Factors for DevOps success include culture, collaboration, eliminating waste, unified processes, tooling and automation.
The document discusses cloud resource management and cloud computing architecture. It covers the following key points in 3 sentences:
Cloud architecture can be broadly divided into the front end, which consists of interfaces and applications for accessing cloud platforms, and the back end, which comprises resources for providing cloud services like storage, virtual machines, and security mechanisms. Common cloud service models include infrastructure as a service (IaaS), platform as a service (PaaS), and software as a service (SaaS). Virtualization techniques allow for the sharing of physical resources among multiple organizations by assigning logical names to physical resources and providing pointers to access them.
SCS 4120 - Software Engineering IV
BACHELOR OF SCIENCE HONOURS IN COMPUTER SCIENCE
BACHELOR OF SCIENCE HONOURS IN SOFTWARE ENGINEERING
All in One Place Lecture Notes
Distribution Among Friends Only
All copyrights belong to their respective owners
Viraj Brian Wijesuriya
vbw@ucsc.cmb.ac.lk
Benefits of Containers, Microservices and Containerized MicroservicesHTS Hosting
Containers, microservices and containerized microservices have many benefits, such as enhanced performance and stability, faster development of applications etc.
Projecting Enterprise Security Requirements on the CloudScientia Groups
The presentation discussed enterprise security risks and requirements when projecting workloads to the cloud. It identified seven main risks, including insecure APIs, logical multi-tenancy issues, data protection, and lack of access controls. It noted that enterprises have direct control over some risks but little control over others like multi-tenancy and provider threats. The presentation explored cloud access models using brokers to provide a single entry point and normalize credentials and policies. It also described using a virtual gateway to secure access to private and public clouds through protocols, load balancing, and token generation.
Edge can be divided into the Device Edge and the Infrastructure Edge. This presentation discusses how to leverage the Infrastructure edge in modern software architecture.
Full lifecycle of a microservice: how to
realize a fault-tolerant and reliable
architecture and deliver it as a Docker
container or in a Cloud environment
This document provides an introduction and overview of containers, Kubernetes, IBM Container Service, and IBM Cloud Private. It discusses how microservices architectures break monolithic applications into smaller, independently developed services. Containers are presented as a standard way to package applications to move between environments. Kubernetes is introduced as an open-source system for automating deployment and management of containerized applications. IBM Cloud Container Service and IBM Cloud Private are then overviewed as platforms that combine Docker and Kubernetes to enable deployment of containerized applications on IBM Cloud infrastructure.
Vmware Seminar Security & Compliance for the cloud with Trend MicroGraeme Wood
The document discusses security and compliance requirements for cloud computing. It provides an overview of key compliance standards and regulations that affect customers. It then discusses some of the unique security challenges that virtualized and cloud environments can present compared to traditional IT environments. Specifically, it notes that system boundaries are less clear in virtual systems and that more components and complexity are involved. Finally, it outlines some of the foundations that VMware and its partners are providing to help address these challenges, such as security hardening guides, virtual trust zones, and network segmentation controls.
The document discusses deploying Java microservices applications to Kubernetes. It covers running a sample Spring Boot app in Docker containers, then deploying it and its MongoDB dependency to a local Kubernetes cluster using Minishift. It also discusses using the Fabric8 Maven plugin to simplify building Docker images and generating Kubernetes manifests from a Maven project. Helm is introduced as a way to package full applications and dependencies for Kubernetes.
Using patterns and pattern languages to make better architectural decisions Chris Richardson
This is a presentation that gave at the O'Reilly Software Architecture Superstream: Software Architecture Patterns.
The talk's focus is the microservices pattern language.
However, it also shows how thinking with the pattern mindset - context/problem/forces/solution/consequences - leads to better technically decisions.
The microservices architecture offers tremendous benefits, but it’s not a silver bullet. It also has some significant drawbacks. The microservices pattern language—a collection of patterns that solve architecture, design, development, and operational problems—enables software developers to apply the microservices architecture effectively. I provide an overview of the microservices architecture and examines the motivations for the pattern language, then takes you through the key patterns in the pattern language.
The webinar discusses multi-tenant business intelligence in a cloud computing environment. It defines multi-tenancy as a software architecture where a single instance of an application serves multiple organizations. The webinar then covers use cases for multi-tenant BI and the benefits of the approach. It also outlines four main approaches to multi-tenant BI and the steps to onboard new clients for each approach.
Multi-Tenant SOA Middleware for Cloud ComputingSrinath Perera
This document discusses the need for multi-tenant SOA middleware for cloud computing. It outlines the challenges of implementing multi-tenancy and describes WSO2's Carbon platform and its architecture for achieving tenant isolation at different layers. The architecture isolates tenants through separate security domains, a multi-tenant registry implementation, and tenant-specific Axis2 contexts. It also discusses scaling and monitoring open challenges.
Code Freeze 2018: There is no such thing as a microservice!Chris Richardson
This is a talk I gave at Code Freeze 2018:
The microservice architecture is becoming increasingly popular. However, frequent references to using “a microservice to solve a problem” suggest that the concept is not universally well understood. In this talk, I define the microservice architecture as an architectural style and explain what that actually means. I also describe how the primary goal of the microservice architecture is to enable continuous delivery and deployment, and how it achieves that. You will learn why the architecture that you pick for your application matters. And you will learn how to solve key challenges with decomposing an application into microservices. This talk explains why there is no such thing as a microservice!
Slides: Polyglot Persistence for the MongoDB, MySQL & PostgreSQL DBASeveralnines
Polyglot Persistence for the MongoDB, PostgreSQL & MySQL DBA
The introduction of DevOps in organisations has changed the development process, and perhaps introduced some challenges. Developers, in addition to their own preferred programming languages, also have their own preference for backend storage.The former is often referred to as polyglot languages and the latter as polyglot persistence.
Having multiple storage backends means your organization will become more agile on the development side and allows choice to the developers but it also imposes additional knowledge on the operations side. Extending your infrastructure from only MySQL, to deploying other storage backends like MongoDB and PostgreSQL, implies you have to also monitor, manage and scale them. As every storage backend excels at different use cases, this also means you have to reinvent the wheel for every one of them.
This webinar covers the four major operational challenges for MySQL, MongoDB & PostgreSQL:
Deployment
Management
Monitoring
Scaling
And how to deal with them
SPEAKER
Art van Scheppingen is a Senior Support Engineer at Severalnines. He’s a pragmatic MySQL and Database expert with over 15 years experience in web development. He previously worked at Spil Games as Head of Database Engineering, where he kept a broad vision upon the whole database environment: from MySQL to Couchbase, Vertica to Hadoop and from Sphinx Search to SOLR. He regularly presents his work and projects at various conferences (Percona Live, FOSDEM) and related meetups.
This webinar is based upon the experience Art had while writing our How to become a ClusterControl DBA blog series and implementing multiple storage backends to ClusterControl. To view all the blogs of the ‘Become a ClusterControl DBA’ series visit: http://severalnines.com/blog-categories/clustercontrol
Learn how Cloud Computing is changing applications deployment.
See how software deployment is moving away from traditional on-premise installable, license based software to consuming software applications as services, on a subscription based models.
Learn about different SaaS application architectures that can help you convert your on-premise single tenant installable application to an online multi-tenant application.
Find out how to avoid huge capital expenditures upfront and do away with managing applications and dealing with software licenses, there are obvious benefits of running a SaaS business on Cloud for ISVs as well.
This slide deck explores the impact of MSA on API strategies and designs and the possible changes in API design and deployment, API security, control and monitoring, and CI/CD.
Watch recording: https://wso2.com/library/webinars/2018/09/apis-in-a-microservice-architecture
This webinar covers cloud security fundamentals across AWS, Azure, and GCP. It begins with introductions and an overview of the course, which includes cloud security 101, best practices for each cloud provider, and a discussion of current threats. The presentation covers topics such as the shared responsibility model, cloud security risks and governance models, identity and access management, data security, and techniques for mitigating risks in the cloud. It emphasizes the importance of a data-centric approach to security and controlling access according to the principles of least privilege and separation of duties.
This document provides an overview of service-based architectures and compares microservices architecture and service-oriented architecture (SOA). It discusses key topics for service-based architectures like service contracts, availability, security, and transactions. The document then compares characteristics of services and architectures between microservices and SOA, such as service granularity, ownership, orchestration, and capabilities. The goal is to understand the differences between microservices and SOA and which may be better suited for different situations.
Seven Seas Technology is an IT services company with over 250 employees that provides a wide range of IT solutions and services to over 1000 customers. They have a mission to help customers become successful businesses by designing and delivering ICT solutions that provide value and enhance productivity. Their solutions include enterprise systems, infrastructure, information security, cloud solutions, and managed services. They also have expertise in many technology domains and partnerships with leading technology companies.
Cloud Computing Use Cases Whitepaper 3 0Jason Reed
This document provides definitions and taxonomy for cloud computing concepts. It outlines 7 common use case scenarios for cloud computing including end user to cloud, enterprise to cloud, enterprise to cloud to enterprise, private cloud, changing cloud vendors, hybrid cloud, and cross-references between requirements and use cases. It also provides 5 customer scenarios that could benefit from cloud computing. The main focus is on security use cases and requirements to ensure interoperability and portability across cloud vendors. The goal is to define practical scenarios to guide standards development and avoid vendor lock-in.
The document provides an overview of Agile, DevOps and Cloud Management from a security, risk management and audit compliance perspective. It discusses how the IT industry paradigm is shifting towards microservices, containers, continuous delivery and cloud platforms. DevOps is described as development and operations engineers participating together in the entire service lifecycle. Key differences in DevOps include changes to configuration management, release and change management, and event monitoring. Factors for DevOps success include culture, collaboration, eliminating waste, unified processes, tooling and automation.
The document discusses cloud resource management and cloud computing architecture. It covers the following key points in 3 sentences:
Cloud architecture can be broadly divided into the front end, which consists of interfaces and applications for accessing cloud platforms, and the back end, which comprises resources for providing cloud services like storage, virtual machines, and security mechanisms. Common cloud service models include infrastructure as a service (IaaS), platform as a service (PaaS), and software as a service (SaaS). Virtualization techniques allow for the sharing of physical resources among multiple organizations by assigning logical names to physical resources and providing pointers to access them.
The document discusses cloud architecture and describes the different layers of cloud computing including Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS). It explains how virtualization allows for the pooling of computing resources and rapid provisioning of these resources. The document also discusses multi-tenancy and how a single software instance can be configured for multiple tenants' needs in a SaaS environment. As an example, it describes how a payroll processing application currently used by multiple government departments could be migrated to a cloud environment for improved maintenance and reduced costs.
For a long time APIs have largely been an exercise at the edge of complexity. They provide an engaging interface to attract developers, perhaps an underlying platform to monitor their consumption, and a means for those interested in whatever drives our backend to manage that success. That type interaction demands a certain type of interaction. But what happens in a backend world of microservices? Do we really have the same API needs and flexibility concerns at the mesh that we do at the edge and how might we best address these two worlds going forward? I will present the case for edge, the case for the mesh and try to bridge whatever space we have between them: chasm or ditch.
Architecting Cloud Computing Solutions with Java [1.1]Otávio Santana
This document discusses cloud-native concepts and architectures using Java. It begins with an introduction to the speaker, Otavio Santana, and his background. It then covers topics like cloud types, cloud native approaches, and how they apply concepts like microservices, containers, and orchestration. It also discusses Java optimizations for cloud environments and projects like Eclipse MicroProfile that help build cloud native Java applications. It concludes with a demonstration of Platform.sh's polyglot platform as a service that aims to simplify developing, deploying and managing cloud applications.
Arquitetando soluções de computação em nuvem com JavaOtávio Santana
O Cloud Native se tornou uma grande palavra de ordem em todo o mundo, um termo que é praticamente usado por todos em todos os momentos. Mas o que isso significa? Quais são as vantagens que ele traz ao seu aplicativo e ao seu dia como desenvolvedor ou arquiteto de software? O que há de novo no mundo Java e quais são as etapas a seguir para um aplicativo em nuvem nativo? Esta apresentação é um guia passo a passo que praticamente o guiará na implementação de serviços de computação em nuvem de maneira eficaz e eficiente.
The document provides an overview of an introductory hands-on workshop on OpenStack. It discusses key topics like virtualization, types of virtualization, cloud computing models, OpenStack architecture and core projects. The workshop aims to provide an introduction to cloud computing, OpenStack deployment, configuration and usage through hands-on exercises.
This document provides an overview of microservices architecture, including concepts, characteristics, infrastructure patterns, and software design patterns relevant to microservices. It discusses when microservices should be used versus monolithic architectures, considerations for sizing microservices, and examples of pioneers in microservices implementation like Netflix and Spotify. The document also covers domain-driven design concepts like bounded context that are useful for decomposing monolithic applications into microservices.
The document discusses various software architecture patterns and principles, comparing monolithic and microservices architectures. It covers topics like layers, domain-driven design, code-first versus database-first approaches, and considerations for data management in multi-tenant systems. The key aspects of architectures like microservices and domain-driven design are explained at a high level.
The document provides an overview of Open Stack cloud services. It discusses key aspects of Open Source, cloud computing, hypervisors, Open Stack, and compares Open Stack to other cloud platforms like CloudStack and Eucalyptus. The document highlights that Open Stack provides the features required for IaaS cloud services, but some integration work is needed to commercialize it. It also notes that while the platforms differ in codebase and hypervisor support, choosing a good management layer allows portability between platforms.
This document provides an architectural overview of cloud computing and describes how a payroll processing application could be migrated to the cloud. It discusses the key attributes and layers of cloud computing including infrastructure as a service (IaaS), platform as a service (PaaS), and software as a service (SaaS). It then describes how the existing payroll application, which is installed at over 300 locations, could be deployed as a multi-tenant SaaS application in the cloud to reduce costs and maintenance burdens. The document outlines how the application's components would map to a SaaS architecture and how new tenants could be provisioned.
This document provides an architectural overview of cloud computing and describes how a payroll processing application could be migrated to the cloud. It discusses the key attributes and layers of cloud computing including infrastructure as a service (IaaS), platform as a service (PaaS), and software as a service (SaaS). It then describes how the existing payroll application, which is deployed on-premises at many government locations, could be re-architected as a multi-tenant SaaS application in the cloud to reduce costs and maintenance burdens.
Simplify DevOps with Microservices and Mobile Backends.pptxssuser5faa791
This document discusses simplifying DevOps with microservices and mobile backends. It introduces Oracle's Backend for Spring Boot platform, which provides a unified backend for developing apps using Kubernetes, containers, and the Oracle database. The platform offers developer tools, platform services, and integration with the Oracle database. It also discusses managing transactions across microservices using sagas and Oracle's Transaction Manager. The presentation concludes by inviting attendees to try out building a sample banking application in the provided hands-on lab.
RightScale Webinar: December 8, 2010 – In this Webinar, we discuss the benefits and pain points of multi-cloud as well as key considerations to have in mind when going multi-cloud. We present examples of multi-cloud scenarios and describe the design principles to consider when architecting deployments that must span and migrate across different clouds and providers.
Virtualization and virtual situations are major basics for files input in cloud adding. It is assistances for together the visitor user and the worker while it provides the first with the features needed to execute his demand, it gives the second the capacity to be cover different guests with no extra cost. The essential component in a virtual design is called hypervisor, having extra-privileges, which makes it able to play major role of dealing the input of data and funds. This hypervisor has many advantages regarding the cost, the simplicity of performance, the availability. But in the other hand, the major character played by this group makes it the faultless target for mean users targeting to attack the near system. Arun Prasath. M | Mrs. T. Sathiyabama "Virtualization in Cloud Computing" Published in International Journal of Trend in Scientific Research and Development (ijtsrd), ISSN: 2456-6470, Volume-2 | Issue-6 , October 2018, URL: http://www.ijtsrd.com/papers/ijtsrd18665.pdf
Cloud computing is affecting the software development process. It provides resources over the internet rather than requiring direct physical access. This allows developers to access resources from anywhere and reduces costs since users only pay for what they use. Cloud computing introduces new concepts like mesh computing and pay-per-use services. Research is investigating how cloud computing reduces development costs and time by making services easily accessible. However, security and privacy concerns remain an issue with storing data on external provider networks rather than locally.
Reference architectures shows a microservices deployed to KubernetesRakesh Gujjarlapudi
The document discusses microservices architecture on Kubernetes. It describes microservices as minimal, independently deployable services that interact to provide broader functionality. It contrasts this with monolithic applications. It then covers key aspects of microservices like ownership, tradeoffs compared to traditional applications, common adoption cases, and differences from SOA. It provides a reference architecture diagram for microservices on Kubernetes including components like ingress, services, CI/CD pipelines, container registry, and data stores. It also discusses design considerations for Kubernetes microservices including using Kubernetes services for service discovery and load balancing, and using an API gateway for routing between clients and services.
Architecting at Scale with the Advice ProcessEran Stiller
Software architecture is an essential aspect of the software development lifecycle. But how do you run your architecture process? How do you make architectural decisions at scale with hundreds of developers on board? Enter the Advice Process.
The Advice Process empowers anyone to make architectural decisions, even those without the "Architect" title. Say goodbye to strict hierarchies and hello to a more collaborative approach. But how do you make it work in practice? How do you set your organization up for success?
Join us in this session, where Eran will walk you through the ins and outs of the Advice Process, including how he implemented it successfully and the lessons learned along the way.
This document discusses strategies for evolving existing applications to take advantage of cloud computing capabilities. It outlines four main strategies - lift and shift, containerization, modernization, and building cloud-native applications. Lift and shift involves minimal changes and moves applications to the cloud as-is. Containerization packages applications and dependencies for portability. Modernization utilizes cloud platform services and refactors some components. Cloud-native applications are built from the ground up to be scalable and efficient in cloud environments using microservices and other modern techniques. The best strategy depends on available resources and business priorities, with an emphasis on gradually evolving applications over time to gain cloud benefits.
Developing and Deploying Microservices with Project TyeEran Stiller
Everyone's talking about Microservices. Everyone's considering doing Microservices. Everyone's starting to use Microservices. And then everyone discovers how hard it is to develop Microservices on your local machine.
Join me as we discover project "Tye," which simplifies Microservices development and flattens the learning curve of getting your services into production up and running.
See more at https://stiller.blog/portfolio/developing-and-deploying-microservices-with-tye/
API Design in the Modern Era - Architecture Next 2020Eran Stiller
APIs are at the heart of the modern software development world. Whether we author a distributed system, a microservices-based application, or a simple client-server n-tier application - our system will most probably expose an API at its core. APIs are a means to expose the functionality of a particular component to its users. Unsurprisingly, many formats for APIs have existed over the years, with the industry setting around RESTful APIs as the de-facto standard, with gRPC growing in popularity.
Join me in this session, as I review today's most popular API formats and their relative strengths and weaknesses. From REST, through OpenAPI, via gRPC and to the rising star of AsyncAPI - we'll explain how these API formats work and the tools they employ and offer some guidance as towards when we should use each. At the end of this session, you'll have a good familiarity with these formats, and you'll be in a much better position to choose between them.
Bot-Tender: A Chat Bot Walks into a Bar (2020)Eran Stiller
Chat bots are a rising and exciting new way to interact with your users and engage them wherever they are. You most probably have a web site, you might have a mobile application, and if you’re really serious (or bored) you might have a desktop application as well. But do you have a chat bot? Be it in Slack, Skype, Facebook or anywhere else – your users are already there, so why not allow them to interact with your service directly from there in a human, natural way?
In this session you’ll get to know the Microsoft Bot Framework and the Azure Bot Service, as we use them to build a real live bot bartender on stage and tackle all of the development issues one by one. So do you have a bot yet? Now is a great time!
More info at https://stiller.blog/portfolio/bot-tender-a-chat-bot-walks-into-a-bar-2020/
Why Don’t You Understand Me? Build Intelligence into Your AppsEran Stiller
Artificial Intelligence is not something exotic anymore. We want to interact with our apps in the most natural way, and we want our apps to act intelligently - personalize our experience, predict what we want to do next, or remove some of the heavy lifting we do on our daily lives. Traditionally, this required building sophisticated AI models, but today - everyone can do it! In this session we'll see how we can add vision, language and speech into our applications using Azure Cognitive Services, making them smarter than ever before. Stand out from the crowd - bring intelligence into your apps!
Modern Microservices Architecture with DockerEran Stiller
Microservices are all the rage these days. Docker is a tool which makes managing Microservices a whole lot easier. But what do Microservices really mean? What are the best practices of composing your application with Microservices? How can you leverage Docker and the public cloud to help you build a more agile DevOps process? How does the Azure Container Service fit in? Join us to find out the answer.
Windows Containers - Microsoft Ignite The TourEran Stiller
Docker containers are all the rage nowadays. But what about all of us Windows developers? In this session I'll show you what are Windows Containers and how to use them to easily package and deploy your Windows applications, services and IIS apps using standard and familiar Docker tools.
Architecting Multitenant SaaS Applications with Azure - Microsoft Ignite The ...Eran Stiller
Multitenancy is a software architecture pattern in which a single instance of software serves multiple groups of users (known as tenants or organizations). Many modern SaaS applications use this pattern to serve their customers with maximum efficiency while maintaining operational costs low. But how do you build a multitenant application right? How do you secure one tenant's information from another tenant's users? How do you keep operational costs low? How do you monitor and manage this stuff?
In this session you will gain architecture practices for architecting multitenant SaaS applications, learnt from migrating real applications to the cloud so that you won't have to learn them the hard way, with implementation tips and tricks on Azure.
Bot Framework - Microsoft Ignite The TourEran Stiller
Chat bots are a rising and exciting new way to interact with your users and engage them wherever they are. You most probably have a web site and you might have a mobile application. But do you have a chat bot? Be it in Slack, Skype, Facebook or anywhere else - your users are already there, so why not allow them to interact with your service directly from there in a human, natural way?
In this session you'll get to know the Microsoft Bot Framework and the Azure Bot Service, as we use them to build a real live bot bartender on stage and tackle all of the development issues one by one.
Serverless platforms are not new anymore; even Serverless Compute has been around for a while, with popular implementations such as AWS Lambda, Azure Functions and Google Cloud Functions. However, Functions-as-a-Service (FaaS) platforms are just the tip of the iceberg, as new cutting edge Serverless abstractions such as Containers-as-a-Services (CaaS) and Serverless Application Platforms come into play.
In this session we'll discuss multiple modern Serverless platform abstractions, along with demonstrations from the all major public cloud vendors - AWS, Azure & GCP.
Keynote - From Monolith to Microservices - Lessons Learned in the Real WorldEran Stiller
This document summarizes lessons learned from transitioning to a microservices architecture in the real world. It discusses doing the transition for the right reasons like scalability and agility rather than because microservices are cool. An evolution approach through breaking a monolith into services is compared to a revolution of rewriting a system. It also covers the importance of DevOps, organizational change, and overcoming the steep learning curve of new technologies in the transition. Microservices require governance and structure rather than anarchy. The essence of independent, scalable services must be understood to avoid recreating monolithic problems.
Architecting a Serverless IoT System in the CloudEran Stiller
The Internet of Things is the interconnect of devices and cloud. As the proliferation of connected devices expands to
multiple industries, more and more hardware companies are discovering that they are now software companies as
well. Building a cloud based software system is not easy, and IoT system are no different. However, various cloud
platform services exist out there which make developing such systems much easier, allowing customers to focus on
their own unique business logic.
Join me in this session, as I demonstrate the architecture of a real-world IoT Azure based system which utilizes
various PaaS services in a completely Serverless manner. We'll show how the usage of IoT Hub, Azure Functions,
Azure Stream Analytics and other PaaS services enable us to architect and implement an IoT system rapidly and at a
low cost.
6 Lessons I Learned on my Journey from Monolith to MicroservicesEran Stiller
Microservices is all the rage. We want to use Microservices, we want to decompose into Microservices and we want Microservices to be a part of our world. While modern tools and platforms such as Docker, Kubernetes, Service Mesh and the public cloud help in implementing and maintaining such systems, the reality is that many fail even before the first line of code was written.
Join me as I provide my perspective on transitioning from Monolith to Microservices through lessons learned in the real world, while architecting multiple Microservices based software systems at various customers.
CodeValue helps companies accelerate their IoT solutions using Microsoft Azure services. They helped Kornit Digital reduce time-to-market by 60% and operational costs by 50% by connecting Kornit's Konnect printers to Azure IoT Hub. For Feelit, using Azure IoT Edge at the network edge reduced operational overhead by 50% and time-to-market by 60%. CodeValue also created their own IoT product called ioTwo to help other companies develop IoT solutions.
Create Your Own Serverless PKI with .NET & Azure Key VaultEran Stiller
A Public Key Infrastructure (PKI) is the basis of modern system authentication; X.509 certificates are at the core of modern cryptography. Building your own PKI is not for the faint of heart, so we usually buy our certificates from an external Certificate Authority or operate a 3rd-party off-the-shelf PKI.
But what can you do if you need to issue your own certificates while keeping your costs low? What if, for example, you're in the business of manufacturing millions of IoT devices and you need to issue a certificate to each and every one of them? And to top it off - you want to do it in a Serverless manner?
Join me in this session, as we build a Serverless PKI system with Azure Functions & Key-Vault and learn all about Key-Vault's capabilities in regards to X.509 certificates along the way.
An overview introduction to some Azure PaaS services including Azure App Service, Azure Queues & Azure Functions. This session was delivered at TLV Cloud Week 2019.
Sample code is available at https://github.com/estiller/eShopOnWeb
A slide deck from my inspirational talk on why it is important to get into learning cloud computing, and how did I get involved personally.
https://stiller.blog/2019/07/boost-your-career-with-cloud-computing/
8 Best Automated Android App Testing Tool and Framework in 2024.pdfkalichargn70th171
Regarding mobile operating systems, two major players dominate our thoughts: Android and iPhone. With Android leading the market, software development companies are focused on delivering apps compatible with this OS. Ensuring an app's functionality across various Android devices, OS versions, and hardware specifications is critical, making Android app testing essential.
Using Query Store in Azure PostgreSQL to Understand Query PerformanceGrant Fritchey
Microsoft has added an excellent new extension in PostgreSQL on their Azure Platform. This session, presented at Posette 2024, covers what Query Store is and the types of information you can get out of it.
Top Benefits of Using Salesforce Healthcare CRM for Patient Management.pdfVALiNTRY360
Salesforce Healthcare CRM, implemented by VALiNTRY360, revolutionizes patient management by enhancing patient engagement, streamlining administrative processes, and improving care coordination. Its advanced analytics, robust security, and seamless integration with telehealth services ensure that healthcare providers can deliver personalized, efficient, and secure patient care. By automating routine tasks and providing actionable insights, Salesforce Healthcare CRM enables healthcare providers to focus on delivering high-quality care, leading to better patient outcomes and higher satisfaction. VALiNTRY360's expertise ensures a tailored solution that meets the unique needs of any healthcare practice, from small clinics to large hospital systems.
For more info visit us https://valintry360.com/solutions/health-life-sciences
Consistent toolbox talks are critical for maintaining workplace safety, as they provide regular opportunities to address specific hazards and reinforce safe practices.
These brief, focused sessions ensure that safety is a continual conversation rather than a one-time event, which helps keep safety protocols fresh in employees' minds. Studies have shown that shorter, more frequent training sessions are more effective for retention and behavior change compared to longer, infrequent sessions.
Engaging workers regularly, toolbox talks promote a culture of safety, empower employees to voice concerns, and ultimately reduce the likelihood of accidents and injuries on site.
The traditional method of conducting safety talks with paper documents and lengthy meetings is not only time-consuming but also less effective. Manual tracking of attendance and compliance is prone to errors and inconsistencies, leading to gaps in safety communication and potential non-compliance with OSHA regulations. Switching to a digital solution like Safelyio offers significant advantages.
Safelyio automates the delivery and documentation of safety talks, ensuring consistency and accessibility. The microlearning approach breaks down complex safety protocols into manageable, bite-sized pieces, making it easier for employees to absorb and retain information.
This method minimizes disruptions to work schedules, eliminates the hassle of paperwork, and ensures that all safety communications are tracked and recorded accurately. Ultimately, using a digital platform like Safelyio enhances engagement, compliance, and overall safety performance on site. https://safelyio.com/
Most important New features of Oracle 23c for DBAs and Developers. You can get more idea from my youtube channel video from https://youtu.be/XvL5WtaC20A
Preparing Non - Technical Founders for Engaging a Tech AgencyISH Technologies
Preparing non-technical founders before engaging a tech agency is crucial for the success of their projects. It starts with clearly defining their vision and goals, conducting thorough market research, and gaining a basic understanding of relevant technologies. Setting realistic expectations and preparing a detailed project brief are essential steps. Founders should select a tech agency with a proven track record and establish clear communication channels. Additionally, addressing legal and contractual considerations and planning for post-launch support are vital to ensure a smooth and successful collaboration. This preparation empowers non-technical founders to effectively communicate their needs and work seamlessly with their chosen tech agency.Visit our site to get more details about this. Contact us today www.ishtechnologies.com.au
Hand Rolled Applicative User ValidationCode KataPhilip Schwarz
Could you use a simple piece of Scala validation code (granted, a very simplistic one too!) that you can rewrite, now and again, to refresh your basic understanding of Applicative operators <*>, <*, *>?
The goal is not to write perfect code showcasing validation, but rather, to provide a small, rough-and ready exercise to reinforce your muscle-memory.
Despite its grandiose-sounding title, this deck consists of just three slides showing the Scala 3 code to be rewritten whenever the details of the operators begin to fade away.
The code is my rough and ready translation of a Haskell user-validation program found in a book called Finding Success (and Failure) in Haskell - Fall in love with applicative functors.
E-commerce Development Services- Hornet DynamicsHornet Dynamics
For any business hoping to succeed in the digital age, having a strong online presence is crucial. We offer Ecommerce Development Services that are customized according to your business requirements and client preferences, enabling you to create a dynamic, safe, and user-friendly online store.
Artificia Intellicence and XPath Extension FunctionsOctavian Nadolu
The purpose of this presentation is to provide an overview of how you can use AI from XSLT, XQuery, Schematron, or XML Refactoring operations, the potential benefits of using AI, and some of the challenges we face.
Flutter is a popular open source, cross-platform framework developed by Google. In this webinar we'll explore Flutter and its architecture, delve into the Flutter Embedder and Flutter’s Dart language, discover how to leverage Flutter for embedded device development, learn about Automotive Grade Linux (AGL) and its consortium and understand the rationale behind AGL's choice of Flutter for next-gen IVI systems. Don’t miss this opportunity to discover whether Flutter is right for your project.
8. What Is the Best Answer a Software Architect Can Give?
9
9. Disclaimer
This talk will NOT give you the answers
It will give you the questions you should ask
And hopefully answer
10
10. About Eran Stiller
Cloud Division Leader & Co-Founder at CodeValue
Software architect, consultant and instructor
Microsoft Azure MVP
Many years of hands-on experience
Expert in large-scale, server-side, highly-concurrent
systems
Co-Founder of Azure Israel Meetup
11
11. 13
OzCode – Debug Like a WizardQuit debugging, spend more time writing brilliant software
With our Visual Studio extension for C#, follow the road to a bug-free world
oz-code.com | @oz_code
Magic Glance / Figure out complex expressionsLINQ Debugging / Know the flow of your LINQ queries
Reveal / Focus on data that actually matterSearch/ Find that needle in a haystack of data
13. Multitenancy
The term "software multitenancy" refers to a software architecture in
which a single instance of software runs on a server and serves multiple
tenants. A tenant is a group of users who share a common access with
specific privileges to the software instance. With a multitenant
architecture, a software application is designed to provide every tenant
a dedicated share of the instance - including its data, configuration,
user management, tenant individual functionality and non-functional
properties. Multitenancy contrasts with multi-instance architectures,
where separate software instances operate on behalf of different
tenants.
Some commentators regard multitenancy as an important feature
of cloud computing.
15
- Wikipedia
14. Multitenancy
The term "software multitenancy" refers to a software architecture in
which a single instance of software runs on a server and serves multiple
tenants. A tenant is a group of users who share a common access with
specific privileges to the software instance. With a multitenant
architecture, a software application is designed to provide every tenant
a dedicated share of the instance - including its data, configuration,
user management, tenant individual functionality and non-functional
properties. Multitenancy contrasts with multi-instance architectures,
where separate software instances operate on behalf of different
tenants.
Some commentators regard multitenancy as an important feature
of cloud computing.
16
- Wikipedia
15. Multitenancy
The term "software multitenancy" refers to a software architecture in
which a single instance of software runs on a server and serves multiple
tenants. A tenant is a group of users who share a common access with
specific privileges to the software instance. With a multitenant
architecture, a software application is designed to provide every tenant
a dedicated share of the instance - including its data, configuration,
user management, tenant individual functionality and non-functional
properties. Multitenancy contrasts with multi-instance architectures,
where separate software instances operate on behalf of different
tenants.
Some commentators regard multitenancy as an important feature
of cloud computing.
17
- Wikipedia
16. Multitenancy
The term "software multitenancy" refers to a software architecture in
which a single instance of software runs on a server and serves multiple
tenants. A tenant is a group of users who share a common access with
specific privileges to the software instance. With a multitenant
architecture, a software application is designed to provide every tenant
a dedicated share of the instance - including its data, configuration,
user management, tenant individual functionality and non-functional
properties. Multitenancy contrasts with multi-instance architectures,
where separate software instances operate on behalf of different
tenants.
Some commentators regard multitenancy as an important feature
of cloud computing.
18
- Wikipedia
17. Multitenancy
The term "software multitenancy" refers to a software architecture in
which a single instance of software runs on a server and serves multiple
tenants. A tenant is a group of users who share a common access with
specific privileges to the software instance. With a multitenant
architecture, a software application is designed to provide every tenant
a dedicated share of the instance - including its data, configuration,
user management, tenant individual functionality and non-functional
properties. Multitenancy contrasts with multi-instance architectures,
where separate software instances operate on behalf of different
tenants.
Some commentators regard multitenancy as an important feature
of cloud computing.
19
- Wikipedia
36. Per Tenant
Reference Architecture (Microservices)
40
Reverse
Proxy
Web SPA Mobile App
Blob
Storage
Mongo
Redis
Cache
Message
Service
User Service
Auth Service
Mongo
Redis
Cache
45. Per Tenant
Reference Architecture (Monolith)
49
Web SPA Mobile App
Blob
Storage
SQL
Redis Cache
T T
T T
Back-End API
Provisioning
Portal
Tenant
Provisioning
46. Per Tenant
Reference Architecture (Microservices)
50
Reverse
Proxy
Web SPA Mobile App
Blob
Storage
Mongo
Redis
Cache
Message
Service
User Service
Auth Service
Mongo
Redis
Cache
47. Per Tenant
Reference Architecture (Microservices)
51
Reverse
Proxy
Web SPA Mobile App
Blob
Storage
Mongo
Redis
Cache
Message
Service
User Service
Auth Service
Mongo
Redis
Cache
Provisioning
Portal
Provisioning
Service
55. Per Tenant
Reference Architecture (Monolith)
61
Web SPA Mobile App
Blob
Storage
SQL
Redis Cache
T T
T T
Back-End API
Provisioning
Portal
Tenant
Provisioning
56. Per Tenant
Reference Architecture (Monolith)
62
Web SPA Mobile App
Blob
Storage
SQL
Redis Cache
Tenant
Data
T T
T T
Provisioning
Portal
Back-End API
Tenant
Management
57. Per Tenant
Reference Architecture (Microservices)
63
Reverse
Proxy
Web SPA Mobile App
Blob
Storage
Mongo
Redis
Cache
Message
Service
User Service
Auth Service
Mongo
Redis
Cache
Provisioning
Portal
Provisioning
Service
58. Per Tenant
Reference Architecture (Microservices)
64
Reverse
Proxy
Web SPA Mobile App
Blob
Storage
Mongo
Redis
Cache
Message
Service
User Service
Auth Service
Mongo
Redis
Cache
Tenant
Management
Tenant
Data
Provisioning
Portal
64. Takeaways
71
Carefully define the tenant boundaries
Invest in your architecture
Follow well known architecture patterns – to the extreme
Decide on shared vs. dedicated resources
Don’t forget to handle onboarding, provisioning & billing
Rock solid infrastructure is key
Monitor each and every tenant
Earn a lot of cash!
How do you update a system running 24/7/365?
How do you keep the application serversresponsive?
How do you keep all application serverssynced?
How do you update the data/schema?
How do you update all your clients’ software?
Web, Mobile, Desktop…
How do you rollback on error?
How do you rollback data?
How do you know there is an error?