Java EE 8 High Performance :: Master techniques such as memory optimization, caching, concurrency, and multithreading to achieve maximum performance from your enterprise applications.
The ease with which we write an application has been increasing, but with increasingly complex application come the need to address their performance. A balancing act between implementing complex applications easily and keeping its performance optimum is need of the hour. In this book we explore how...
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Elektronisch E-Book |
Sprache: | English |
Veröffentlicht: |
Birmingham :
Packt Publishing,
2018.
|
Schlagworte: | |
Online-Zugang: | Volltext |
Zusammenfassung: | The ease with which we write an application has been increasing, but with increasingly complex application come the need to address their performance. A balancing act between implementing complex applications easily and keeping its performance optimum is need of the hour. In this book we explore how to achieve this crucial balance while ... |
Beschreibung: | 1 online resource (344 pages) |
ISBN: | 9781788472159 1788472152 178847306X 9781788473064 |
Internformat
MARC
LEADER | 00000cam a2200000Mi 4500 | ||
---|---|---|---|
001 | ZDB-4-EBA-on1022794860 | ||
003 | OCoLC | ||
005 | 20241004212047.0 | ||
006 | m o d | ||
007 | cr cnu---unuuu | ||
008 | 180210s2018 enk o 000 0 eng d | ||
040 | |a EBLCP |b eng |e pn |c EBLCP |d NLE |d MERUC |d CHVBK |d OCLCO |d IDB |d YDX |d OCLCF |d VT2 |d TEFOD |d OCLCQ |d OCLCO |d LVT |d C6I |d UKAHL |d OCLCQ |d N$T |d UKMGB |d OCLCO |d K6U |d OCLCQ |d OCLCO |d OCLCL | ||
015 | |a GBC1L5072 |2 bnb | ||
016 | 7 | |a 018754831 |2 Uk | |
019 | |a 1022776281 | ||
020 | |a 9781788472159 |q (electronic bk.) | ||
020 | |a 1788472152 |q (electronic bk.) | ||
020 | |a 178847306X | ||
020 | |a 9781788473064 | ||
024 | 3 | |a 9781788473064 | |
035 | |a (OCoLC)1022794860 |z (OCoLC)1022776281 | ||
037 | |a B08602 |b 01201872 | ||
037 | |a 6C070B00-0742-4284-8A63-D29D2342FAA0 |b OverDrive, Inc. |n http://www.overdrive.com | ||
050 | 4 | |a QA76.73.J38 |b .M366 2018 | |
082 | 7 | |a 005.133 |2 23 | |
049 | |a MAIN | ||
100 | 1 | |a Manni-Bucau, Romain. | |
245 | 1 | 0 | |a Java EE 8 High Performance : |b Master techniques such as memory optimization, caching, concurrency, and multithreading to achieve maximum performance from your enterprise applications. |
260 | |a Birmingham : |b Packt Publishing, |c 2018. | ||
300 | |a 1 online resource (344 pages) | ||
336 | |a text |b txt |2 rdacontent | ||
337 | |a computer |b c |2 rdamedia | ||
338 | |a online resource |b cr |2 rdacarrier | ||
588 | 0 | |a Print version record. | |
520 | |a The ease with which we write an application has been increasing, but with increasingly complex application come the need to address their performance. A balancing act between implementing complex applications easily and keeping its performance optimum is need of the hour. In this book we explore how to achieve this crucial balance while ... | ||
505 | 0 | |a Cover -- Title Page -- Copyright and Credits -- Dedication -- Packt Upsell -- Contributors -- Table of Contents -- Preface -- Chapter 1: Money -- The Quote Manager Application -- Setting up the environment -- The application architecture -- Application project highlights -- The build -- The persistence layer -- The service layer -- The JAX-RS layer -- The WebSocket layer -- Provision some data -- Application summary -- The application business -- The application design -- The application server -- Testing the application -- Get a quote price the JAX-RS way -- Get the price, the WebSocket way -- Setting up MySQL -- Conclusion -- Summary -- Chapter 2: Looking Under the Cover -- What is This EE Thing? -- Context and Dependency Injection -- what did you do to my beans? -- IoC -- a pretty simple example -- The main features of CDI -- Injections -- Scopes -- Interceptors/decorators -- Events -- Dynamic lookups -- JAX-RS -- the servlet router -- The router -- Marshalling -- Filter and interceptors -- @Suspended or asynchronous operation -- JPA -- the database link -- From JPA to the database -- Model and implications -- The Java Transaction API -- Server resources -- DataSource configuration -- Java EE and performances -- Ensure you know the server -- Ensure you know your application -- Ensure you know your resources -- Summary -- Chapter 3: Monitor Your Application -- Java tools to know what my application is doing -- The jcmd command -- the small command line utility that does a lot -- Thread.print -- Memory -- JVisualVM -- the UI for JVM monitoring -- How to connect remotely -- Java Mission Control -- GlassFish ad hoc monitoring -- Libraries monitor your application -- Counters, gauges, timers, and more -- Instrumenting the code -- CDI instrumentation -- Implementing your own configurable monitoring interceptor. | |
505 | 8 | |a Javaagent -- a complex but powerful instrumentation -- Sirona javaagent -- SQL Monitoring -- Data aggregation -- Tracing -- APM -- Summary -- Chapter 4: Application Optimization -- Memory Management and Server Configuration -- Java and the memory -- Garbage collector -- Garbage collector algorithms -- The serial collector -- Parallel and parallel compacting collectors -- Concurrent Mark Sweep (CMS) -- Garbage First (G1) -- Common memory settings -- Debugging GC behavior -- Heap dump -- Java EE and the resources -- DataSource -- Java EE and pools -- Java EE and HTTP pools -- Java EE implicit features -- Summary -- Chapter 5: Scale Up -- Threading and Implications -- Java EE threading model -- Thread data and consistency -- Concurrent data access -- Java and thread safety -- Synchronized -- Locks -- java.util.concurrent -- The volatile data -- Java EE and threads -- CDI asynchronous events -- EJB @Asynchronous -- EE concurrency utilities for Java EE -- ManagedExecutorService -- ManagedScheduledExecutorService -- Java EE threads -- ContextService -- EJB @Lock -- HTTP threads -- Server side -- Client side -- Reactive programming and Java EE -- Message passing and Java EE -- Summary -- Chapter 6: Be Lazy -- Cache Your Data -- Caching challenges -- How does the cache work? -- The cache key -- Eviction policy -- Least Recently Used (LRU) -- First In First Out (FIFO) -- Random -- Least Frequently Used (LFU) -- Cache eviction trigger -- Cache storage -- memory or not -- Consistency of the data -- HTTP and caching -- Cache-Control -- ETag -- Vary -- HTTP caching and the Java EE API -- HTTP 2 promise -- JCache -- the standard cache of Java EE -- Setting up JCache -- Programmatic API -- JCache configuration -- CDI integration -- Cache configuration -- @CacheDefaults -- Cache key -- Cache once -- Summary -- Chapter 7: Be Fault-Tolerant -- It will fail, no doubt! | |
505 | 8 | |a Load balancing -- pick the best one -- Transparent load balancing -- client versus server -- Common strategies -- The round-robin algorithm -- Random load balancing -- Link to failover -- Sticky session -- The scheduling algorithm -- Load balancing or proxy -- additional features -- Failover -- Switching to another system -- Local fallback -- Fallback code structure -- Microprofile to the rescue -- Failover extension -- Fallback handling -- caching, an alternative solution -- Circuit breaker -- Bulk head -- Timeouts -- Timeouts for code without timeouts -- Summary -- Chapter 8: Loggers and Performances -- A Trade-Off -- I log, you log, they log -- Logging frameworks and concepts -- Logger -- Logger Factory -- LogRecord -- Handler -- Filter -- Formatter -- Level -- Logging invocations -- Filters -- Formatters -- Using handlers -- Logging components and Java EE -- Logging patterns -- Testing your level -- Using templates in your messages -- Asynchronous or not? -- Logging implementations -- which one to pick -- Logging facade -- the good bad idea -- Logging frameworks -- Log4j -- Log4j2 -- Logback -- JUL -- Choosing an implementation -- Summary -- Chapter 9: Benchmarking Your Application -- Benchmarking -- validating your application against your SLA -- Benchmark, benchmark, benchmark -- Preparing your benchmark -- Defining the benchmark criteria -- Defining the metric -- Defining acceptance criteria -- Defining the scenario -- Defining the environment -- The machines -- The network -- Databases and remote services -- The server -- Automatize your scenarios -- JMeter -- Gatling -- Other tools -- Ensuring you have support -- Time boxing your optimization benchmark -- Installing and resetting procedures -- Benchmark iterations -- Iterating -- Changing a single setting at a time -- Resetting any state between runs -- Warming up your system -- After your benchmark. | |
505 | 8 | |a Writing a report -- Updating your default configurations -- Reviewing the conclusions -- Enriching your project backlog -- Summary -- Chapter 10: Continuous Performance Evaluation -- Writing performance tests -- the pitfalls -- Writing performance tests -- JMH -- the OpenJDK tool -- Writing a benchmark with JMH -- The state -- Creating your first JMH benchmark -- BlackHole to be a star -- Running the benchmarks -- Integrating JMH with JUnit -- ContiPerf -- Arquillian and ContiPerf -- the diabolic pair -- JMeter and build integration -- Gatling and continuous integration -- Deploying your (benchmark) application -- Continuous integration platform and performance -- Summary -- Another Book You May Enjoy -- Index. | |
650 | 0 | |a Java. | |
650 | 0 | |a Application software |x Development. |0 http://id.loc.gov/authorities/subjects/sh95009362 | |
650 | 6 | |a Logiciels d'application |x Développement. | |
650 | 7 | |a Programming & scripting languages: general. |2 bicssc | |
650 | 7 | |a Distributed systems. |2 bicssc | |
650 | 7 | |a Computers |x Systems Architecture |x Distributed Systems & Computing. |2 bisacsh | |
650 | 7 | |a Computers |x Programming Languages |x General. |2 bisacsh | |
650 | 7 | |a Computers |x Programming Languages |x Java. |2 bisacsh | |
650 | 7 | |a Application software |x Development |2 fast | |
758 | |i has work: |a Java EE 8 high performance (Text) |1 https://id.oclc.org/worldcat/entity/E39PCXq4FVcvVDPv6wM4tKfQMd |4 https://id.oclc.org/worldcat/ontology/hasWork | ||
776 | 0 | 8 | |i Print version: |a Manni-Bucau, Romain. |t Java EE 8 High Performance : Master techniques such as memory optimization, caching, concurrency, and multithreading to achieve maximum performance from your enterprise applications. |d Birmingham : Packt Publishing, ©2018 |
856 | 4 | 0 | |l FWS01 |p ZDB-4-EBA |q FWS_PDA_EBA |u https://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&AN=1703779 |3 Volltext |
938 | |a Askews and Holts Library Services |b ASKH |n AH33858774 | ||
938 | |a EBL - Ebook Library |b EBLB |n EBL5259458 | ||
938 | |a YBP Library Services |b YANK |n 15146413 | ||
938 | |a EBSCOhost |b EBSC |n 1703779 | ||
994 | |a 92 |b GEBAY | ||
912 | |a ZDB-4-EBA | ||
049 | |a DE-863 |
Datensatz im Suchindex
DE-BY-FWS_katkey | ZDB-4-EBA-on1022794860 |
---|---|
_version_ | 1816882413013303296 |
adam_text | |
any_adam_object | |
author | Manni-Bucau, Romain |
author_facet | Manni-Bucau, Romain |
author_role | |
author_sort | Manni-Bucau, Romain |
author_variant | r m b rmb |
building | Verbundindex |
bvnumber | localFWS |
callnumber-first | Q - Science |
callnumber-label | QA76 |
callnumber-raw | QA76.73.J38 .M366 2018 |
callnumber-search | QA76.73.J38 .M366 2018 |
callnumber-sort | QA 276.73 J38 M366 42018 |
callnumber-subject | QA - Mathematics |
collection | ZDB-4-EBA |
contents | Cover -- Title Page -- Copyright and Credits -- Dedication -- Packt Upsell -- Contributors -- Table of Contents -- Preface -- Chapter 1: Money -- The Quote Manager Application -- Setting up the environment -- The application architecture -- Application project highlights -- The build -- The persistence layer -- The service layer -- The JAX-RS layer -- The WebSocket layer -- Provision some data -- Application summary -- The application business -- The application design -- The application server -- Testing the application -- Get a quote price the JAX-RS way -- Get the price, the WebSocket way -- Setting up MySQL -- Conclusion -- Summary -- Chapter 2: Looking Under the Cover -- What is This EE Thing? -- Context and Dependency Injection -- what did you do to my beans? -- IoC -- a pretty simple example -- The main features of CDI -- Injections -- Scopes -- Interceptors/decorators -- Events -- Dynamic lookups -- JAX-RS -- the servlet router -- The router -- Marshalling -- Filter and interceptors -- @Suspended or asynchronous operation -- JPA -- the database link -- From JPA to the database -- Model and implications -- The Java Transaction API -- Server resources -- DataSource configuration -- Java EE and performances -- Ensure you know the server -- Ensure you know your application -- Ensure you know your resources -- Summary -- Chapter 3: Monitor Your Application -- Java tools to know what my application is doing -- The jcmd command -- the small command line utility that does a lot -- Thread.print -- Memory -- JVisualVM -- the UI for JVM monitoring -- How to connect remotely -- Java Mission Control -- GlassFish ad hoc monitoring -- Libraries monitor your application -- Counters, gauges, timers, and more -- Instrumenting the code -- CDI instrumentation -- Implementing your own configurable monitoring interceptor. Javaagent -- a complex but powerful instrumentation -- Sirona javaagent -- SQL Monitoring -- Data aggregation -- Tracing -- APM -- Summary -- Chapter 4: Application Optimization -- Memory Management and Server Configuration -- Java and the memory -- Garbage collector -- Garbage collector algorithms -- The serial collector -- Parallel and parallel compacting collectors -- Concurrent Mark Sweep (CMS) -- Garbage First (G1) -- Common memory settings -- Debugging GC behavior -- Heap dump -- Java EE and the resources -- DataSource -- Java EE and pools -- Java EE and HTTP pools -- Java EE implicit features -- Summary -- Chapter 5: Scale Up -- Threading and Implications -- Java EE threading model -- Thread data and consistency -- Concurrent data access -- Java and thread safety -- Synchronized -- Locks -- java.util.concurrent -- The volatile data -- Java EE and threads -- CDI asynchronous events -- EJB @Asynchronous -- EE concurrency utilities for Java EE -- ManagedExecutorService -- ManagedScheduledExecutorService -- Java EE threads -- ContextService -- EJB @Lock -- HTTP threads -- Server side -- Client side -- Reactive programming and Java EE -- Message passing and Java EE -- Summary -- Chapter 6: Be Lazy -- Cache Your Data -- Caching challenges -- How does the cache work? -- The cache key -- Eviction policy -- Least Recently Used (LRU) -- First In First Out (FIFO) -- Random -- Least Frequently Used (LFU) -- Cache eviction trigger -- Cache storage -- memory or not -- Consistency of the data -- HTTP and caching -- Cache-Control -- ETag -- Vary -- HTTP caching and the Java EE API -- HTTP 2 promise -- JCache -- the standard cache of Java EE -- Setting up JCache -- Programmatic API -- JCache configuration -- CDI integration -- Cache configuration -- @CacheDefaults -- Cache key -- Cache once -- Summary -- Chapter 7: Be Fault-Tolerant -- It will fail, no doubt! Load balancing -- pick the best one -- Transparent load balancing -- client versus server -- Common strategies -- The round-robin algorithm -- Random load balancing -- Link to failover -- Sticky session -- The scheduling algorithm -- Load balancing or proxy -- additional features -- Failover -- Switching to another system -- Local fallback -- Fallback code structure -- Microprofile to the rescue -- Failover extension -- Fallback handling -- caching, an alternative solution -- Circuit breaker -- Bulk head -- Timeouts -- Timeouts for code without timeouts -- Summary -- Chapter 8: Loggers and Performances -- A Trade-Off -- I log, you log, they log -- Logging frameworks and concepts -- Logger -- Logger Factory -- LogRecord -- Handler -- Filter -- Formatter -- Level -- Logging invocations -- Filters -- Formatters -- Using handlers -- Logging components and Java EE -- Logging patterns -- Testing your level -- Using templates in your messages -- Asynchronous or not? -- Logging implementations -- which one to pick -- Logging facade -- the good bad idea -- Logging frameworks -- Log4j -- Log4j2 -- Logback -- JUL -- Choosing an implementation -- Summary -- Chapter 9: Benchmarking Your Application -- Benchmarking -- validating your application against your SLA -- Benchmark, benchmark, benchmark -- Preparing your benchmark -- Defining the benchmark criteria -- Defining the metric -- Defining acceptance criteria -- Defining the scenario -- Defining the environment -- The machines -- The network -- Databases and remote services -- The server -- Automatize your scenarios -- JMeter -- Gatling -- Other tools -- Ensuring you have support -- Time boxing your optimization benchmark -- Installing and resetting procedures -- Benchmark iterations -- Iterating -- Changing a single setting at a time -- Resetting any state between runs -- Warming up your system -- After your benchmark. Writing a report -- Updating your default configurations -- Reviewing the conclusions -- Enriching your project backlog -- Summary -- Chapter 10: Continuous Performance Evaluation -- Writing performance tests -- the pitfalls -- Writing performance tests -- JMH -- the OpenJDK tool -- Writing a benchmark with JMH -- The state -- Creating your first JMH benchmark -- BlackHole to be a star -- Running the benchmarks -- Integrating JMH with JUnit -- ContiPerf -- Arquillian and ContiPerf -- the diabolic pair -- JMeter and build integration -- Gatling and continuous integration -- Deploying your (benchmark) application -- Continuous integration platform and performance -- Summary -- Another Book You May Enjoy -- Index. |
ctrlnum | (OCoLC)1022794860 |
dewey-full | 005.133 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 005 - Computer programming, programs, data, security |
dewey-raw | 005.133 |
dewey-search | 005.133 |
dewey-sort | 15.133 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
format | Electronic eBook |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>09546cam a2200637Mi 4500</leader><controlfield tag="001">ZDB-4-EBA-on1022794860</controlfield><controlfield tag="003">OCoLC</controlfield><controlfield tag="005">20241004212047.0</controlfield><controlfield tag="006">m o d </controlfield><controlfield tag="007">cr cnu---unuuu</controlfield><controlfield tag="008">180210s2018 enk o 000 0 eng d</controlfield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">EBLCP</subfield><subfield code="b">eng</subfield><subfield code="e">pn</subfield><subfield code="c">EBLCP</subfield><subfield code="d">NLE</subfield><subfield code="d">MERUC</subfield><subfield code="d">CHVBK</subfield><subfield code="d">OCLCO</subfield><subfield code="d">IDB</subfield><subfield code="d">YDX</subfield><subfield code="d">OCLCF</subfield><subfield code="d">VT2</subfield><subfield code="d">TEFOD</subfield><subfield code="d">OCLCQ</subfield><subfield code="d">OCLCO</subfield><subfield code="d">LVT</subfield><subfield code="d">C6I</subfield><subfield code="d">UKAHL</subfield><subfield code="d">OCLCQ</subfield><subfield code="d">N$T</subfield><subfield code="d">UKMGB</subfield><subfield code="d">OCLCO</subfield><subfield code="d">K6U</subfield><subfield code="d">OCLCQ</subfield><subfield code="d">OCLCO</subfield><subfield code="d">OCLCL</subfield></datafield><datafield tag="015" ind1=" " ind2=" "><subfield code="a">GBC1L5072</subfield><subfield code="2">bnb</subfield></datafield><datafield tag="016" ind1="7" ind2=" "><subfield code="a">018754831</subfield><subfield code="2">Uk</subfield></datafield><datafield tag="019" ind1=" " ind2=" "><subfield code="a">1022776281</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9781788472159</subfield><subfield code="q">(electronic bk.)</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">1788472152</subfield><subfield code="q">(electronic bk.)</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">178847306X</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9781788473064</subfield></datafield><datafield tag="024" ind1="3" ind2=" "><subfield code="a">9781788473064</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)1022794860</subfield><subfield code="z">(OCoLC)1022776281</subfield></datafield><datafield tag="037" ind1=" " ind2=" "><subfield code="a">B08602</subfield><subfield code="b">01201872</subfield></datafield><datafield tag="037" ind1=" " ind2=" "><subfield code="a">6C070B00-0742-4284-8A63-D29D2342FAA0</subfield><subfield code="b">OverDrive, Inc.</subfield><subfield code="n">http://www.overdrive.com</subfield></datafield><datafield tag="050" ind1=" " ind2="4"><subfield code="a">QA76.73.J38</subfield><subfield code="b">.M366 2018</subfield></datafield><datafield tag="082" ind1="7" ind2=" "><subfield code="a">005.133</subfield><subfield code="2">23</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">MAIN</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Manni-Bucau, Romain.</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Java EE 8 High Performance :</subfield><subfield code="b">Master techniques such as memory optimization, caching, concurrency, and multithreading to achieve maximum performance from your enterprise applications.</subfield></datafield><datafield tag="260" ind1=" " ind2=" "><subfield code="a">Birmingham :</subfield><subfield code="b">Packt Publishing,</subfield><subfield code="c">2018.</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">1 online resource (344 pages)</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="a">text</subfield><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="a">computer</subfield><subfield code="b">c</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="a">online resource</subfield><subfield code="b">cr</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="588" ind1="0" ind2=" "><subfield code="a">Print version record.</subfield></datafield><datafield tag="520" ind1=" " ind2=" "><subfield code="a">The ease with which we write an application has been increasing, but with increasingly complex application come the need to address their performance. A balancing act between implementing complex applications easily and keeping its performance optimum is need of the hour. In this book we explore how to achieve this crucial balance while ...</subfield></datafield><datafield tag="505" ind1="0" ind2=" "><subfield code="a">Cover -- Title Page -- Copyright and Credits -- Dedication -- Packt Upsell -- Contributors -- Table of Contents -- Preface -- Chapter 1: Money -- The Quote Manager Application -- Setting up the environment -- The application architecture -- Application project highlights -- The build -- The persistence layer -- The service layer -- The JAX-RS layer -- The WebSocket layer -- Provision some data -- Application summary -- The application business -- The application design -- The application server -- Testing the application -- Get a quote price the JAX-RS way -- Get the price, the WebSocket way -- Setting up MySQL -- Conclusion -- Summary -- Chapter 2: Looking Under the Cover -- What is This EE Thing? -- Context and Dependency Injection -- what did you do to my beans? -- IoC -- a pretty simple example -- The main features of CDI -- Injections -- Scopes -- Interceptors/decorators -- Events -- Dynamic lookups -- JAX-RS -- the servlet router -- The router -- Marshalling -- Filter and interceptors -- @Suspended or asynchronous operation -- JPA -- the database link -- From JPA to the database -- Model and implications -- The Java Transaction API -- Server resources -- DataSource configuration -- Java EE and performances -- Ensure you know the server -- Ensure you know your application -- Ensure you know your resources -- Summary -- Chapter 3: Monitor Your Application -- Java tools to know what my application is doing -- The jcmd command -- the small command line utility that does a lot -- Thread.print -- Memory -- JVisualVM -- the UI for JVM monitoring -- How to connect remotely -- Java Mission Control -- GlassFish ad hoc monitoring -- Libraries monitor your application -- Counters, gauges, timers, and more -- Instrumenting the code -- CDI instrumentation -- Implementing your own configurable monitoring interceptor.</subfield></datafield><datafield tag="505" ind1="8" ind2=" "><subfield code="a">Javaagent -- a complex but powerful instrumentation -- Sirona javaagent -- SQL Monitoring -- Data aggregation -- Tracing -- APM -- Summary -- Chapter 4: Application Optimization -- Memory Management and Server Configuration -- Java and the memory -- Garbage collector -- Garbage collector algorithms -- The serial collector -- Parallel and parallel compacting collectors -- Concurrent Mark Sweep (CMS) -- Garbage First (G1) -- Common memory settings -- Debugging GC behavior -- Heap dump -- Java EE and the resources -- DataSource -- Java EE and pools -- Java EE and HTTP pools -- Java EE implicit features -- Summary -- Chapter 5: Scale Up -- Threading and Implications -- Java EE threading model -- Thread data and consistency -- Concurrent data access -- Java and thread safety -- Synchronized -- Locks -- java.util.concurrent -- The volatile data -- Java EE and threads -- CDI asynchronous events -- EJB @Asynchronous -- EE concurrency utilities for Java EE -- ManagedExecutorService -- ManagedScheduledExecutorService -- Java EE threads -- ContextService -- EJB @Lock -- HTTP threads -- Server side -- Client side -- Reactive programming and Java EE -- Message passing and Java EE -- Summary -- Chapter 6: Be Lazy -- Cache Your Data -- Caching challenges -- How does the cache work? -- The cache key -- Eviction policy -- Least Recently Used (LRU) -- First In First Out (FIFO) -- Random -- Least Frequently Used (LFU) -- Cache eviction trigger -- Cache storage -- memory or not -- Consistency of the data -- HTTP and caching -- Cache-Control -- ETag -- Vary -- HTTP caching and the Java EE API -- HTTP 2 promise -- JCache -- the standard cache of Java EE -- Setting up JCache -- Programmatic API -- JCache configuration -- CDI integration -- Cache configuration -- @CacheDefaults -- Cache key -- Cache once -- Summary -- Chapter 7: Be Fault-Tolerant -- It will fail, no doubt!</subfield></datafield><datafield tag="505" ind1="8" ind2=" "><subfield code="a">Load balancing -- pick the best one -- Transparent load balancing -- client versus server -- Common strategies -- The round-robin algorithm -- Random load balancing -- Link to failover -- Sticky session -- The scheduling algorithm -- Load balancing or proxy -- additional features -- Failover -- Switching to another system -- Local fallback -- Fallback code structure -- Microprofile to the rescue -- Failover extension -- Fallback handling -- caching, an alternative solution -- Circuit breaker -- Bulk head -- Timeouts -- Timeouts for code without timeouts -- Summary -- Chapter 8: Loggers and Performances -- A Trade-Off -- I log, you log, they log -- Logging frameworks and concepts -- Logger -- Logger Factory -- LogRecord -- Handler -- Filter -- Formatter -- Level -- Logging invocations -- Filters -- Formatters -- Using handlers -- Logging components and Java EE -- Logging patterns -- Testing your level -- Using templates in your messages -- Asynchronous or not? -- Logging implementations -- which one to pick -- Logging facade -- the good bad idea -- Logging frameworks -- Log4j -- Log4j2 -- Logback -- JUL -- Choosing an implementation -- Summary -- Chapter 9: Benchmarking Your Application -- Benchmarking -- validating your application against your SLA -- Benchmark, benchmark, benchmark -- Preparing your benchmark -- Defining the benchmark criteria -- Defining the metric -- Defining acceptance criteria -- Defining the scenario -- Defining the environment -- The machines -- The network -- Databases and remote services -- The server -- Automatize your scenarios -- JMeter -- Gatling -- Other tools -- Ensuring you have support -- Time boxing your optimization benchmark -- Installing and resetting procedures -- Benchmark iterations -- Iterating -- Changing a single setting at a time -- Resetting any state between runs -- Warming up your system -- After your benchmark.</subfield></datafield><datafield tag="505" ind1="8" ind2=" "><subfield code="a">Writing a report -- Updating your default configurations -- Reviewing the conclusions -- Enriching your project backlog -- Summary -- Chapter 10: Continuous Performance Evaluation -- Writing performance tests -- the pitfalls -- Writing performance tests -- JMH -- the OpenJDK tool -- Writing a benchmark with JMH -- The state -- Creating your first JMH benchmark -- BlackHole to be a star -- Running the benchmarks -- Integrating JMH with JUnit -- ContiPerf -- Arquillian and ContiPerf -- the diabolic pair -- JMeter and build integration -- Gatling and continuous integration -- Deploying your (benchmark) application -- Continuous integration platform and performance -- Summary -- Another Book You May Enjoy -- Index.</subfield></datafield><datafield tag="650" ind1=" " ind2="0"><subfield code="a">Java.</subfield></datafield><datafield tag="650" ind1=" " ind2="0"><subfield code="a">Application software</subfield><subfield code="x">Development.</subfield><subfield code="0">http://id.loc.gov/authorities/subjects/sh95009362</subfield></datafield><datafield tag="650" ind1=" " ind2="6"><subfield code="a">Logiciels d'application</subfield><subfield code="x">Développement.</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">Programming & scripting languages: general.</subfield><subfield code="2">bicssc</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">Distributed systems.</subfield><subfield code="2">bicssc</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">Computers</subfield><subfield code="x">Systems Architecture</subfield><subfield code="x">Distributed Systems & Computing.</subfield><subfield code="2">bisacsh</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">Computers</subfield><subfield code="x">Programming Languages</subfield><subfield code="x">General.</subfield><subfield code="2">bisacsh</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">Computers</subfield><subfield code="x">Programming Languages</subfield><subfield code="x">Java.</subfield><subfield code="2">bisacsh</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">Application software</subfield><subfield code="x">Development</subfield><subfield code="2">fast</subfield></datafield><datafield tag="758" ind1=" " ind2=" "><subfield code="i">has work:</subfield><subfield code="a">Java EE 8 high performance (Text)</subfield><subfield code="1">https://id.oclc.org/worldcat/entity/E39PCXq4FVcvVDPv6wM4tKfQMd</subfield><subfield code="4">https://id.oclc.org/worldcat/ontology/hasWork</subfield></datafield><datafield tag="776" ind1="0" ind2="8"><subfield code="i">Print version:</subfield><subfield code="a">Manni-Bucau, Romain.</subfield><subfield code="t">Java EE 8 High Performance : Master techniques such as memory optimization, caching, concurrency, and multithreading to achieve maximum performance from your enterprise applications.</subfield><subfield code="d">Birmingham : Packt Publishing, ©2018</subfield></datafield><datafield tag="856" ind1="4" ind2="0"><subfield code="l">FWS01</subfield><subfield code="p">ZDB-4-EBA</subfield><subfield code="q">FWS_PDA_EBA</subfield><subfield code="u">https://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&AN=1703779</subfield><subfield code="3">Volltext</subfield></datafield><datafield tag="938" ind1=" " ind2=" "><subfield code="a">Askews and Holts Library Services</subfield><subfield code="b">ASKH</subfield><subfield code="n">AH33858774</subfield></datafield><datafield tag="938" ind1=" " ind2=" "><subfield code="a">EBL - Ebook Library</subfield><subfield code="b">EBLB</subfield><subfield code="n">EBL5259458</subfield></datafield><datafield tag="938" ind1=" " ind2=" "><subfield code="a">YBP Library Services</subfield><subfield code="b">YANK</subfield><subfield code="n">15146413</subfield></datafield><datafield tag="938" ind1=" " ind2=" "><subfield code="a">EBSCOhost</subfield><subfield code="b">EBSC</subfield><subfield code="n">1703779</subfield></datafield><datafield tag="994" ind1=" " ind2=" "><subfield code="a">92</subfield><subfield code="b">GEBAY</subfield></datafield><datafield tag="912" ind1=" " ind2=" "><subfield code="a">ZDB-4-EBA</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-863</subfield></datafield></record></collection> |
id | ZDB-4-EBA-on1022794860 |
illustrated | Not Illustrated |
indexdate | 2024-11-27T13:28:13Z |
institution | BVB |
isbn | 9781788472159 1788472152 178847306X 9781788473064 |
language | English |
oclc_num | 1022794860 |
open_access_boolean | |
owner | MAIN DE-863 DE-BY-FWS |
owner_facet | MAIN DE-863 DE-BY-FWS |
physical | 1 online resource (344 pages) |
psigel | ZDB-4-EBA |
publishDate | 2018 |
publishDateSearch | 2018 |
publishDateSort | 2018 |
publisher | Packt Publishing, |
record_format | marc |
spelling | Manni-Bucau, Romain. Java EE 8 High Performance : Master techniques such as memory optimization, caching, concurrency, and multithreading to achieve maximum performance from your enterprise applications. Birmingham : Packt Publishing, 2018. 1 online resource (344 pages) text txt rdacontent computer c rdamedia online resource cr rdacarrier Print version record. The ease with which we write an application has been increasing, but with increasingly complex application come the need to address their performance. A balancing act between implementing complex applications easily and keeping its performance optimum is need of the hour. In this book we explore how to achieve this crucial balance while ... Cover -- Title Page -- Copyright and Credits -- Dedication -- Packt Upsell -- Contributors -- Table of Contents -- Preface -- Chapter 1: Money -- The Quote Manager Application -- Setting up the environment -- The application architecture -- Application project highlights -- The build -- The persistence layer -- The service layer -- The JAX-RS layer -- The WebSocket layer -- Provision some data -- Application summary -- The application business -- The application design -- The application server -- Testing the application -- Get a quote price the JAX-RS way -- Get the price, the WebSocket way -- Setting up MySQL -- Conclusion -- Summary -- Chapter 2: Looking Under the Cover -- What is This EE Thing? -- Context and Dependency Injection -- what did you do to my beans? -- IoC -- a pretty simple example -- The main features of CDI -- Injections -- Scopes -- Interceptors/decorators -- Events -- Dynamic lookups -- JAX-RS -- the servlet router -- The router -- Marshalling -- Filter and interceptors -- @Suspended or asynchronous operation -- JPA -- the database link -- From JPA to the database -- Model and implications -- The Java Transaction API -- Server resources -- DataSource configuration -- Java EE and performances -- Ensure you know the server -- Ensure you know your application -- Ensure you know your resources -- Summary -- Chapter 3: Monitor Your Application -- Java tools to know what my application is doing -- The jcmd command -- the small command line utility that does a lot -- Thread.print -- Memory -- JVisualVM -- the UI for JVM monitoring -- How to connect remotely -- Java Mission Control -- GlassFish ad hoc monitoring -- Libraries monitor your application -- Counters, gauges, timers, and more -- Instrumenting the code -- CDI instrumentation -- Implementing your own configurable monitoring interceptor. Javaagent -- a complex but powerful instrumentation -- Sirona javaagent -- SQL Monitoring -- Data aggregation -- Tracing -- APM -- Summary -- Chapter 4: Application Optimization -- Memory Management and Server Configuration -- Java and the memory -- Garbage collector -- Garbage collector algorithms -- The serial collector -- Parallel and parallel compacting collectors -- Concurrent Mark Sweep (CMS) -- Garbage First (G1) -- Common memory settings -- Debugging GC behavior -- Heap dump -- Java EE and the resources -- DataSource -- Java EE and pools -- Java EE and HTTP pools -- Java EE implicit features -- Summary -- Chapter 5: Scale Up -- Threading and Implications -- Java EE threading model -- Thread data and consistency -- Concurrent data access -- Java and thread safety -- Synchronized -- Locks -- java.util.concurrent -- The volatile data -- Java EE and threads -- CDI asynchronous events -- EJB @Asynchronous -- EE concurrency utilities for Java EE -- ManagedExecutorService -- ManagedScheduledExecutorService -- Java EE threads -- ContextService -- EJB @Lock -- HTTP threads -- Server side -- Client side -- Reactive programming and Java EE -- Message passing and Java EE -- Summary -- Chapter 6: Be Lazy -- Cache Your Data -- Caching challenges -- How does the cache work? -- The cache key -- Eviction policy -- Least Recently Used (LRU) -- First In First Out (FIFO) -- Random -- Least Frequently Used (LFU) -- Cache eviction trigger -- Cache storage -- memory or not -- Consistency of the data -- HTTP and caching -- Cache-Control -- ETag -- Vary -- HTTP caching and the Java EE API -- HTTP 2 promise -- JCache -- the standard cache of Java EE -- Setting up JCache -- Programmatic API -- JCache configuration -- CDI integration -- Cache configuration -- @CacheDefaults -- Cache key -- Cache once -- Summary -- Chapter 7: Be Fault-Tolerant -- It will fail, no doubt! Load balancing -- pick the best one -- Transparent load balancing -- client versus server -- Common strategies -- The round-robin algorithm -- Random load balancing -- Link to failover -- Sticky session -- The scheduling algorithm -- Load balancing or proxy -- additional features -- Failover -- Switching to another system -- Local fallback -- Fallback code structure -- Microprofile to the rescue -- Failover extension -- Fallback handling -- caching, an alternative solution -- Circuit breaker -- Bulk head -- Timeouts -- Timeouts for code without timeouts -- Summary -- Chapter 8: Loggers and Performances -- A Trade-Off -- I log, you log, they log -- Logging frameworks and concepts -- Logger -- Logger Factory -- LogRecord -- Handler -- Filter -- Formatter -- Level -- Logging invocations -- Filters -- Formatters -- Using handlers -- Logging components and Java EE -- Logging patterns -- Testing your level -- Using templates in your messages -- Asynchronous or not? -- Logging implementations -- which one to pick -- Logging facade -- the good bad idea -- Logging frameworks -- Log4j -- Log4j2 -- Logback -- JUL -- Choosing an implementation -- Summary -- Chapter 9: Benchmarking Your Application -- Benchmarking -- validating your application against your SLA -- Benchmark, benchmark, benchmark -- Preparing your benchmark -- Defining the benchmark criteria -- Defining the metric -- Defining acceptance criteria -- Defining the scenario -- Defining the environment -- The machines -- The network -- Databases and remote services -- The server -- Automatize your scenarios -- JMeter -- Gatling -- Other tools -- Ensuring you have support -- Time boxing your optimization benchmark -- Installing and resetting procedures -- Benchmark iterations -- Iterating -- Changing a single setting at a time -- Resetting any state between runs -- Warming up your system -- After your benchmark. Writing a report -- Updating your default configurations -- Reviewing the conclusions -- Enriching your project backlog -- Summary -- Chapter 10: Continuous Performance Evaluation -- Writing performance tests -- the pitfalls -- Writing performance tests -- JMH -- the OpenJDK tool -- Writing a benchmark with JMH -- The state -- Creating your first JMH benchmark -- BlackHole to be a star -- Running the benchmarks -- Integrating JMH with JUnit -- ContiPerf -- Arquillian and ContiPerf -- the diabolic pair -- JMeter and build integration -- Gatling and continuous integration -- Deploying your (benchmark) application -- Continuous integration platform and performance -- Summary -- Another Book You May Enjoy -- Index. Java. Application software Development. http://id.loc.gov/authorities/subjects/sh95009362 Logiciels d'application Développement. Programming & scripting languages: general. bicssc Distributed systems. bicssc Computers Systems Architecture Distributed Systems & Computing. bisacsh Computers Programming Languages General. bisacsh Computers Programming Languages Java. bisacsh Application software Development fast has work: Java EE 8 high performance (Text) https://id.oclc.org/worldcat/entity/E39PCXq4FVcvVDPv6wM4tKfQMd https://id.oclc.org/worldcat/ontology/hasWork Print version: Manni-Bucau, Romain. Java EE 8 High Performance : Master techniques such as memory optimization, caching, concurrency, and multithreading to achieve maximum performance from your enterprise applications. Birmingham : Packt Publishing, ©2018 FWS01 ZDB-4-EBA FWS_PDA_EBA https://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&AN=1703779 Volltext |
spellingShingle | Manni-Bucau, Romain Java EE 8 High Performance : Master techniques such as memory optimization, caching, concurrency, and multithreading to achieve maximum performance from your enterprise applications. Cover -- Title Page -- Copyright and Credits -- Dedication -- Packt Upsell -- Contributors -- Table of Contents -- Preface -- Chapter 1: Money -- The Quote Manager Application -- Setting up the environment -- The application architecture -- Application project highlights -- The build -- The persistence layer -- The service layer -- The JAX-RS layer -- The WebSocket layer -- Provision some data -- Application summary -- The application business -- The application design -- The application server -- Testing the application -- Get a quote price the JAX-RS way -- Get the price, the WebSocket way -- Setting up MySQL -- Conclusion -- Summary -- Chapter 2: Looking Under the Cover -- What is This EE Thing? -- Context and Dependency Injection -- what did you do to my beans? -- IoC -- a pretty simple example -- The main features of CDI -- Injections -- Scopes -- Interceptors/decorators -- Events -- Dynamic lookups -- JAX-RS -- the servlet router -- The router -- Marshalling -- Filter and interceptors -- @Suspended or asynchronous operation -- JPA -- the database link -- From JPA to the database -- Model and implications -- The Java Transaction API -- Server resources -- DataSource configuration -- Java EE and performances -- Ensure you know the server -- Ensure you know your application -- Ensure you know your resources -- Summary -- Chapter 3: Monitor Your Application -- Java tools to know what my application is doing -- The jcmd command -- the small command line utility that does a lot -- Thread.print -- Memory -- JVisualVM -- the UI for JVM monitoring -- How to connect remotely -- Java Mission Control -- GlassFish ad hoc monitoring -- Libraries monitor your application -- Counters, gauges, timers, and more -- Instrumenting the code -- CDI instrumentation -- Implementing your own configurable monitoring interceptor. Javaagent -- a complex but powerful instrumentation -- Sirona javaagent -- SQL Monitoring -- Data aggregation -- Tracing -- APM -- Summary -- Chapter 4: Application Optimization -- Memory Management and Server Configuration -- Java and the memory -- Garbage collector -- Garbage collector algorithms -- The serial collector -- Parallel and parallel compacting collectors -- Concurrent Mark Sweep (CMS) -- Garbage First (G1) -- Common memory settings -- Debugging GC behavior -- Heap dump -- Java EE and the resources -- DataSource -- Java EE and pools -- Java EE and HTTP pools -- Java EE implicit features -- Summary -- Chapter 5: Scale Up -- Threading and Implications -- Java EE threading model -- Thread data and consistency -- Concurrent data access -- Java and thread safety -- Synchronized -- Locks -- java.util.concurrent -- The volatile data -- Java EE and threads -- CDI asynchronous events -- EJB @Asynchronous -- EE concurrency utilities for Java EE -- ManagedExecutorService -- ManagedScheduledExecutorService -- Java EE threads -- ContextService -- EJB @Lock -- HTTP threads -- Server side -- Client side -- Reactive programming and Java EE -- Message passing and Java EE -- Summary -- Chapter 6: Be Lazy -- Cache Your Data -- Caching challenges -- How does the cache work? -- The cache key -- Eviction policy -- Least Recently Used (LRU) -- First In First Out (FIFO) -- Random -- Least Frequently Used (LFU) -- Cache eviction trigger -- Cache storage -- memory or not -- Consistency of the data -- HTTP and caching -- Cache-Control -- ETag -- Vary -- HTTP caching and the Java EE API -- HTTP 2 promise -- JCache -- the standard cache of Java EE -- Setting up JCache -- Programmatic API -- JCache configuration -- CDI integration -- Cache configuration -- @CacheDefaults -- Cache key -- Cache once -- Summary -- Chapter 7: Be Fault-Tolerant -- It will fail, no doubt! Load balancing -- pick the best one -- Transparent load balancing -- client versus server -- Common strategies -- The round-robin algorithm -- Random load balancing -- Link to failover -- Sticky session -- The scheduling algorithm -- Load balancing or proxy -- additional features -- Failover -- Switching to another system -- Local fallback -- Fallback code structure -- Microprofile to the rescue -- Failover extension -- Fallback handling -- caching, an alternative solution -- Circuit breaker -- Bulk head -- Timeouts -- Timeouts for code without timeouts -- Summary -- Chapter 8: Loggers and Performances -- A Trade-Off -- I log, you log, they log -- Logging frameworks and concepts -- Logger -- Logger Factory -- LogRecord -- Handler -- Filter -- Formatter -- Level -- Logging invocations -- Filters -- Formatters -- Using handlers -- Logging components and Java EE -- Logging patterns -- Testing your level -- Using templates in your messages -- Asynchronous or not? -- Logging implementations -- which one to pick -- Logging facade -- the good bad idea -- Logging frameworks -- Log4j -- Log4j2 -- Logback -- JUL -- Choosing an implementation -- Summary -- Chapter 9: Benchmarking Your Application -- Benchmarking -- validating your application against your SLA -- Benchmark, benchmark, benchmark -- Preparing your benchmark -- Defining the benchmark criteria -- Defining the metric -- Defining acceptance criteria -- Defining the scenario -- Defining the environment -- The machines -- The network -- Databases and remote services -- The server -- Automatize your scenarios -- JMeter -- Gatling -- Other tools -- Ensuring you have support -- Time boxing your optimization benchmark -- Installing and resetting procedures -- Benchmark iterations -- Iterating -- Changing a single setting at a time -- Resetting any state between runs -- Warming up your system -- After your benchmark. Writing a report -- Updating your default configurations -- Reviewing the conclusions -- Enriching your project backlog -- Summary -- Chapter 10: Continuous Performance Evaluation -- Writing performance tests -- the pitfalls -- Writing performance tests -- JMH -- the OpenJDK tool -- Writing a benchmark with JMH -- The state -- Creating your first JMH benchmark -- BlackHole to be a star -- Running the benchmarks -- Integrating JMH with JUnit -- ContiPerf -- Arquillian and ContiPerf -- the diabolic pair -- JMeter and build integration -- Gatling and continuous integration -- Deploying your (benchmark) application -- Continuous integration platform and performance -- Summary -- Another Book You May Enjoy -- Index. Java. Application software Development. http://id.loc.gov/authorities/subjects/sh95009362 Logiciels d'application Développement. Programming & scripting languages: general. bicssc Distributed systems. bicssc Computers Systems Architecture Distributed Systems & Computing. bisacsh Computers Programming Languages General. bisacsh Computers Programming Languages Java. bisacsh Application software Development fast |
subject_GND | http://id.loc.gov/authorities/subjects/sh95009362 |
title | Java EE 8 High Performance : Master techniques such as memory optimization, caching, concurrency, and multithreading to achieve maximum performance from your enterprise applications. |
title_auth | Java EE 8 High Performance : Master techniques such as memory optimization, caching, concurrency, and multithreading to achieve maximum performance from your enterprise applications. |
title_exact_search | Java EE 8 High Performance : Master techniques such as memory optimization, caching, concurrency, and multithreading to achieve maximum performance from your enterprise applications. |
title_full | Java EE 8 High Performance : Master techniques such as memory optimization, caching, concurrency, and multithreading to achieve maximum performance from your enterprise applications. |
title_fullStr | Java EE 8 High Performance : Master techniques such as memory optimization, caching, concurrency, and multithreading to achieve maximum performance from your enterprise applications. |
title_full_unstemmed | Java EE 8 High Performance : Master techniques such as memory optimization, caching, concurrency, and multithreading to achieve maximum performance from your enterprise applications. |
title_short | Java EE 8 High Performance : |
title_sort | java ee 8 high performance master techniques such as memory optimization caching concurrency and multithreading to achieve maximum performance from your enterprise applications |
title_sub | Master techniques such as memory optimization, caching, concurrency, and multithreading to achieve maximum performance from your enterprise applications. |
topic | Java. Application software Development. http://id.loc.gov/authorities/subjects/sh95009362 Logiciels d'application Développement. Programming & scripting languages: general. bicssc Distributed systems. bicssc Computers Systems Architecture Distributed Systems & Computing. bisacsh Computers Programming Languages General. bisacsh Computers Programming Languages Java. bisacsh Application software Development fast |
topic_facet | Java. Application software Development. Logiciels d'application Développement. Programming & scripting languages: general. Distributed systems. Computers Systems Architecture Distributed Systems & Computing. Computers Programming Languages General. Computers Programming Languages Java. Application software Development |
url | https://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&AN=1703779 |
work_keys_str_mv | AT mannibucauromain javaee8highperformancemastertechniquessuchasmemoryoptimizationcachingconcurrencyandmultithreadingtoachievemaximumperformancefromyourenterpriseapplications |