<!DOCTYPE html>

      
      
<html lang="en">
<head>
    <!-- Global site tag (gtag.js) - Google Analytics -->
    <script async src="https://www.googletagmanager.com/gtag/js?id=UA-61232409-1"></script>
    <script>
    window.dataLayer = window.dataLayer || [];
    function gtag(){dataLayer.push(arguments);}
    gtag('js', new Date());

    gtag('config', 'UA-61232409-1');
    </script>

    

    <meta charset="UTF-8">
    <meta name="ignite-version" content="2.9.0" />
    <title>Peer Class Loading | Ignite Documentation</title>
    
    <link rel="canonical" href="/docs/2.9.0/peer-class-loading" />
    
	
	<link rel="stylesheet" href="/assets/css/styles.css?1600286558">
    <link rel="stylesheet" href="/assets/css/asciidoc-pygments.css">
    <link rel="shortcut icon" href="/favicon.ico">
    <meta name='viewport' content='width=device-width, height=device-height, initial-scale=1.0, minimum-scale=1.0'>

	<script type="text/javascript" src="/assets/js/anchor.min.js?1600286558"></script>
  
  <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" />


</head>
<body>
    <header>
    <!--#include virtual="/includes/promotion_banner.html" -->
    <div class="container">
        <button type='button' class='menu' title='Docs menu'>
        <img src="/assets/images/menu-icon.svg"/>
        </button>
        <div class='home'>
            <a href="/" class='home' title='Apache Ignite home'>
                <img src="/assets/images/apache_ignite_logo.svg" alt="Apache Ignite logo" width="103" >
            </a>
        </div>
        
        <nav>
            
        </nav>
        
        <select id="version-selector">
            <option value="2.9.0">2.9.0</option>
        </select>
        
        <a href="https://github.com/apache/ignite" title='GitHub' class='github' target="_blank">
            <img src="/assets/images/github-gray.svg" alt="GitHub logo">
        </a>
        
        <form class='search'>
            <button class="search-close" type='button'><img src='/assets/images/cancel.svg'></button>
            <input type="search" placeholder="Search…" id="search-input">
        </form>
        <button type='button' class='search-toggle'><img src='/assets/images/search.svg'></button>
        <button type='button' class='top-nav-toggle'>⋮</button>

        
        
    </div>
</header>


    	 <link rel="stylesheet" href="/assets/css/docs.css">
<section class='page-docs'>
    



