How far have you got with learning about Cloud? Got your head around Platform as a Service? Understand what IaaS means? Can spell Docker? Working in a DevOps mode? It’s easy to focus on learning new technology but it’s time to take a step back and look at what the technical implications are when an application is heading to the cloud. In the world of the cloud the benefits are high but the economics (financial and technical) can be radically different. Learn more about these new realities and how they can change application design, deployment and support. The introduction of Cloud technologies and its rapid adoption creates new opportunities and challenges. Whether designer, developer or tester, this talk will help you to start thinking differently about Java and the Cloud.
Presented at JAX DE, 2016
Impact2014: Introduction to the IBM Java ToolsChris Bailey
IBM provides a number of free tools to assist in monitoring and diagnosing issues when running any Java application - from Hello World to IBM or third-party, middleware-based applications. This session introduces attendees to those tools, highlights how they have been extended with IBM middleware product knowledge, how they have been integrated into IBMs development tools, and how to use them to investigate and resolve real-world problem scenarios.
Even the most innovative and groundbreaking applications risk failure if they do not provide an engaging and responsive user experience. Performance and scalability both require access to real-time performance data that lets developers optimize code, allows the infrastructure to scale automatically, enables operations teams to identify issues, and gives business owners insights into the success of the application. This session will show introduce you to Node Application Metrics, an IBM-led open source project that provides monitoring and analytics capabilities for your application ranging from developer tools in Eclipse, to open source monitoring stacks like Elasticsearch with Kibana, to enterprise-wide monitoring products.
Presented at IBM InterConnect 2016
The availability of on-demand, utility computing via the cloud introduces a new world of flexibility but also an entirely new charging model for applications. This new model has long promised to provide metered compute, charging you for exactly the amount of processing power you need, at the points that you need it.
The cloud is a large paradigm change, not just for some of the technologies involved but also for the economics and the return on investment for deploying and running a given application. Whereas traditional on-premises applications require upfront capital expenditure on hardware, cloud deployments have an ongoing operational expense. Additionally, clouds typically charge by the amount of memory used, whereas applications are typically developed and tuned to run as fast as possible using all the available (already paid for) resources.
Chris Bailey explains how this new economics of the cloud is driving changes in the way applications are architected, developed, and deployed.
Presented at the O'Reilly Software Architecture Conference, London 2017
Presented at JAX London 2015.
The last few years have seen a huge growth in the usage of JavaScript, to the extent that it is often reported to be the #1 programming language in use today. Additionally, the arrival of server-side JavaScript through frameworks such as Node.js and Ringo.js, and JavaScript on the JVM through Nashorn and Avatar.js, means that enterprise web applications written in JavaScript are not just a possibility—but a reality for companies such as LinkedIn, eBay, Yahoo, ADP and Dow Jones. This session will compare and contrast the two platforms and describe the advantages of each for deploying, managing and monitoring highly scalable applications.
JavaOne2013: Secure Engineering Practices for JavaChris Bailey
Developing programs that are inherently immune to attack requires sound software engineering practices. This session looks at the overall software engineering lifecycle and the critical points at which software security is a specific consideration. From the requirements for third-party suppliers to in-house development, your process must offer a level of confidence that the software functions as intended and is free of vulnerabilities. The presentation shows how using threat models, code pattern analysis tooling, targeted reviews, and more enhances Java security.
QCon Shanghai: Trends in Application DevelopmentChris Bailey
Presented at QCon Shanghai:
Trends in Application Development
The last few years have seen a number of growing trends in application development, driven by the disruptive changes around cloud, mobile and engaging applications. These have led to a wider set of languages being used for production applications, the emergence of asynchronous and reactive programming, and interest in micro-services based architectures. This keynote will review some of the growing trends in application development, and highlight which skills you should be developing and which architectures you should be using.
Video available from Parleys.com:
https://www.parleys.com/talk/java-versus-javascript-head-head
Programmers are often advised to use “the right tool for the right job.” So how does Java compare to JavaScript? This session compares and contrasts Java and JavaScript in different areas and determines just which is the king of the languages that start with Java.
JavaOne2013: Securing Java in the Server Room - Tim EllisonChris Bailey
Java has a security model targeted at running applets and untrusted code, so you don’t need to worry about running your own code on your own servers, right? In fact, there are several vulnerability patterns that can affect server-side Java applications, and this presentation outlines some of the steps you should take to ensure that your server room is not compromised. It looks at the established techniques for enhancing your security and shows new technology from IBM that addresses several attack vectors.
Impact2014: Introduction to the IBM Java ToolsChris Bailey
IBM provides a number of free tools to assist in monitoring and diagnosing issues when running any Java application - from Hello World to IBM or third-party, middleware-based applications. This session introduces attendees to those tools, highlights how they have been extended with IBM middleware product knowledge, how they have been integrated into IBMs development tools, and how to use them to investigate and resolve real-world problem scenarios.
Even the most innovative and groundbreaking applications risk failure if they do not provide an engaging and responsive user experience. Performance and scalability both require access to real-time performance data that lets developers optimize code, allows the infrastructure to scale automatically, enables operations teams to identify issues, and gives business owners insights into the success of the application. This session will show introduce you to Node Application Metrics, an IBM-led open source project that provides monitoring and analytics capabilities for your application ranging from developer tools in Eclipse, to open source monitoring stacks like Elasticsearch with Kibana, to enterprise-wide monitoring products.
Presented at IBM InterConnect 2016
The availability of on-demand, utility computing via the cloud introduces a new world of flexibility but also an entirely new charging model for applications. This new model has long promised to provide metered compute, charging you for exactly the amount of processing power you need, at the points that you need it.
The cloud is a large paradigm change, not just for some of the technologies involved but also for the economics and the return on investment for deploying and running a given application. Whereas traditional on-premises applications require upfront capital expenditure on hardware, cloud deployments have an ongoing operational expense. Additionally, clouds typically charge by the amount of memory used, whereas applications are typically developed and tuned to run as fast as possible using all the available (already paid for) resources.
Chris Bailey explains how this new economics of the cloud is driving changes in the way applications are architected, developed, and deployed.
Presented at the O'Reilly Software Architecture Conference, London 2017
Presented at JAX London 2015.
The last few years have seen a huge growth in the usage of JavaScript, to the extent that it is often reported to be the #1 programming language in use today. Additionally, the arrival of server-side JavaScript through frameworks such as Node.js and Ringo.js, and JavaScript on the JVM through Nashorn and Avatar.js, means that enterprise web applications written in JavaScript are not just a possibility—but a reality for companies such as LinkedIn, eBay, Yahoo, ADP and Dow Jones. This session will compare and contrast the two platforms and describe the advantages of each for deploying, managing and monitoring highly scalable applications.
JavaOne2013: Secure Engineering Practices for JavaChris Bailey
Developing programs that are inherently immune to attack requires sound software engineering practices. This session looks at the overall software engineering lifecycle and the critical points at which software security is a specific consideration. From the requirements for third-party suppliers to in-house development, your process must offer a level of confidence that the software functions as intended and is free of vulnerabilities. The presentation shows how using threat models, code pattern analysis tooling, targeted reviews, and more enhances Java security.
QCon Shanghai: Trends in Application DevelopmentChris Bailey
Presented at QCon Shanghai:
Trends in Application Development
The last few years have seen a number of growing trends in application development, driven by the disruptive changes around cloud, mobile and engaging applications. These have led to a wider set of languages being used for production applications, the emergence of asynchronous and reactive programming, and interest in micro-services based architectures. This keynote will review some of the growing trends in application development, and highlight which skills you should be developing and which architectures you should be using.
Video available from Parleys.com:
https://www.parleys.com/talk/java-versus-javascript-head-head
Programmers are often advised to use “the right tool for the right job.” So how does Java compare to JavaScript? This session compares and contrasts Java and JavaScript in different areas and determines just which is the king of the languages that start with Java.
JavaOne2013: Securing Java in the Server Room - Tim EllisonChris Bailey
Java has a security model targeted at running applets and untrusted code, so you don’t need to worry about running your own code on your own servers, right? In fact, there are several vulnerability patterns that can affect server-side Java applications, and this presentation outlines some of the steps you should take to ensure that your server room is not compromised. It looks at the established techniques for enhancing your security and shows new technology from IBM that addresses several attack vectors.
This session discusses how to maximize the performance of an application deployment with tools that are native to the server platform, as well as cross-platform Java analysis and monitoring tools include IBM Health Center and IBM Service Engage. The session begins with systematic steps organizations can take to locate a performance problem in a complex system and moves on to analysis they can do to understand the root cause of the problem. The picture is completed by consideration of the tools and techniques available to monitor application performance in normal operation so that organizations can catch performance issues before they build up into serious problems.
JavaOne2013: Build Your Own Runtime Monitoring for the IBM JDK with the Healt...Chris Bailey
In the recently released Health Center version 2.2 of the IBM JDK, a new API was made available that makes it possible to create your own monitoring and profiling tools that uses the Health Center data and recommendations. This session provides an overview of the API, shows you how to use it to create simple alerts based on the occurrence of defined conditions, and explores how it is being used by IBM to integrate the Health Center data into its own products.
Video available from Parleys.com:
https://www.parleys.com/talk/build-your-own-runtime-monitoring-ibm-jdk-health-center-api
InterConnect2016: WebApp Architectures with Java and Node.jsChris Bailey
Java has been the historical leader for enterprise web application development. However, Node.js is rapidly gaining in popularity for developing mobile apps, APIs and web applications. Java and Node.js are complimentary tools for enterprise web application development and this session will highlight the strengths and complimentary nature of each.
Presented at IBM InterConnect 2016
FrenchKit: End to End Application Development with SwiftChris Bailey
The addition of support for Swift as a server-side programming language makes it possible to use not just the same language on client and server, but also to reuse APIs and code. This opens up a world of possibilities for creating and deploying new types of applications. This session will introduce you to new models of client and server interaction for application development, and show you how to rapidly build an app with both client and server components written in Swift.
Presented at FrenchKit: September 2016
How to secure your web applications with NGINXWallarm
Your website is probably vulnerable and gonna be hacked one day. Here're 15 ready-to-use tips on how you can make your web applications more secure. How to protect web application from hacker attacks and mitigate DDoS with NGINX web server.
JavaOne 2013: Garbage Collection Unleashed - Demystifying the WizardryRyan Sciampacone
Garbage Collection Unleashed: Demystifying the Wizardry
JavaOne 2013 CON3948
Ryan A. Sciampacone, Senior Software Developer, IBM JTC
Abstract: Problems with garbage collection? Pauses too long? Maybe too frequent? Other than telling you to give your application more memory, does staring at the logs yield little to no information? Ready to throw your hands up in frustration? Many application developers struggle with understanding where they may have gone wrong from either a deployment or a development perspective when garbage collection becomes a suspect. This presentation aims to demystify some of the mechanics of garbage collection technologies by looking at a series of problems, mapping them back to the implementation in simple terms, and understanding what this means about the collection and your application and how to address the issue.
Veeam presentation for the NimbleStorage Connect User Group in Bristol and London. Including how the integration works, and why it is important to use Veeam and Nimble together.
With an increasing number of applications being deployed in the cloud, this trend will soon touch performance testers within every organisation. This presentation will dispel the hype, tell you what you need to know to embrace this opportunity, and answer the following questions:
* What are the challenges specifically related to performance testing cloud-based applications?
* What are some common performance problems seen in cloud-based applications, and how can you test for them?
* How will cloud-based load generators help your performance testing?
Don't get left behind! A solid understanding of cloud concepts will be invaluable to your testing career.
This presentation was originally given at Iqnite Australia (Melbourne) on October 16th, 2014.
You never feel disappointed planning with Solution2Pass' Professional VMware vSphere 7.x guide and 2V0-21.20 dumps. Pick what best fits with needs. We guarantee you of an excellent 2V0-21.20 Professional VMware vSphere 7.x examination experience that you ever desi https://www.solution2pass.com/2V0-21-20-questions.html
VMworld 2013: Part 2: How to Build a Self-Healing Data Center with vCenter Or...VMworld
VMworld 2013
Nicholas Colyer, Catamaran RX
Dan Mitchell, VMware
Learn more about VMworld and register at http://www.vmworld.com/index.jspa?src=socmed-vmworld-slideshare
Slide will show what veeam agent can do.
Demo
- How to deploy veeam agent for linux
- How to configuration veeam agent from console
- Recovery file from veeam agent console
Bonus Track
- Migrate Physical Workload (Linux) to Microsoft Azure
Vmware Certified Professional 6 2V0-621 DumpsShamar41
pass4sureexam is a website which can help you save time and energy to rapidly and efficiently master the vmware certification 2v0-621d exam dumps.
https://www.pass4sureexam.com/2V0-621.html
IBM Monitoring and Diagnostic Tools - GCMV 2.8Chris Bailey
Overview of IBM Monitoring and Diagnostics Tools - Garbage Collection and Memory Visualizer 2.8, which provides offline memory and Garbage Collection monitoring for Java and Node.js applications
JavaOne 2015: From Java Code to Machine CodeChris Bailey
When you write and run Java code, it is first compiled by javac to bytecode and then converted to optimized machine code by the just-in-time (JIT) compiler. Although JIT compilers are advanced and are able to create highly optimized code, the level of optimization achievable is ultimately limited by how the original Java code was written. This presentation introduces the compilation and optimization process and uses applications to show how following several simple rules when writing your Java code can lead to highly optimizable, and therefore highly performant, applications.
Presented at JavaOne 2015
This session discusses how to maximize the performance of an application deployment with tools that are native to the server platform, as well as cross-platform Java analysis and monitoring tools include IBM Health Center and IBM Service Engage. The session begins with systematic steps organizations can take to locate a performance problem in a complex system and moves on to analysis they can do to understand the root cause of the problem. The picture is completed by consideration of the tools and techniques available to monitor application performance in normal operation so that organizations can catch performance issues before they build up into serious problems.
JavaOne2013: Build Your Own Runtime Monitoring for the IBM JDK with the Healt...Chris Bailey
In the recently released Health Center version 2.2 of the IBM JDK, a new API was made available that makes it possible to create your own monitoring and profiling tools that uses the Health Center data and recommendations. This session provides an overview of the API, shows you how to use it to create simple alerts based on the occurrence of defined conditions, and explores how it is being used by IBM to integrate the Health Center data into its own products.
Video available from Parleys.com:
https://www.parleys.com/talk/build-your-own-runtime-monitoring-ibm-jdk-health-center-api
InterConnect2016: WebApp Architectures with Java and Node.jsChris Bailey
Java has been the historical leader for enterprise web application development. However, Node.js is rapidly gaining in popularity for developing mobile apps, APIs and web applications. Java and Node.js are complimentary tools for enterprise web application development and this session will highlight the strengths and complimentary nature of each.
Presented at IBM InterConnect 2016
FrenchKit: End to End Application Development with SwiftChris Bailey
The addition of support for Swift as a server-side programming language makes it possible to use not just the same language on client and server, but also to reuse APIs and code. This opens up a world of possibilities for creating and deploying new types of applications. This session will introduce you to new models of client and server interaction for application development, and show you how to rapidly build an app with both client and server components written in Swift.
Presented at FrenchKit: September 2016
How to secure your web applications with NGINXWallarm
Your website is probably vulnerable and gonna be hacked one day. Here're 15 ready-to-use tips on how you can make your web applications more secure. How to protect web application from hacker attacks and mitigate DDoS with NGINX web server.
JavaOne 2013: Garbage Collection Unleashed - Demystifying the WizardryRyan Sciampacone
Garbage Collection Unleashed: Demystifying the Wizardry
JavaOne 2013 CON3948
Ryan A. Sciampacone, Senior Software Developer, IBM JTC
Abstract: Problems with garbage collection? Pauses too long? Maybe too frequent? Other than telling you to give your application more memory, does staring at the logs yield little to no information? Ready to throw your hands up in frustration? Many application developers struggle with understanding where they may have gone wrong from either a deployment or a development perspective when garbage collection becomes a suspect. This presentation aims to demystify some of the mechanics of garbage collection technologies by looking at a series of problems, mapping them back to the implementation in simple terms, and understanding what this means about the collection and your application and how to address the issue.
Veeam presentation for the NimbleStorage Connect User Group in Bristol and London. Including how the integration works, and why it is important to use Veeam and Nimble together.
With an increasing number of applications being deployed in the cloud, this trend will soon touch performance testers within every organisation. This presentation will dispel the hype, tell you what you need to know to embrace this opportunity, and answer the following questions:
* What are the challenges specifically related to performance testing cloud-based applications?
* What are some common performance problems seen in cloud-based applications, and how can you test for them?
* How will cloud-based load generators help your performance testing?
Don't get left behind! A solid understanding of cloud concepts will be invaluable to your testing career.
This presentation was originally given at Iqnite Australia (Melbourne) on October 16th, 2014.
You never feel disappointed planning with Solution2Pass' Professional VMware vSphere 7.x guide and 2V0-21.20 dumps. Pick what best fits with needs. We guarantee you of an excellent 2V0-21.20 Professional VMware vSphere 7.x examination experience that you ever desi https://www.solution2pass.com/2V0-21-20-questions.html
VMworld 2013: Part 2: How to Build a Self-Healing Data Center with vCenter Or...VMworld
VMworld 2013
Nicholas Colyer, Catamaran RX
Dan Mitchell, VMware
Learn more about VMworld and register at http://www.vmworld.com/index.jspa?src=socmed-vmworld-slideshare
Slide will show what veeam agent can do.
Demo
- How to deploy veeam agent for linux
- How to configuration veeam agent from console
- Recovery file from veeam agent console
Bonus Track
- Migrate Physical Workload (Linux) to Microsoft Azure
Vmware Certified Professional 6 2V0-621 DumpsShamar41
pass4sureexam is a website which can help you save time and energy to rapidly and efficiently master the vmware certification 2v0-621d exam dumps.
https://www.pass4sureexam.com/2V0-621.html
IBM Monitoring and Diagnostic Tools - GCMV 2.8Chris Bailey
Overview of IBM Monitoring and Diagnostics Tools - Garbage Collection and Memory Visualizer 2.8, which provides offline memory and Garbage Collection monitoring for Java and Node.js applications
JavaOne 2015: From Java Code to Machine CodeChris Bailey
When you write and run Java code, it is first compiled by javac to bytecode and then converted to optimized machine code by the just-in-time (JIT) compiler. Although JIT compilers are advanced and are able to create highly optimized code, the level of optimization achievable is ultimately limited by how the original Java code was written. This presentation introduces the compilation and optimization process and uses applications to show how following several simple rules when writing your Java code can lead to highly optimizable, and therefore highly performant, applications.
Presented at JavaOne 2015
From Java code to Java heap: Understanding and optimizing your application's ...Chris Bailey
This presentation gives you insight into the memory usage of Java™ code, covering the memory overhead of putting an int value into an Integer object, the cost of object delegation, and the memory efficiency of the different collection types. You'll learn how to determine where inefficiencies occur in your application and how to choose the right collections to improve your code.
You can read an article relating to the slides here:
http://www.ibm.com/developerworks/java/library/j-codetoheap/index.html
Efficient Memory and Thread Management in Highly Parallel Java Applicationspkoza
This presentation discusses strategies to estimate and control the memory use of multi-threaded java applications. It includes a quick overview of how the JVM uses memory, followed by techniques to estimate the memory usage of various types of objects during testing. This knowledge is then used as the basis for a runtime scheme to estimate and control the memory use of multiple threads. The final part of the presentation describes how to implement robust handling for unchecked exceptions, especially Out Of Memory (OOM) errors, and how to ensure threads stop properly when unexpected events occur.
WebSphere Technical University: Top WebSphere Problem Determination FeaturesChris Bailey
Problem determination is an important focus area in the IBM WebSphere Application Server. Serviceability improvements have been added that have greatly improved the ability to find root causes of problems in both the full IBM WebSphere Application Server profile, and the newer Liberty profile. The session focuses on how to effectively use serviceability improvements added to the application server since V8.0. This includes high performance extensibe logging, cross-component trace, IBM Support Assistant data collector, timed operations, memory leak detection/prevention, and IBM Support Assistant 5.
Presented at the WebSphere Technical University 2014, Dusseldorf
Node Summit 2016: Web App ArchitecturesChris Bailey
While Node.js is becoming the platform of choice for web-scale applications, enterprises are resistant to change and have legacy applications based on other technologies, typically Java. Emerging web application architectures bring together the web-scale and integrated browser characteristics of Node.js with the transactional nature of Java to deliver high-performance, engaging web applications. Learn how the complimentary characteristics of Node.js and Java are being used to build the next generation of web applications.
Swift Summit: Pushing the boundaries of Swift to the ServerChris Bailey
Swift is a robust language for mobile but cloud development opens the door to new opportunities for today's top app developers. Integrating projects to backend systems can sometimes be problematic, requiring new tools and skills. It doesn't have to be; end-to-end Swift opens the door to radically simpler app dev so we can all focus on the engagement. This session will describe the work that's been done to bring Swift to the server, both in terms of efforts in the Swift.org projects, and with implementation of server frameworks, and show you how you can quickly create and deploy applications with both server and client components.
Presented at the Swift Summit, Nov 7th 2016
From Java Code to Java Heap: Understanding the Memory Usage of Your App - Ch...jaxLondonConference
Presented at JAX London 2013
When you write and run Java code, the JVM makes several allocations on your behalf, but do you have an understanding of how much that is? This session provides insight into the memory usage of Java code, covering the memory overhead of putting int into an integer object and the cost of object delegation and the memory efficiency of the different collection types. It also gives you an understanding of the off-Java (native) heap memory usage of some types of Java objects, such as threads and sockets.
All Change how the economics of Cloud will make you think differently about JavaSteve Poole
How far have you gotten with learning about the cloud? Got your head around platform as a service? Understand what IaaS means? Know how to spell Docker? It’s easy to focus on learning new technology, but it’s time to take a step back and look at what the technical implications are when an application is heading to the cloud. In the world of the cloud, the benefits are high but the economics (financial and technical) can be radically different. Learn about these new realities and how they can change application design, deployment, and support. Cloud technologies and their rapid adoption are creating new opportunities and challenges. Whether you’re a designer, developer, or tester, this session will help you start thinking differently about Java and the cloud.
JavaOne 2015 Devops and the Darkside CON6447Steve Poole
So you get DevOps. You like the idea and think it’s important. The trouble is that others in your team don’t. This session will help you understand how to convince your team of the benefits of DevOps. Packed with facts and figures, the presentation works through the common challenges Java teams face when moving to a DevOps model and outlines how to address them. It also shows you how to balance evangelism against pragmatism when championing DevOps in your organization. You’ll learn how others have made the transition to DevOps and understand what mistakes to avoid when doing so. Whether you need to know how to be a DevOps evangelist or simply want to understand why DevOps is important, this session is for you.
JVM Support for Multitenant Applications - Steve Poole (IBM)jaxLondonConference
Presented at JAX London 2013
Per-tenant resource management can help ensure that collocated tenants peacefully share computational resources based on individual quotas. This session begins with a comparison of deployment models (shared: hardware, OS, middleware, everything) to motivate the multitenant approach. The main topic is an exploration of experimental data isolation and resource management primitives in IBM’s JDK that combine to help make multitenant applications smaller and more predictable.
JavaOne 2016 "Java, Microservices, Cloud and Containers"Daniel Bryant
Everyone is talking about building “cloud native” Java applications—and taking advantage of microservice architecture, containers, and orchestration/PaaS platforms—but there is surprisingly little discussion of migrating existing legacy (moneymaking) applications. This session aims to address this, and, using lessons learned from several real-world examples, it covers topics such when to rewrite applications (if at all), modeling/extracting business domains, applying the “application strangler” pattern, common misconceptions with “12-factor” application design, and the benefits/drawbacks of container technology.
Availability in a cloud native world v1.6 (Feb 2019)Haytham Elkhoja
Guidelines for mere mortals. These are a collection of guidelines picked up in the field... hopefully they would help developers and SREs building or modernizing apps ensuring the highest level of availability to their applications.
2019 StartIT - Boosting your performance with BlackfireMarko Mitranić
A workshop held in StartIT as part of Catena Media learning sessions.
We aim to dispel the notion that large PHP applications tend to be sluggish, resource-intensive and slow compared to what the likes of Python, Erlang or even Node can do. The issue is not with optimising PHP internals - it's the lack of proper introspection tools and getting them into our every day workflow that counts! In this workshop we will talk about our struggles with whipping PHP Applications into shape, as well as work together on some of the more interesting examples of CPU or IO drain.
The development of a product from the point of view of a technician, starting from the concept, passing to the minimum viable till a management of a fully operational and deployed app.
This slide contains a brief presentation of how Organizations can leverage Cloud to virtualize functional/performance testing and cost benefit from investing in hardware.
Building a full-stack app with Golang and Google Cloud Platform in one weekDr. Felix Raab
The talk will cover how to effectively build a production-ready, full-stack app with Golang and GCP under time constraints. I'll discuss how to approach making quick and sound technical decisions and how to apply modern software engineering practices for end-to-end apps. The presentation shows, in an opinionated and "meme-ful" way, various lessons learned, tools, and key takeaways for cloud environments.
Ready to go Mobile? Today's Mobile Landscape: Responsive, Adaptive, Hybrid, a...Jeremy Johnson
There are a number of options when going mobile, and it's not slowing down. Why choose one over the other? What are the strengths and pitfalls? What's right for your customers and users? We'll go over each option, with examples of how you can come to the right strategy around your mobile offerings.
Function-as-a-Service (FaaS) and serverless platforms increase productivity by enabling you to focus on application code, with the platform taking care of how to deploy, configure, run and scale the code. They do however require you to adopt a new programming model, writing simple JavaScript functions or actions instead of using the expressive APIs that are available from Express.js, Hapi.js, Fastify, and other frameworks.
In this session, you’ll learn how it's now possible to create FaaS and serverless based applications using the same framework APIs that you use today, and see a live demo of an application being built and deployed as a serverless cloud native application on Kubernetes.
Voxxed Micro-services: Serverless JakartaEE - JAX-RS comes to FaaSChris Bailey
Function-as-a-service (FaaS) and serverless platforms increase productivity, enabling you to focus on application code, with the platform taking care of how to deploy, configure, run, and scale the code. They do however require you to adopt a new programming model, creating generic handlers or actions that lack the expressive APIs that you get from frameworks and standards such as Jakarta EE. In this session, you’ll learn how it’s now possible to create FaaS- and serverless-based applications using the same APIs you use today such as JAX-RS and you’ll see a live demo of an application being built and deployed as a cloud native application on Kubernetes using a combination of open source tools and Knative serving.
Silicon Valley Code Camp 2019 - Reaching the Cloud Native WorldChris Bailey
The move to microservices enables developers to rapidly create and innovate by giving them autonomy to build and deploy applications using the languages, frameworks and technologies that they choose. However, such move requires a cost. Developers require a deeper set of skills to create apps that integrate fully with cloud-native capabilities. The additional complexity is one of the main reasons why most “cloud applications” are co-hosted. Only 38% of cloud developers are leveraging cloud services, and just 12% are building cloud-native applications. These statistics indicate that the majority of applications do not fully leverage and integrate with the additional capabilities that the platform provides. This session will introduce you how to modernize existing and build new cloud-native applications, and show how to utilize open source tools to rapidly develop and build new cloud-native applications with best practises built-in.
Function-as-a-service (FaaS) and serverless platforms increase productivity, enabling you to focus on application code, with the platform taking care of how to deploy, configure, run, and scale the code. They do, however, require you to adopt a new programming model, creating handlers or actions instead of using expressive APIs such as JAX-RS that you have become familiar with. In this session, you’ll learn how it’s now possible to create FaaS- and serverless-based applications with the same APIs you use today and you’ll see a live demo of an application being built and deployed as a cloud native application on Kubernetes.
Presented at Oracle Code One, Sept 16th 2019
The Kitura Server-side Swift framework has built support for Swagger and OpenAPI directly into its framework so that it auto-generates its own OpenAPI specification. This presentation show's how that enables Kitura to be used in the much wider OpenAPI ecosystem.
The fundamental performance characteristics of Node.js make it ideal for building highly performant microservices for a number of workloads. Translating that into highly responsive, scalable solutions however is still far from easy. This session will not just discuss why Node.js is a natural fit for microservices, but will introduce you to the tools and best practices for creating, building, deploying, monitoring and tracing microservices that are both scalable and fault tolerant, and show through a live demo how do that with minimal effort.
Speakers:
Chris Bailey, Chief Architect, Cloud Native Runtimes, IBM
Beth Griggs, Node.js Developer, IBM
There are an emerging set of architectures that are designed to optimise how front-end applications access back-end services, the most popular of which are the Backend-For-Frontend (BFF) pattern and the use of GraphQL. The BFF pattern takes the approach that the backend should be bespoke to the front-end it serves, optimised for that front-end, and ideally owned by the front-end team. GraphQL however sits at the other end of the spectrum: providing an optimised but utility backend for all frontends that is agnostic of the clients it serves. Give the two very different approaches, which is the right approach to take? This sessions will introduce the two approaches, highlight their advantages and disadvantages, and help you determine which you should be looking to adopt as the backend technology for your frontend applications.
Swift Cloud Workshop - Swift MicroservicesChris Bailey
How to deploy Swift micro-services using Docker and Kubernetes, with scaling, monitoring and fault tolerance using the Kitura server side Swift framework.
Swift Cloud Workshop - Codable, the key to Fullstack SwiftChris Bailey
Codable, introduced in Swift 4, makes is possible to share Swift classes and structs between client and server, making it easy to share data. It can also be used to add such more type safety to other parts of Fullstack Swift. This presentations shows some of the many ways that Codable is being using in Kitura to enable Fullstack Swift.
Try!Swift India 2017: All you need is SwiftChris Bailey
In September last year Swift 3 was released, added official support for Swift on Linux for the first time. This provided the scope for Swift to be used for both front-end and back-end development, allowing iOS developers to gain the benefits of full-stack development that Web developers have enjoyed for some time. In just twelve months, this has moved from promise to reality, with full-stack Swift applications not just being possible but being developed and deployed by some of the largest companies in the world.
In this session Chris and AB will introduce you to full-stack Swift development, show you how easy it is to get started, and talk about how the IBM MobileFirst for iOS Garage are building full-stack Swift applications their customers.
Swift Summit 2017: Server Swift State of the UnionChris Bailey
Server Swift has come a long way in the last 12 months, reaching a point where there are multiple successful frameworks and clouds. This session reviews the last year, announces some new capabilities, and outlines some of what to expect in the (near) future.
Node Interactive: Node.js Performance and Highly Scalable Micro-ServicesChris Bailey
The fundamental performance characteristics of Node.js, along with the improvements driven through the community benchmarking workgroup, makes Node.js ideal for highly performing micro-service workloads. Translating that into highly responsive, scalable solutions however is still far from easy. This session will discuss why Node.js is right for micro-services, introduce the best practices for building scalable deployments, and show you how to monitor and profile your applications to identify and resolve performance bottlenecks.
For just over a year, Swift has been available as a formal release on Linux and frameworks like Kitura and Vapor have made it possible to build mobile backends and web applications on the server. Running Server Swift is however not your own option for becoming a fullstack engineer and building backends in Swift. Amazon, Microsoft, Google, IBM and others are all also providing the ability to run Serverless (aka Lambdas or Functions), with some of those supporting the use of Swift.
This session will introduce you to Serverless Swift, highlight how it compares to Server Swift and show you some applications that have been built with Server(less) Swift.
AltConf 2017: Full Stack Swift in 30 MinutesChris Bailey
The introduction of Swift on the server gave the promise of being able to easily build, deliver and own the whole user experience and the solution, not just the iOS app. Building a backend however introduces many new technologies and terms, from server, cloud and Swagger definitions, to Docker and Kubernetes. This session will show you how easy it can be, demonstrating how to build a Swift Server application and connect to it from an iOS app in under 30 minutes.
InterConnect: Server Side Swift for Java DevelopersChris Bailey
The range of languages and frameworks that are available for building server applications has exploded over the last few years, with the most recent of these being the Swift programming language, which IBM has been backing along with the Kitura application framework. But does this mean that Swift is the future and you should stop developing Java server applications? This session will give you an introduction to where and when you might use Kitura, and take you through the experiences of a long-time Java EE developer building their first Angular.js based Kitura application, and how that compares to building the same application with IBM WebSphere Liberty.
InterConnect: Java, Node.js and Swift - Which, Why and WhenChris Bailey
Java, Node.js, and Swift are three of the most popular and effective programming languages in use today. When presented with an opportunity to choose, it may not be clear which language is best suited for the job. This session will provide a tour of these languages and the use cases for which each is best suited.
Over the last 12 months Swift has gone from an emerging language on the server, to a real one. The ability to run Swift on both Mobile and Server, works ideally in the Backend for Frontend "BFF") pattern.
Accelerate Enterprise Software Engineering with PlatformlessWSO2
Key takeaways:
Challenges of building platforms and the benefits of platformless.
Key principles of platformless, including API-first, cloud-native middleware, platform engineering, and developer experience.
How Choreo enables the platformless experience.
How key concepts like application architecture, domain-driven design, zero trust, and cell-based architecture are inherently a part of Choreo.
Demo of an end-to-end app built and deployed on Choreo.
We describe the deployment and use of Globus Compute for remote computation. This content is aimed at researchers who wish to compute on remote resources using a unified programming interface, as well as system administrators who will deploy and operate Globus Compute services on their research computing infrastructure.
Navigating the Metaverse: A Journey into Virtual Evolution"Donna Lenk
Join us for an exploration of the Metaverse's evolution, where innovation meets imagination. Discover new dimensions of virtual events, engage with thought-provoking discussions, and witness the transformative power of digital realms."
Software Engineering, Software Consulting, Tech Lead.
Spring Boot, Spring Cloud, Spring Core, Spring JDBC, Spring Security,
Spring Transaction, Spring MVC,
Log4j, REST/SOAP WEB-SERVICES.
Enhancing Research Orchestration Capabilities at ORNL.pdfGlobus
Cross-facility research orchestration comes with ever-changing constraints regarding the availability and suitability of various compute and data resources. In short, a flexible data and processing fabric is needed to enable the dynamic redirection of data and compute tasks throughout the lifecycle of an experiment. In this talk, we illustrate how we easily leveraged Globus services to instrument the ACE research testbed at the Oak Ridge Leadership Computing Facility with flexible data and task orchestration capabilities.
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...informapgpstrackings
Keep tabs on your field staff effortlessly with Informap Technology Centre LLC. Real-time tracking, task assignment, and smart features for efficient management. Request a live demo today!
For more details, visit us : https://informapuae.com/field-staff-tracking/
Unleash Unlimited Potential with One-Time Purchase
BoxLang is more than just a language; it's a community. By choosing a Visionary License, you're not just investing in your success, you're actively contributing to the ongoing development and support of BoxLang.
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisGlobus
JASMIN is the UK’s high-performance data analysis platform for environmental science, operated by STFC on behalf of the UK Natural Environment Research Council (NERC). In addition to its role in hosting the CEDA Archive (NERC’s long-term repository for climate, atmospheric science & Earth observation data in the UK), JASMIN provides a collaborative platform to a community of around 2,000 scientists in the UK and beyond, providing nearly 400 environmental science projects with working space, compute resources and tools to facilitate their work. High-performance data transfer into and out of JASMIN has always been a key feature, with many scientists bringing model outputs from supercomputers elsewhere in the UK, to analyse against observational or other model data in the CEDA Archive. A growing number of JASMIN users are now realising the benefits of using the Globus service to provide reliable and efficient data movement and other tasks in this and other contexts. Further use cases involve long-distance (intercontinental) transfers to and from JASMIN, and collecting results from a mobile atmospheric radar system, pushing data to JASMIN via a lightweight Globus deployment. We provide details of how Globus fits into our current infrastructure, our experience of the recent migration to GCSv5.4, and of our interest in developing use of the wider ecosystem of Globus services for the benefit of our user community.
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamtakuyayamamoto1800
In this slide, we show the simulation example and the way to compile this solver.
In this solver, the Helmholtz equation can be solved by helmholtzFoam. Also, the Helmholtz equation with uniformly dispersed bubbles can be simulated by helmholtzBubbleFoam.
How to Position Your Globus Data Portal for Success Ten Good PracticesGlobus
Science gateways allow science and engineering communities to access shared data, software, computing services, and instruments. Science gateways have gained a lot of traction in the last twenty years, as evidenced by projects such as the Science Gateways Community Institute (SGCI) and the Center of Excellence on Science Gateways (SGX3) in the US, The Australian Research Data Commons (ARDC) and its platforms in Australia, and the projects around Virtual Research Environments in Europe. A few mature frameworks have evolved with their different strengths and foci and have been taken up by a larger community such as the Globus Data Portal, Hubzero, Tapis, and Galaxy. However, even when gateways are built on successful frameworks, they continue to face the challenges of ongoing maintenance costs and how to meet the ever-expanding needs of the community they serve with enhanced features. It is not uncommon that gateways with compelling use cases are nonetheless unable to get past the prototype phase and become a full production service, or if they do, they don't survive more than a couple of years. While there is no guaranteed pathway to success, it seems likely that for any gateway there is a need for a strong community and/or solid funding streams to create and sustain its success. With over twenty years of examples to draw from, this presentation goes into detail for ten factors common to successful and enduring gateways that effectively serve as best practices for any new or developing gateway.
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Shahin Sheidaei
Games are powerful teaching tools, fostering hands-on engagement and fun. But they require careful consideration to succeed. Join me to explore factors in running and selecting games, ensuring they serve as effective teaching tools. Learn to maintain focus on learning objectives while playing, and how to measure the ROI of gaming in education. Discover strategies for pitching gaming to leadership. This session offers insights, tips, and examples for coaches, team leads, and enterprise leaders seeking to teach from simple to complex concepts.
Quarkus Hidden and Forbidden ExtensionsMax Andersen
Quarkus has a vast extension ecosystem and is known for its subsonic and subatomic feature set. Some of these features are not as well known, and some extensions are less talked about, but that does not make them less interesting - quite the opposite.
Come join this talk to see some tips and tricks for using Quarkus and some of the lesser known features, extensions and development techniques.
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus
As part of the DOE Integrated Research Infrastructure (IRI) program, NERSC at Lawrence Berkeley National Lab and ALCF at Argonne National Lab are working closely with General Atomics on accelerating the computing requirements of the DIII-D experiment. As part of the work the team is investigating ways to speedup the time to solution for many different parts of the DIII-D workflow including how they run jobs on HPC systems. One of these routes is looking at Globus Compute as a way to replace the current method for managing tasks and we describe a brief proof of concept showing how Globus Compute could help to schedule jobs and be a tool to connect compute at different facilities.
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Globus
The Earth System Grid Federation (ESGF) is a global network of data servers that archives and distributes the planet’s largest collection of Earth system model output for thousands of climate and environmental scientists worldwide. Many of these petabyte-scale data archives are located in proximity to large high-performance computing (HPC) or cloud computing resources, but the primary workflow for data users consists of transferring data, and applying computations on a different system. As a part of the ESGF 2.0 US project (funded by the United States Department of Energy Office of Science), we developed pre-defined data workflows, which can be run on-demand, capable of applying many data reduction and data analysis to the large ESGF data archives, transferring only the resultant analysis (ex. visualizations, smaller data files). In this talk, we will showcase a few of these workflows, highlighting how Globus Flows can be used for petabyte-scale climate analysis.
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTier1 app
Even though at surface level ‘java.lang.OutOfMemoryError’ appears as one single error; underlyingly there are 9 types of OutOfMemoryError. Each type of OutOfMemoryError has different causes, diagnosis approaches and solutions. This session equips you with the knowledge, tools, and techniques needed to troubleshoot and conquer OutOfMemoryError in all its forms, ensuring smoother, more efficient Java applications.
Large Language Models and the End of ProgrammingMatt Welsh
Talk by Matt Welsh at Craft Conference 2024 on the impact that Large Language Models will have on the future of software development. In this talk, I discuss the ways in which LLMs will impact the software industry, from replacing human software developers with AI, to replacing conventional software with models that perform reasoning, computation, and problem-solving.
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar
The European Union Agency for Law Enforcement Cooperation (Europol) has suffered an alleged data breach after a notorious threat actor claimed to have exfiltrated data from its systems. Infamous data leaker IntelBroker posted on the even more infamous BreachForums hacking forum, saying that Europol suffered a data breach this month.
The alleged breach affected Europol agencies CCSE, EC3, Europol Platform for Experts, Law Enforcement Forum, and SIRIUS. Infiltration of these entities can disrupt ongoing investigations and compromise sensitive intelligence shared among international law enforcement agencies.
However, this is neither the first nor the last activity of IntekBroker. We have compiled for you what happened in the last few days. To track such hacker activities on dark web sources like hacker forums, private Telegram channels, and other hidden platforms where cyber threats often originate, you can check SOCRadar’s Dark Web News.
Stay Informed on Threat Actors’ Activity on the Dark Web with SOCRadar!
2. Important Disclaimers
THE INFORMATION CONTAINED IN THIS PRESENTATION IS PROVIDED FOR INFORMATIONALPURPOSES ONLY.
WHILST EFFORTS WERE MADETO VERIFYTHE COMPLETENESSANDACCURACYOF THE INFORMATION CONTAINED IN THIS PRESENTATION, IT IS PROVIDED “AS IS”, WITHOUT
WARRANTY OFANY KIND, EXPRESS OR IMPLIED.
ALLPERFORMANCE DATAINCLUDED IN THIS PRESENTATION HAVE BEEN GATHERED INACONTROLLED ENVIRONMENT. YOUR OWNTEST RESULTS MAYVARY BASED ON HARDWARE,
SOFTWARE OR INFRASTRUCTURE DIFFERENCES.
ALLDATAINCLUDED IN THIS PRESENTATIONARE MEANT TO BE USED ONLYASAGUIDE.
INADDITION, THE INFORMATION CONTAINED INTHIS PRESENTATION IS BASED ON IBM’S CURRENT PRODUCT PLANSAND STRATEGY, WHICHARE SUBJECT TO CHANGE BY IBM,
WITHOUT NOTICE.
IBMAND ITSAFFILIATED COMPANIES SHALLNOT BE RESPONSIBLE FORANY DAMAGESARISING OUT OFTHE USE OF, OR OTHERWISE RELATED TO, THIS PRESENTATION ORANY
OTHER DOCUMENTATION.
NOTHING CONTAINED IN THIS PRESENTATION IS INTENDED TO, OR SHALLHAVETHE EFFECT OF:
3. Steve Poole – IBM
Making Java Real Since
Version 0.9
DevOps Practitioner
@spoole167
Chris Bailey– IBM
Runtimes Technical Lead
Java, Node.js & Swift
@Chris__Bailey
4. This talk is about how this sort of measurement:
GB/hr
Is already changing your life & the direction of the Java
ecosystem
The ‘Cloud’ has a lot to answer for
5. Outline
• Part 1 – The economics of Cloud provisioning
• Part 2 – The API economy and Java
• Part 3 - How Java measures up
• Part 4 – What the future holds
• Wrap up & Q/A
7. Why ‘Cloud’ ?
A local, hand-crafted, static environment which
requires in-house specialist support, doesn’t scale
well and requires long term investment and
commitment
tps://www.flickr.com/photos/sylvar/
8. What ‘Cloud’
promises
a virtual, dynamic environment
which maximizes use, is infinitely
scalable, always available and
needs minimal upfront
investment or commitment
Take your code – host it on someone else's
machine and pay only for the resource you use
for the time you use it
AND be able to do that very quickly and
repeatedly in parallel
9. How quickly do you need to get good code into
production?
• Would you believe < 1hr?
• Case Study: A fashion retailer can show measureable
increase in sales if a item similar to that seen in the media can
be placed on their on-line store landing page within 1 hr of it
appearing in public.
• Each product placement is different so they need a fast, agile,
approach that does not jeopardize their on-line stores
availability and quality.
• We know how to do this..
10. Cloud computing is real.
Major vendors are providing
substantial capacity and it’s
growing all the time
Businesses see the opportunities
Improved value for money,
decreased time-to-market, shorter
time to value
“I can now get my ideas into
production in hours,days or weeks.
I can get immediate feedback AND
then I can improve the idea and
repeat”
11. 70% of IT Leaders are pursuing a hybrid cloud
strategy
http://www.fodey.com/generators/newspaper/snippet.asp
Hybrid Cloud is coming to a data centre near you
17. Cloud Economics
We really are getting closer all the time to
‘Compute on Tap’
https://www.flickr.com/photos/leunix/
18. But with taps come meters…
https://www.flickr.com/photos/beigephotos/
Cloud Economics
19. Like all bills – it’s confusing
Offering RAM Cost (2015) CPUs
IBM Bluemix (CF) $24.15 GB/Month 4vCPUs per instance
IBM Bluemix (Containers) $ 9.94 GB/Month 4vCPUs per GB
run.pivotal.io $21.60 GB/Month 4vCPUs per instance
Heroku (Hobby) $14.00 GB/Month 1 "CPU share" per 512MB in an
instance
Heroku (Professional) $50.00 GB/Month 1 "CPU share" per 512MB in an
instance
Amazon EC2 (SLES) $16.56 GB/Month 1 vCPU per 4GB in an instance.
20. Cloud computing: compute == money
Money changes everything
With a measureable and direct relationship
between $£€¥ and CPU/RAM, disk etc the
financial success or failure of a project is even
easier to see
And that means…
Even more focus on value for money.
21. American Society of Civil Engineers
Someone
will be
looking at
your leaky
app
Someone
will be
looking at
your leaky
app
22. Part 2 – The API economy
And what that means for Java
23. The API economy
If your company has data it will eventually
be shared and monetized
Really.
Cloud APIs are one of the fastest growing areas in our industry.
Sharing data and services though APIs is enabling new
opportunities and solutions
Everyone is getting into the game.
24. What makes a good cloud api ?
roughly in selection order.
vailability 100% of course with performance SLAs
elievability – Are those published 100% metrics true?
ost – how much and what is the unit of measure?
iagnosability – can users debug problems without you?
xcitement – is there a vibrant community using the API?
unctionality – what else can the API do?
25. Where you code runs day-to-day and moment-to-
moment will be driven by economics, legal
requirements and how much risk your business
wants to take.
Your code has to scale better, be more efficient,
resilient, secure and work in constrained
environments
You will have to design, code, deliver, support and
debug code in new ways
It’s going to be scary
26. How scary?
design, coding, deployment ,
startup, execution, scaling
debugging, security, resilience …
Almost
everything about
your application
is effected
https://www.flickr.com/photos/mjtmail/
27. Resilient applications
Design for short term failure: something fails all the time. Expect data and
service outages regularly
Fail and recover: don’t diagnose problems in running systems. Kill it and
move on
Every IO operation you perform may fail – do as few as possible
Every IO operation may stall – costing you GB/hrs and resources– timeout
everything quickly
Every piece of data you receive may be badly formed – check everything
“Everything in the cloud fails
all the time” : Werner Vogels
28. Debugging
Remote support for your family?
Fancy having to do that for your own
apps?
You have to assume:
You will never be able to log into a
remote server.
You will never be able to attach a
remote debugger to a failing app
Ever.
All problems must be resolved by local
reproduction or logs and dumps
https://www.flickr.com/photos/carbonnyc/
29. Debugging
It gets more challenging.
Failures during deployment or initial startup can
be difficult or impossible to diagnose.
If your service instance didn’t start there is is little
chance of logs being kept!
Learn to love logs, dumps and traces.
Remote log stores and tools are going to be
your best friend
BTW: they’ll cost too
https://www.flickr.com/photos/hinkelstone/
30. Debugging
• Q: Why can’t you just keep the failed
instance around?
• A: You can – if you accept the $$$
consequences…
31. Hard metrics and limits keeping a failed app around
or having apps on standby
can be costly in multiple ways
Runtime costs and taking up
vital resource allocation
33. Compute == money Easier than ever before
a business can rent a
machine
Just for how long they
need it.
No long term capital
investment.
Now an operational
expense
$ == GB/hr
-Xmx: $100
35. Runtime costs
Most cloud providers will charge you for your RAM usage over time:
$GB/hr. (Sometimes the charge is $0)
Increasing –Xmx directly effects cost. Something businesses can understand
Net effect – you’ll be tuning your application
to fit into specific RAM sizes.
Smaller than you use today.
You need to measure where the storage goes.
You’ll be picking some components based on
memory usage
increasing the amount of memory for 1 service
increases the bill by the number of concurrent
instances
https://www.flickr.com/photos/erix/
36. Unnecessary baggage
(you have loads)
Java applications have to get lighter.
Java 9 modularity will help but you have to
consider footprint across the board.
Choose your dependencies wisely
Your choice of OS & distribution is
important.
The aim is ‘carry on only’
Your application isn’t going on a long
trip https://www.flickr.com/photos/armydre2008/
37. Analysing Your Memory Usage
A large percentage of the heap is used for collections and caches
Eclipse Memory Analyzer will help you analyze:
Easy to reduce memory usage without reducing cache sizes
https://www.flickr.com/photos/armydre2008/
38. Example costs (2015)
Bluemix (CF) Amazon (ECS)
Running a 512mb container
for a year
$289.80 for 4 cpus 198.72 for 1 cpu
Reducing memory footprint
by 10% saves
$28.98 $0
Running 100 containers in
parallel
$28,980.00 for 400
cpus
$19,872.00 for 100 cpus
Reducing memory footprint
by 10% saves
$2,898.00 $0
41. N-Body Completion Time, normalized for
100MB of memory (lower is better):
Modern Native Scripting JVMC
42. Example costs (2015)
Bluemix (CF)
Running a 512mb container
for a year
$289.80 for 4 cpus
Reducing memory footprint
by using Swift saves 75%
$216.75
Running 100 containers in
parallel
$28,980.00 for 400
cpus
Reducing memory footprint
by using Swift saves
$21,675.00
45. Example costs (2015)
Bluemix (CF)
Running a 512mb container
for a year
$289.80 for 4 cpus
Using auto-Scaling reduces
container usage by 30%
Running 100 containers in
parallel
$28,980.00 for 400
cpus
Using auto-scaling saves $6,085.8
46. Java & fast startup time
Application developers can reduce service
startup time by deferring optional costs to
when its needed.
Maybe even create services with different
behaviors rather than one with optional
behavior
But it’s not enough
The JVM needs to revisit all the places
where startup time was traded for
throughput and turn them around.
47. Startup times
How long do you have to wait?
Limits ability to react to changes in workload
Will you need to preemptively start instances ‘just
in case’ due to start up time?
To bad – that costs
Also think about this:
Everything that happens at startup – happens
every time, all the time.
- Duplication is wasted effort
https://www.flickr.com/photos/91295117@N08/
48. Consequences
For container based services start up effort
happens multiple times during development
and production
And it’s always the same result.
AND you will pay $ for it every time
We don’t have a good way to capture all this
effort or formalise starting a JVM from a
precanned image. (Shared classes doesn’t hack
it)
Other languages have better / faster startup!
https://www.flickr.com/photos/dno1967b/https://www.flickr.com/photos/quinnanya/
https://www.flickr.com/photos/76657755@N04/
50. Thoughts about the future
Applications are going to be increasingly micro-service and multi-language
Java frameworks are becoming smaller and more modular
Java itself is becoming modular
Ahead of Time (AOT) Compilation and “jimage” capabilities will become more important
Java needs to optimize for micro-services rather than monoliths
52. It’s all change
How you design, code, deploy, debug,
support etc will be effected by the
metrics and limits imposed on you.
Financial metrics and limits always
change behavior. It also creates
opportunity
You will have to learn new techniques
and tools
The JVM and Java applications have
to get leaner and meaner
https://www.flickr.com/photos/beigephotos/
53. Simply
Applications are going to be running in a remote,
constrained and metered environment
There will be precise limits on how much disk, CPU, RAM,
Bandwidth an application can use and for how long
Whether your application is large or small, granular or
monolithic. Someone will be paying for each unit used
That person will want to get the most out of that
investment
Your application is going on a radical diet
The runtime layer needs to change
https://www.flickr.com/photos/rvoegtli/
54. Summary
1. Your business will need to adapt to ‘cloud’
2. Your developers will need to adapt to ‘cloud’
3. Your application will need to adapt to ‘cloud’
4. Your competitors are already adapting
We don’t know all the answers (or even the questions) yet.
We do know the next and largest ever pain point for Java is ‘cloud’
Big changes are needed to keep Java successful and competitive
55. Your world is changing dramatically and all
because of …