My Account Log in

2 options

Distributed computing in Java 9 : make the best of Java for distributing applications / Raja Malleswara Rao Pattamsetti.

Ebook Central College Complete Available online

View online

O'Reilly Online Learning: Academic/Public Library Edition Available online

View online
Format:
Book
Author/Creator:
Pattamsetti, Raja Malleswara Rao, author.
Language:
English
Subjects (All):
Electronic data processing--Distributed processing.
Electronic data processing.
Java (Computer program language).
Physical Description:
1 online resource (1 volume) : illustrations
Edition:
1st edition
Other Title:
Distributed computing in Java nine
Place of Publication:
Birmingham, [England] ; Mumbai, [India] : Packt, 2017.
System Details:
text file
Summary:
Explore the power of distributed computing to write concurrent, scalable applications in Java About This Book Make the best of Java 9 features to write succinct code Handle large amounts of data using HPC Make use of AWS and Google App Engine along with Java to establish a powerful remote computation system Who This Book Is For This book is for basic to intermediate level Java developers who is aware of object-oriented programming and Java basic concepts. What You Will Learn Understand the basic concepts of parallel and distributed computing/programming Achieve performance improvement using parallel processing, multithreading, concurrency, memory sharing, and hpc cluster computing Get an in-depth understanding of Enterprise Messaging concepts with Java Messaging Service and Web Services in the context of Enterprise Integration Patterns Work with Distributed Database technologies Understand how to develop and deploy a distributed application on different cloud platforms including Amazon Web Service and Docker CaaS Concepts Explore big data technologies Effectively test and debug distributed systems Gain thorough knowledge of security standards for distributed applications including two-way Secure Socket Layer In Detail Distributed computing is the concept with which a bigger computation process is accomplished by splitting it into multiple smaller logical activities and performed by diverse systems, resulting in maximized performance in lower infrastructure investment. This book will teach you how to improve the performance of traditional applications through the usage of parallelism and optimized resource utilization in Java 9. After a brief introduction to the fundamentals of distributed and parallel computing, the book moves on to explain different ways of communicating with remote systems/objects in a distributed architecture. You will learn about asynchronous messaging with enterprise integration and related patterns, and how to handle large amount of data using HPC and implement distributed computing for databases. Moving on, it explains how to deploy distributed applications on different cloud platforms and self-contained application development. You will also learn about big data technologies and understand how they contribute to distributed computing. The book concludes with the detailed coverage of testing, debugging, troubleshooting, and security aspects of distributed applications so the programs you build are robust, efficient, and...
Contents:
Cover
Copyright
Credits
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Table of Contents
Preface
Chapter 1: Quick Start to Distributed Computing
Parallel computing
Amdahl's law
Distributed computing
Parallel versus distributed computing
Design considerations for distributed systems
Java support
Summary
Chapter 2: Communication between Distributed Applications
Client-server communication
Sockets and streams
Socket programming for TCP
Reading from the socket
Socket programming for UDP
Multicasting
Streams
URLs, URLConnections, and the ContentHandler classes
URL (base URL and relative URL)
Practicality of URLs
ClassLoader
Chapter 3: RMI, CORBA, and JavaSpaces
RMI
What is RMI?
Key terminologies of RMI
RMI for distributed computing
Writing an RMI server
Implementing a remote interface
Creating a client program
Compiling programs
Building a JAR file from the interface classes
Building the server classes
Building the client classes
Running a remote client program
Starting the server
Invoking the client
Common Object Request Broker Architecture (CORBA)
CORBA standards
Inter-ORB communication
Java support for CORBA
OMG IDL samples
Interfaces
Types and constants
Structures
Discriminated unions
Sequences
CORBA services
Sample CORBA program using JAVA IDL
IDL interface specification
Compiling the IDL
Client application
Object implementation
Defining the server
Compiling and starting the server
Executing the client
JavaSpaces
Overview
How it works
Sample JavaSpaces code
How Java 9 adds value
Chapter 4: Enterprise Messaging
EMS
JMS
The publish/subscribe messaging paradigm.
The Point-To-Point Messaging Paradigm
JMS interfaces
Developing a JMS application
Publish-Subscribe (topic) programming
Point-To-Point (queue) programming
Web services
Web service architectures
SOAP web services
RESTful web services
Building a SOAP web service using the JAX-WS API in RPC Style
Building SOAP web service using the JAX-WS API in Document style
Building a RESTful web service using the JAX-RS API (using the Jersey implementation)
Enterprise integration patterns
Chapter 5: HPC Cluster Computing
Era of computing
Commanding parallel system architectures
MPP
SMP
Distributed systems
Clusters
Network of workstations
Cluster computer architecture
Cluster system software and tools
HPCC
Java support for high-performance computing
Java support for parallel programming models
Multithreading
Parallelism
Synchronization
JOMP
Java message passing
The Spliterator interface
Parallel stream processing
Java 9 updates for processing an API
Chapter 6: Distributed Databases
Distributed and decentralized databases
Motivation for distributed databases
Distributed database environments
Homogeneous distributed database environment
Heterogeneous distributed database environment
Distributed database setup methodologies
Replication
Horizontal partitioning
Vertical partitioning
Hybrid setup
Distributed DBMS architecture
Java Database Connectivity
JTA for distributed transactions
Switching between the transaction modes
Sample program for the XA transaction
Chapter 7: Cloud and Distributed Computing
What is cloud computing?
Cloud deployment models
Cloud computing patterns
Features of cloud computing
Cloud versus distributed computing
Cloud service providers
AWS.
Amazon EC2
Amazon S3
Amazon SQS
Amazon CloudFront
Amazon SimpleDB
Writing a distributed application on AWS
Docker CaaS
CaaS
Characteristics of Docker CaaS
Docker CaaS platform components
Eclipse integration for a Docker container
Deploying a sample Java application to Tomcat with Docker
Java 9 support
Spring Boot
Spring Cloud
Spring Cloud Data Flow
Chapter 8: Big Data Analytics
What is big data?
Big data characteristics
Volume
Variety
Velocity
Veracity
NoSQL databases
Hadoop, MapReduce, and HDFS
Hadoop
HDFS (Hadoop Distributed File System)
MapReduce
Cloud computing for Hadoop
Dynamic Distributed Dimensional Data Model (D4M)
Distributed computing for big data
ZooKeeper for distributed computing
Chapter 9: Testing, Debugging, and Troubleshooting
Challenges in testing distributed applications
Standard testing approach in software systems
Unit testing
Mocking the dependencies
Continuous Integration (CI)-based unit testing
System testing
System integration testing
User Acceptance Testing
Cloud distributed application testing
Latest tools for testing Java distributed applications
JUnit
JTest
TestNG
Arquillian
The Grinder
JWalk
Mockito
PowerMock
Debugging and troubleshooting distributed applications
Chapter 10: Security
Security issues and concerns
Two-way Secure Sockets Layer (SSL) implementation
Two-way SSL implementation for web services
Allow the secured calls in server application
Generate a client program as a web service client with a two-way SSL
Cloud computing security
Security enhancements in Java 9
Datagram Transport Layer Security
TLS Application Layer Protocol Negotiation Extension
OCSP stapling for TLS
Index.
Notes:
Includes index.
Description based on online resource; title from PDF title page (ebrary, viewed October 19, 2017).
OCLC:
995052577

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account