<nav class='left-nav' data-swiftype-index='false'>

      
        <li>
            

            <a href="/docs/2.9.0/preface" class='' >Preface</a>
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Quick Start Guides<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/quick-start/java"

                                class=''
                            >Java</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/quick-start/dotnet"

                                class=''
                            >.NET/C#</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/quick-start/cpp"

                                class=''
                            >C++</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/quick-start/python"

                                class=''
                            >Python</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/quick-start/nodejs"

                                class=''
                            >Node.JS</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/quick-start/sql"

                                class=''
                            >SQL</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/quick-start/php"

                                class=''
                            >PHP</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/quick-start/restapi"

                                class=''
                            >REST API</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="/installation" class='group-toggle collapsed '>Installation<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/installation/installing-using-zip"

                                class=''
                            >Installing Using ZIP Archive</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/installation/installing-using-docker"

                                class=''
                            >Installing Using Docker</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/installation/deb-rpm"

                                class=''
                            >Installing DEB or RPM package</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>Kubernetes<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//installation/kubernetes/amazon-eks-deployment" class=''>Amazon EKS</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//installation/kubernetes/azure-deployment" class=''>Azure Kubernetes Service</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//installation/kubernetes/gke-deployment" class=''>Google Kubernetes Engine</a></li>
                            
                            </nav>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Setting Up<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/setup"

                                class=''
                            >Setting Up Ignite for Java</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/setup-dotnet"

                                class=''
                            >Setting Up Ignite for .NET/C#</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/understanding-configuration" class='' >Understanding Configuration</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/logging" class='' >Configuring Logging</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/starting-nodes" class='' >Starting and Stopping Nodes</a>
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Clustering<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/clustering/clustering"

                                class=''
                            >Overview</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/clustering/tcp-ip-discovery"

                                class=''
                            >TCP/IP Discovery</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/clustering/zookeeper-discovery"

                                class=''
                            >ZooKeeper Discovery</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/clustering/discovery-in-the-cloud"

                                class=''
                            >Discovery in the Cloud</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/clustering/network-configuration"

                                class=''
                            >Network Configuration</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/clustering/connect-client-nodes"

                                class=''
                            >Connecting Client Nodes</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/clustering/running-client-nodes-behind-nat"

                                class=''
                            >Running Client Nodes Behind NAT</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Data Modeling<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/data-modeling/data-modeling"

                                class=''
                            >Introduction</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/data-modeling/data-partitioning"

                                class=''
                            >Data Partitioning</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/data-modeling/affinity-collocation"

                                class=''
                            >Affinity Colocation</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Configuring Memory<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/memory-architecture"

                                class=''
                            >Memory Architecture</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/memory-configuration/data-regions"

                                class=''
                            >Configuring Data Regions</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/memory-configuration/eviction-policies"

                                class=''
                            >Eviction Policies</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Configuring Caches<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/configuring-caches/configuration-overview"

                                class=''
                            >Cache Configuration</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/configuring-caches/configuring-backups"

                                class=''
                            >Configuring Partition Backups</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/configuring-caches/atomicity-modes"

                                class=''
                            >Atomicity Modes</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/configuring-caches/expiry-policies"

                                class=''
                            >Expiry Policy</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/configuring-caches/on-heap-caching"

                                class=''
                            >On-Heap Caching</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/configuring-caches/cache-groups"

                                class=''
                            >Cache Groups</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Persistence<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/persistence/native-persistence"

                                class=''
                            >Ignite Persistence</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/persistence/external-storage"

                                class=''
                            >External Storage</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/persistence/swap"

                                class=''
                            >Swapping</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/persistence/custom-cache-store"

                                class=''
                            >Implementing Custom Cache Store</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/persistence/disk-compression"

                                class=''
                            >Disk Compression</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/persistence/persistence-tuning"

                                class=''
                            >Tuning Persistence</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/baseline-topology" class='' >Baseline Topology</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/cluster-states" class='' >Cluster States</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/data-rebalancing" class='' >Data Rebalancing</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/partition-loss-policy" class='' >Partition Loss Policy</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/deploying-user-code" class='' >Deploying User Code</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/peer-class-loading" class='active' >Peer Class Loading</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/data-streaming" class='' >Data Streaming</a>
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Using Key-Value Cache API<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/key-value-api/basic-cache-operations"

                                class=''
                            >Basic Cache Operations</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/key-value-api/binary-objects"

                                class=''
                            >Working with Binary Objects</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/key-value-api/using-scan-queries"

                                class=''
                            >Using Scan Queries</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/read-repair"

                                class=''
                            >Read Repair</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/key-value-api/continuous-queries" class='' >Using Continuous Queries</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/key-value-api/transactions" class='' >Performing Transactions</a>
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Working with SQL<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/sql-introduction"

                                class=''
                            >Introduction</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/schemas"

                                class=''
                            >Understanding Schemas</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/indexes"

                                class=''
                            >Defining Indexes</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/sql-api"

                                class=''
                            >Using SQL API</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/distributed-joins"

                                class=''
                            >Distributed Joins</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/sql-transactions"

                                class=''
                            >SQL Transactions</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/custom-sql-func"

                                class=''
                            >Custom SQL Functions</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/JDBC/jdbc-driver"

                                class=''
                            >JDBC Driver</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/JDBC/jdbc-client-driver"

                                class=''
                            >JDBC Client Driver</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/transactions/mvcc"

                                class=''
                            >Multiversion Concurrency Control</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Distributed Computing<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/distributed-computing/distributed-computing"

                                class=''
                            >Distributed Computing API</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/distributed-computing/cluster-groups"

                                class=''
                            >Cluster Groups</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/distributed-computing/executor-service"

                                class=''
                            >Executor Service</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/distributed-computing/map-reduce"

                                class=''
                            >MapReduce API</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/distributed-computing/load-balancing"

                                class=''
                            >Load Balancing</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/distributed-computing/fault-tolerance"

                                class=''
                            >Fault Tolerance</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/distributed-computing/job-scheduling"

                                class=''
                            >Job Scheduling</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/collocated-computations" class='' >Colocating Computations with Data</a>
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Working with Events<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/events/listening-to-events"

                                class=''
                            >Enabling and Listenting to Events</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/events/events"

                                class=''
                            >Events</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/near-cache" class='' >Near Caches</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/platform-cache" class='' >.NET Platform Cache</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/services/services" class='' >Services</a>
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Distributed Data Structures<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/data-structures/queue-and-set"

                                class=''
                            >Queue and Set</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/data-structures/atomic-types"

                                class=''
                            >Atomic Types</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/data-structures/countdownlatch"

                                class=''
                            >CountDownLatch</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/data-structures/atomic-sequence"

                                class=''
                            >Atomic Sequence</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/data-structures/semaphore"

                                class=''
                            >Semaphore</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Machine Learning<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/machine-learning/machine-learning"

                                class=''
                            >Machine Learning</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/machine-learning/partition-based-dataset"

                                class=''
                            >Partition Based Dataset</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/machine-learning/updating-trained-models"

                                class=''
                            >Updating Trained Models</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>Binary Classification<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/binary-classification/introduction" class=''>Introduction</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/binary-classification/linear-svm" class=''>Linear SVM (Support Vector Machine)</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/binary-classification/decision-trees" class=''>Decision Trees</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/binary-classification/multilayer-perceptron" class=''>Multilayer Perceptron</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/binary-classification/logistic-regression" class=''>Logistic Regression</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/binary-classification/knn-classification" class=''>k-NN Classification</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/binary-classification/ann" class=''>ANN (Approximate Nearest Neighbor)</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/binary-classification/naive-bayes" class=''>Naive Bayes</a></li>
                            
                            </nav>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>Regression<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/regression/introduction" class=''>Introduction</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/regression/linear-regression" class=''>Linear Regression</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/regression/decision-trees-regression" class=''>Decision Trees Regression</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/regression/knn-regression" class=''>k-NN Regression</a></li>
                            
                            </nav>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>Clustering<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/clustering/introduction" class=''>Introduction</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/clustering/k-means-clustering" class=''>K-Means Clustering</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/clustering/gaussian-mixture" class=''>Gaussian mixture (GMM)</a></li>
                            
                            </nav>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/machine-learning/preprocessing"

                                class=''
                            >Preprocessing</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>Model Selection<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/model-selection/introduction" class=''>Introduction</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/model-selection/evaluator" class=''>Evaluator</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/model-selection/split-the-dataset-on-test-and-train-datasets" class=''>Split the dataset on test and train datasets</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/model-selection/hyper-parameter-tuning" class=''>Hyper-parameter tuning</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/model-selection/pipeline-api" class=''>Pipeline API</a></li>
                            
                            </nav>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/machine-learning/multiclass-classification"

                                class=''
                            >Multiclass Classification</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>Ensemble Methods<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/ensemble-methods/introduction" class=''></a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/ensemble-methods/stacking" class=''>Stacking</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/ensemble-methods/baggin" class=''>Bagging</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/ensemble-methods/random-forest" class=''>Random Forest</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/ensemble-methods/gradient-boosting" class=''>Gradient Boosting</a></li>
                            
                            </nav>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/machine-learning/recommendation-systems"

                                class=''
                            >Recommendation Systems</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>Importing Model<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/importing-model/introduction" class=''>Introduction</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/importing-model/model-import-from-gxboost" class=''>Import Model from XGBoost</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/importing-model/model-import-from-apache-spark" class=''>Import Model from Apache Spark</a></li>
                            
                            </nav>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Monitoring<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/monitoring-metrics/intro"

                                class=''
                            >Introduction</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/monitoring-metrics/cluster-id"

                                class=''
                            >Cluster ID and Tag</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>Metrics<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//monitoring-metrics/configuring-metrics" class=''>Configuring Metrics</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//monitoring-metrics/metrics" class=''>JMX Metrics</a></li>
                            
                            </nav>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>New Metrics System<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//monitoring-metrics/new-metrics-system" class=''>Introduction</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//monitoring-metrics/new-metrics" class=''>Metrics</a></li>
                            
                            </nav>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/monitoring-metrics/system-views"

                                class=''
                            >System Views</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/monitoring-metrics/tracing"

                                class=''
                            >Tracing</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="/security" class='group-toggle collapsed '>Security<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/security/authentication"

                                class=''
                            >Authentication</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/security/ssl-tls"

                                class=''
                            >SSL/TLS</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>Transparent Data Encryption<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//security/tde" class=''>Introduction</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//security/master-key-rotation" class=''>Master key rotation</a></li>
                            
                            </nav>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Thin Clients<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/thin-clients/getting-started-with-thin-clients"

                                class=''
                            >Thin Clients Overview</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/thin-clients/java-thin-client"

                                class=''
                            >Java Thin Client</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/thin-clients/dotnet-thin-client"

                                class=''
                            >.NET Thin Client</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/thin-clients/cpp-thin-client"

                                class=''
                            >C++ Thin Client</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/thin-clients/python-thin-client"

                                class=''
                            >Python Thin Client</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/thin-clients/php-thin-client"

                                class=''
                            >PHP Thin Client</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/thin-clients/nodejs-thin-client"

                                class=''
                            >Node.js Thin Client</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>Binary Client Protocol<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//binary-client-protocol/binary-client-protocol" class=''>Binary Client Protocol</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//binary-client-protocol/data-format" class=''>Data Format</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//binary-client-protocol/key-value-queries" class=''>Key-Value Queries</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//binary-client-protocol/sql-and-scan-queries" class=''>SQL and Scan Queries</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//binary-client-protocol/binary-type-metadata" class=''>Binary Types Metadata</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//binary-client-protocol/cache-configuration" class=''>Cache Configuration</a></li>
                            
                            </nav>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>ODBC Driver<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/ODBC/odbc-driver"

                                class=''
                            >ODBC Driver</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/ODBC/connection-string-dsn"

                                class=''
                            >Connection String and DSN</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/ODBC/querying-modifying-data"

                                class=''
                            >Querying and Modifying Data</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/ODBC/specification"

                                class=''
                            >Specification</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/ODBC/data-types"

                                class=''
                            >Data Types</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/ODBC/error-codes"

                                class=''
                            >Error Codes</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/restapi" class='' >REST API</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/control-script" class='' >Control Script</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/plugins" class='' >Plugins</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/sqlline" class='' >SQLLine</a>
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Ignite for Spark<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/ignite-for-spark/overview"

                                class=''
                            >Overview</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/ignite-for-spark/ignitecontext-and-rdd"

                                class=''
                            >IgniteContext and IgniteRDD</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/ignite-for-spark/ignite-dataframe"

                                class=''
                            >Ignite DataFrame</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/ignite-for-spark/installation"

                                class=''
                            >Installation</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/ignite-for-spark/spark-shell"

                                class=''
                            >Test Ignite with Spark-shell</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/ignite-for-spark/troubleshooting"

                                class=''
                            >Troubleshooting</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="/sql-reference/sql-reference-overview" class='group-toggle collapsed '>SQL Reference<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/sql-conformance"

                                class=''
                            >SQL Conformance</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/ddl"

                                class=''
                            >Data Definition Language (DDL)</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/dml"

                                class=''
                            >Data Manipulation Language (DML)</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/transactions"

                                class=''
                            >Transactions</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/operational-commands"

                                class=''
                            >Operational Commands</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/aggregate-functions"

                                class=''
                            >Aggregate functions</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/numeric-functions"

                                class=''
                            >Numeric Functions</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/string-functions"

                                class=''
                            >String Functions</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/date-time-functions"

                                class=''
                            >Data and Time Functions</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/system-functions"

                                class=''
                            >System Functions</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/data-types"

                                class=''
                            >Data Types</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
