توضیحاتی در مورد کتاب :
در حالی که کانتینرها، میکروسرویسها و سیستمهای توزیعشده بر بحثها در دنیای فناوری غالب هستند، اکثر برنامههای کاربردی در حال استفاده امروزه هنوز معماریهای یکپارچهای را اجرا میکنند که از فرآیندهای توسعه سنتی پیروی میکنند. این کتاب کاربردی به توسعهدهندگان کمک میکند تا مدلهای مبتنی بر جاوا را بررسی کنند و نشان میدهد که چگونه این برنامههای کاربردی یکپارچه را با موفقیت به آینده وارد کنند. نویسندگان Markus Eisele و Natale Vinto با تکیه بر سال ها تجربه خود در نوسازی برنامه های کاربردی، شما را از طریق مراحل لازم برای به روز رسانی برنامه های جاوا سازمان خود راهنمایی می کنند.
خواهید فهمید که چگونه برنامه یکپارچه خود را از بین ببرید و به یک پشته نرم افزار به روز بروید که در سراسر ابر و نصب های داخلی کار می کند. اصول برنامه های کاربردی بومی ابری را بیاموزید تا بفهمید چه بخش هایی از برنامه ها و پلتفرم های مبتنی بر جاوا سازمان شما نیاز به مهاجرت و نوسازی دارند. نقطه شروعی برای پروژه های مهاجرت شما با شناسایی نامزدها و مرحله بندی آنها از طریق مراحل مدرن سازی
نحوه تکمیل یک برنامه سنتی جاوا سازمانی را با اجزای بالای کانتینرها و Kubernetes کشف کنید
-----------------------------
مارکوس یک قهرمان جاوا، عضو سابق گروه متخصص Java EE، بنیانگذار JavaLand، سخنران مشهور در کنفرانس های جاوا در سراسر جهان و یک چهره بسیار شناخته شده در دنیای Enterprise Java است. او با بیش از 16 سال تجربه حرفهای در این صنعت، برنامههای کاربردی درجهبندی بزرگ Enterprise را برای 500 شرکت Fortune طراحی و توسعه داد. او به عنوان یک رهبر و معمار با تجربه، به اجرای برخی از بزرگترین پروژه های یکپارچه سازی در شرکت های خودروسازی، مالی و بیمه کمک کرد. بیش از 12 سال تجربه سخنرانی بین المللی و 5 سال در حمایت از توسعه دهندگان با تمرکز قوی بر پلتفرم های جاوا به او کمک کرد تا شبکه بزرگی از حرفه ای ها و تأثیرگذاران ایجاد کند. او یک نویسنده اوریلی است و در بررسی های فنی بیش از 10 کتاب در مورد فناوری هایی که به آنها اهمیت می دهد کمک کرد. او در طی 10 سال گذشته بیش از 100 مقاله در نشریات مختلف فناوری اطلاعات منتشر کرده است.
Natale یک مهندس نرم افزار با بیش از 10 سال تخصص در فناوری های IT و ICT و سابقه تلفیقی در سیستم عامل های مخابراتی و لینوکس است. او به عنوان یک معمار راه حل با پیشینه توسعه جاوا، چند سال را به عنوان معمار راه حل تخصصی EMEA برای OpenShift در Red Hat گذراند. امروز Natale مدافع توسعه دهنده OpenShift در Red Hat است و به افراد در جوامع و مشتریان کمک می کند تا با استراتژی Kubernetes و Cloud Native خود موفق شوند.
فهرست مطالب :
Copyright
Table of Contents
From Platform to Ecosystem
Preface
Conventions Used in This Book
Using Code Examples
O’Reilly Online Learning
How to Contact Us
Acknowledgments
Chapter 1. Revisiting Enterprise Development
From Public to Private. Why Clouds?
What “Cloud Native” Means
Kubernetes-Native Development
Containers and Orchestration for Developers
Container-Native Runtime
Kubernetes Flavors
Managing Development Complexity
DevOps and Agility
Summary
Chapter 2. The Path to Cloud Native Java
Cloud Native Workshop
Architecture
Create an Inventory Microservice with Quarkus
Create Quarkus Maven Project
Create a Domain Model
Create a RESTful Service
Run the App in Dev Mode
Create a Catalog Microservice with Spring Boot
Create a Maven Project
Create a Domain Model
Create a Data Repository
Create a RESTful Service
Create a Gateway Service with Vert.x
Create a Vert.x Maven Project
Create an API Gateway
Create a Frontend with Node.js and AngularJS
Run the Frontend
Summary
Chapter 3. Travel Light on Your Pathway
Three-Tier or Distributed System
Technology Updates, Modernization, and Transformation
The 6 Rs
Divide and Containerize
Kubernetes as the New Application Server?
Define Your Target Platform
Mandatory Migration Steps and Tools
Create an Application Portfolio
Prepare for Big Things
Summary
Chapter 4. A Kubernetes-Based Software Development Platform
Developers and Kubernetes
What Kubernetes Does
What Kubernetes Doesn’t Do
Infrastructure as a Code
Container Images
Dockerfile
Building Container Images
Run Containers
Registry
Deploying to Kubernetes
Pod
Service
Deployment
Kubernetes and Java
Jib
JKube
Summary
Chapter 5. Beyond Lift and Shift: Working with Legacy
Managing Legacy
Assessing Applications for Migration
Assessing Functionality for Migration
Migration Approaches
Protecting Legacy (Replatform)
Build Something New (Refactor)
Challenges
Avoiding Dual-Writes
Long-Running Transactions
Removing Old Code Too Quickly
Integration Aspects
Summary
Chapter 6. Building Kubernetes-Native Applications
Find the Right Balance Between Scalability and Complexity
Functional Requirements for Modern Architectures
API-Driven
Discovery
Security and Authorization
Monitoring
Tracing
Logging
CI/CD
Debugging Microservices
Port Forwarding
Quarkus Remote Development Mode
Telepresence
Summary
Chapter 7. Tomorrow’s Solutions: Serverless
What Is Serverless?
Architectural Evolution
Use Cases: Data, AI, and Machine Learning
Use Cases: Edge Computing and IoT
Knative: Serverless for Kubernetes
Event-Driven Serverless Architectures
Function as a Service for Java Applications
Functions Deployment for Java Applications
Boson Function CLI (func)
Summary
Index
About the Authors
Colophon
توضیحاتی در مورد کتاب به زبان اصلی :
While containers, microservices, and distributed systems dominate discussions in the tech world, the majority of applications in use today still run monolithic architectures that follow traditional development processes. This practical book helps developers examine long-established Java-based models and demonstrates how to bring these monolithic applications successfully into the future. Relying on their years of experience modernizing applications, authors Markus Eisele and Natale Vinto walk you through the steps necessary to update your organization's Java applications.
You'll discover how to dismantle your monolithic application and move to an up-to-date software stack that works across cloud and on-premises installations. Learn cloud native application basics to understand what parts of your organization's Java-based applications and platforms need to migrate and modernize Understand how enterprise Java specifications can help you transition projects and teams Build a cloud native platform that supports effective development without falling into buzzword traps Find a starting point for your migration projects by identifying candidates and staging them through modernization steps
Discover how to complement a traditional enterprise Java application with components on top of containers and Kubernetes
-----------------------------
Markus is a Java Champion, former Java EE Expert Group member, founder of JavaLand, reputed speaker at Java conferences around the world, and a very well known figure in the Enterprise Java world. With more than 16 years of professional experience in the industry, he designed and developed large Enterprise grade applications for Fortune 500 companies. As an experienced team lead and architect, he helped implement some of the largest integration projects in automotive, finance and insurance companies. More than 12 years of international speaking experience and 5 years in developer advocacy with a strong focus on Java platforms helped him build a large network of professionals and influencers. He is an O'Reilly author and helped with technical reviews of more than 10 books about technologies he cares for. He published more than 100 articles in various IT publications over the last 10 years.
Natale is a Software Engineer with more than 10 years of expertise on IT and ICT technologies and a consolidated background on Telecommunications and Linux operating systems. As a Solution Architect with a Java development background, he spent some years as EMEA Specialist Solution Architect for OpenShift at Red Hat. Today Natale is Developer Advocate for OpenShift at Red Hat, helping people within communities and customers having success with their Kubernetes and Cloud Native strategy.