</nav>
<div class="left-nav__overlay"></div>


    <article data-swiftype-index='true'>
      <a class='edit-link' href="https://github.com/apache/ignite/tree/IGNITE-7595/docs/_docs/peer-class-loading.adoc" target="_blank">Edit</a>
        
            <h1>Peer Class Loading</h1>
        
        <div class="sect1">
<h2 id="overview">Overview</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Peer class loading refers to loading classes from a local node where they are defined to remote nodes.
With peer class loading enabled, you don&#8217;t have to manually deploy your Java code on each node in the cluster and re-deploy it each time it changes.
Ignite automatically loads the classes from the node where they are defined to the nodes where they are used.</p>
</div>
<div class="paragraph">
<p>For example, when <a href="/docs/2.9.0/key-value-api/using-scan-queries">querying data</a> with a custom transformer, you only need to define your tasks on the client node that initiates the computation, and Ignite loads the classes to the server nodes.</p>
</div>
<div class="paragraph">
<p>When enabled, peer class loading is used to deploy the following classes:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Tasks and jobs submitted via the <a href="/docs/2.9.0/distributed-computing/distributed-computing">compute interface</a>.</p>
</li>
<li>
<p>Transformers and filters used with <a href="/docs/2.9.0/key-value-api/using-scan-queries">scan queries</a> and <a href="/docs/2.9.0/key-value-api/continuous-queries">continuous queries</a>.</p>
</li>
<li>
<p>Stream transformers, receivers and visitors used with <a href="/docs/2.9.0/data-streaming#data-streamers">data streamers</a>.</p>
</li>
<li>
<p><a href="/docs/2.9.0/collocated-computations#entry-processor">Entry processors</a>.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>When defining the classes listed above, we recommend that each class is created as either a separate class or inner static class and not as a lambda or anonymous inner class. Non-static inner classes are serialized together with its enclosing class. If some fields of the enclosing class cannot be serialized, you will get serialization exceptions.</p>
</div>
<div class="admonitionblock important">
<table>
<tr>
<td class="icon">
<div class="title">Important</div>
</td>
<td class="content">
<div class="paragraph">
<p>The peer class loading functionality does not deploy the key and object classes of the entries stored in caches.</p>
</div>
</td>
</tr>
</table>
</div>
<div class="admonitionblock warning">
<table>
<tr>
<td class="icon">
<div class="title">Warning</div>
</td>
<td class="content">
<div class="paragraph">
<p>The peer class loading functionality allows any client to deploy custom code to the cluster. If you want to use it in production environments, make sure only authorized clients have access to the cluster.</p>
</div>
</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>This is what happens when a class is required on remote nodes:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Ignite checks if the class is available in the local classpath, i.e. if it was loaded during system initialization, and if it was, it is returned. No class loading from a peer node takes place in this case.</p>
</li>
<li>
<p>If the class is not available locally, then a request for the class definition is sent to the originating node. The originating node sends the class&#8217;s byte-code and the class is loaded on the worker node. This happens once per class. When the class definition is loaded on a node, it does not have to be loaded again.</p>
</li>
</ul>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<div class="title">Note</div>
</td>
<td class="content">
<h3 id="deploying-3rd-party-libraries" class="discrete">Deploying 3rd Party Libraries</h3>
<div class="paragraph">
<p>When utilizing peer class loading, you should be aware of the libraries that get loaded from peer nodes vs. libraries that are already available locally in the class path.
We suggest you should include all 3rd party libraries into the class path of every node.
This can be achieved by copying your JAR files into the <code>{IGNITE_HOME}/libs</code> folder.
This way you do not transfer megabytes of 3rd party classes to remote nodes every time you change a line of code.</p>
</div>
</td>
</tr>
</table>
</div>
</div>
</div>
<div class="sect1">
<h2 id="enabling-peer-class-loading">Enabling Peer Class Loading</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Here is how you can configure peer class loading:</p>
</div>
<code-tabs><code-tab data-tab='XML'><div class="listingblock">
<div class="content">
<pre class="rouge highlight"><code data-lang="xml"><span class="nt">&lt;bean</span> <span class="na">class=</span><span class="s">"org.apache.ignite.configuration.IgniteConfiguration"</span><span class="nt">&gt;</span>

    <span class="c">&lt;!-- Enable peer class loading. --&gt;</span>
    <span class="nt">&lt;property</span> <span class="na">name=</span><span class="s">"peerClassLoadingEnabled"</span> <span class="na">value=</span><span class="s">"true"</span><span class="nt">/&gt;</span>
    <span class="c">&lt;!-- Set deployment mode. --&gt;</span>
    <span class="nt">&lt;property</span> <span class="na">name=</span><span class="s">"deploymentMode"</span> <span class="na">value=</span><span class="s">"CONTINUOUS"</span><span class="nt">/&gt;</span>

<span class="nt">&lt;/bean&gt;</span></code></pre>
</div>
</div></code-tab><code-tab data-tab='Java'><div class="listingblock">
<div class="content">
<pre class="rouge highlight"><code data-lang="java"><span class="nc">IgniteConfiguration</span> <span class="n">cfg</span> <span class="o">=</span> <span class="k">new</span> <span class="nc">IgniteConfiguration</span><span class="o">();</span>

<span class="n">cfg</span><span class="o">.</span><span class="na">setPeerClassLoadingEnabled</span><span class="o">(</span><span class="kc">true</span><span class="o">);</span>
<span class="n">cfg</span><span class="o">.</span><span class="na">setDeploymentMode</span><span class="o">(</span><span class="nc">DeploymentMode</span><span class="o">.</span><span class="na">CONTINUOUS</span><span class="o">);</span>

<span class="c1">// Start the node.</span>
<span class="nc">Ignite</span> <span class="n">ignite</span> <span class="o">=</span> <span class="nc">Ignition</span><span class="o">.</span><span class="na">start</span><span class="o">(</span><span class="n">cfg</span><span class="o">);</span></code></pre>
</div>
</div></code-tab><code-tab data-tab='C#/.NET'><div class="listingblock">
<div class="content">
<pre class="rouge highlight"><code data-lang="csharp"><span class="kt">var</span> <span class="n">cfg</span> <span class="p">=</span> <span class="k">new</span> <span class="n">IgniteConfiguration</span>
<span class="p">{</span>
    <span class="n">PeerAssemblyLoadingMode</span> <span class="p">=</span> <span class="n">PeerAssemblyLoadingMode</span><span class="p">.</span><span class="n">CurrentAppDomain</span>
<span class="p">};</span>
<span class="kt">var</span> <span class="n">ignite</span> <span class="p">=</span> <span class="n">Ignition</span><span class="p">.</span><span class="nf">Start</span><span class="p">(</span><span class="n">cfg</span><span class="p">);</span></code></pre>
</div>
</div></code-tab><code-tab data-tab='C++' data-unavailable='true'><div class="listingblock">
<div class="content">
<pre class="rouge highlight"><code>This API is not presently available for C++. You can use XML configuration.</code></pre>
</div>
</div></code-tab></code-tabs>
<div class="paragraph">
<p>The following table describes parameters related to peer class loading.</p>
</div>
<table class="tableblock frame-all grid-all stripes-even stretch">
<colgroup>
<col style="width: 30%;">
<col style="width: 60%;">
<col style="width: 10%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Parameter</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Default value</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>peerClassLoadingEnabled</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Enables/disables peer class loading.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>deploymentMode</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">The peer class loading mode.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>SHARED</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>peerClassLoadingExecutorService</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Configures a thread pool to be used for peer class loading. If not configured, a default pool is used.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>null</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>peerClassLoadingExecutorServiceShutdown</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Peer class loading executor service shutdown flag. If the flag is set to <code>true</code>, the peer class loading thread pool is forcibly shut down when the node stops.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>peerClassLoadingLocalClassPathExclude</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">List of packages in the system class path that should be P2P loaded even if they exist locally.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>null</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>peerClassLoadingMissedResourcesCacheSize</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Size of missed resources cache. Set to 0 to avoid caching of missing resources.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">100</p></td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="sect1">
<h2 id="peer-class-loading-modes">Peer Class Loading Modes</h2>
<div class="sectionbody">
<div class="sect2">
<h3 id="private-and-isolated">PRIVATE and ISOLATED</h3>
<div class="paragraph">
<p>Classes deployed within the same class loader on the master node still share the same class loader remotely on worker nodes.
However, the tasks deployed from different master nodes does not share the same class loader on worker nodes.
This is useful in development environments when different developers can be working on different versions of the same classes.
There is no difference between <code>PRIVATE</code> and <code>ISOLATED</code> deployment modes since the <code>@UserResource</code> annotation has been removed.
Both constants were kept for backward-compatibility reasons and one of them is likely to be removed in a future major release.</p>
</div>
<div class="paragraph">
<p>In this mode, classes get un-deployed when the master node leaves the cluster.</p>
</div>
</div>
<div class="sect2">
<h3 id="shared">SHARED</h3>
<div class="paragraph">
<p>This is the default deployment mode.
In this mode, classes from different master nodes with the same user version share the same class loader on worker nodes.
Classes are un-deployed when all master nodes leave the cluster or the user version changes.
This mode allows classes coming from different master nodes to share the same instances of user resources on remote nodes (see below).
This method is specifically useful in production as, in comparison to <code>ISOLATED</code> mode which has a scope of a single class loader on a single master node, <code>SHARED</code> mode broadens the deployment scope to all master nodes.</p>
</div>
<div class="paragraph">
<p>In this mode, classes get un-deployed when all the master nodes leave the cluster.</p>
</div>
</div>
<div class="sect2">
<h3 id="continuous">CONTINUOUS</h3>
<div class="paragraph">
<p>In <code>CONTINUOUS</code> mode, the classes do not get un-deployed when master nodes leave the cluster.
Un-deployment only happens when a class user version changes.
The advantage of this approach is that it allows tasks coming from different master nodes to share the same instances of user resources on worker nodes.
This allows the tasks executing on worker nodes to reuse, for example, the same instances of connection pools or caches.
When using this mode, you can start up multiple stand-alone worker nodes, define user resources on the master nodes, and have them initialized once on worker nodes regardless of which master node they came from.
In comparison to the <code>ISOLATED</code> deployment mode which has a scope of a single class loader on a single master node, <code>CONTINUOUS</code> mode broadens the deployment scope to all master nodes which is specifically useful in production.</p>
</div>
<div class="paragraph">
<p>In this mode, classes do not get un-deployed even if all the master nodes leave the cluster.</p>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="un-deployment-and-user-versions">Un-Deployment and User Versions</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The classes deployed with peer class loading have their own lifecycle. On certain events (when the master node leaves or the user version changes, depending on deployment mode), the class information is un-deployed from the cluster: the class definition is erased from all nodes and the user resources linked with that class definition are also optionally erased (again, depending on deployment mode).</p>
</div>
<div class="paragraph">
<p>User version comes into play whenever you want to redeploy classes deployed in <code>SHARED</code> or <code>CONTINUOUS</code> modes.
By default, Ignite automatically detects if the class loader has changed or a node is restarted.
However, if you would like to change and redeploy the code on a subset of nodes, or in the case of <code>CONTINUOUS</code> mode, kill every living deployment, you should change the user version.
User version is specified in the <code>META-INF/ignite.xml</code> file of your class path as follows:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="rouge highlight"><code data-lang="xml"><span class="c">&lt;!-- User version. --&gt;</span>
<span class="nt">&lt;bean</span> <span class="na">id=</span><span class="s">"userVersion"</span> <span class="na">class=</span><span class="s">"java.lang.String"</span><span class="nt">&gt;</span>
    <span class="nt">&lt;constructor-arg</span> <span class="na">value=</span><span class="s">"0"</span><span class="nt">/&gt;</span>
<span class="nt">&lt;/bean&gt;</span></code></pre>
</div>
</div>
<div class="paragraph">
<p>By default, all Ignite startup scripts (ignite.sh or ignite.bat) pick up the user version from the <code>IGNITE_HOME/config/userversion</code> folder.
Usually, you just need to update the user version under that folder.
However, in case of GAR or JAR deployment, you should remember to provide the <code>META-INF/ignite.xml</code> file with the desired user version in it.</p>
</div>
</div>
</div>
        <div class="copyright">
 © 2020 The Apache Software Foundation.<br/>
Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation. 

</div>

    </article>
    <nav class="right-nav" data-swiftype-index='false'>
    <ul class="sectlevel1">
<li><a href="#overview">Overview</a></li>
<li><a href="#enabling-peer-class-loading">Enabling Peer Class Loading</a></li>
<li><a href="#peer-class-loading-modes">Peer Class Loading Modes</a>
<ul class="sectlevel2">
<li><a href="#private-and-isolated">PRIVATE and ISOLATED</a></li>
<li><a href="#shared">SHARED</a></li>
<li><a href="#continuous">CONTINUOUS</a></li>
</ul>
</li>
<li><a href="#un-deployment-and-user-versions">Un-Deployment and User Versions</a></li>
</ul>
          
      
<footer>
</footer>

</nav>
    
</section>
<script type='module' src='/assets/js/code-copy-to-clipboard.js' async crossorigin></script>

    <script>
    // inits deep anchors -- needs to be done here because of https://www.bryanbraun.com/anchorjs/#dont-run-it-too-late 
    anchors.add('.page-docs h1, .page-docs h2, .page-docs h3:not(.discrete), .page-docs h4, .page-docs h5');
    anchors.options = {
        placement: 'right',
        visible: 'always'
    };
    </script>
    <!-- load google fonts async -->
    <script type="text/javascript">
    WebFontConfig = {
      google: { families: [ 'Open+Sans:300,400,600,700&display=swap' ] }
    };
    (function() {
      var wf = document.createElement('script');
      wf.src = 'https://ajax.googleapis.com/ajax/libs/webfont/1/webfont.js';
      wf.type = 'text/javascript';
      wf.async = 'true';
      var s = document.getElementsByTagName('script')[0];
      s.parentNode.insertBefore(wf, s);
    })(); </script>
    <script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script>
    <script>
      docsearch({
        // Your apiKey and indexName will be given to you once
        // we create your config
        apiKey: '3eee686c0ebe39eff3baeb18c56fa5f8', 
        indexName: 'apache_ignite',
        // Replace inputSelector with a CSS selector
        // matching your search input
        inputSelector: '#search-input',
        // algoliaOptions: { 'facetFilters': ["version:$VERSION"] },

        // Set debug to true to inspect the dropdown
        debug: false,
      });
    </script>
<script type='module' src='/assets/js/index.js?1600286558' async crossorigin></script>
<script type='module' src='/assets/js/versioning.js?1600286558' async crossorigin></script>
</body>

</html>
