diff --git a/achilles-cql/src/main/java/info/archinnov/achilles/entity/manager/CQLEntityManagerFactory.java b/achilles-cql/src/main/java/info/archinnov/achilles/entity/manager/CQLEntityManagerFactory.java
index <HASH>..<HASH> 100644
--- a/achilles-cql/src/main/java/info/archinnov/achilles/entity/manager/CQLEntityManagerFactory.java
+++ b/achilles-cql/src/main/java/info/archinnov/achilles/entity/manager/CQLEntityManagerFactory.java
@@ -50,6 +50,7 @@ public class CQLEntityManagerFactory extends EntityManagerFactory {
 
         daoContext = CQLDaoContextBuilder.builder(session).build(entityMetaMap, hasSimpleCounter);
         contextFactory = new CQLPersistenceContextFactory(daoContext, configContext, entityMetaMap);
+        registerShutdownHook(cluster);
     }
 
     /**
@@ -92,4 +93,16 @@ public class CQLEntityManagerFactory extends EntityManagerFactory {
         return new CQLConsistencyLevelPolicy(defaultReadConsistencyLevel, defaultWriteConsistencyLevel,
                 readConsistencyMap, writeConsistencyMap);
     }
+
+    private void registerShutdownHook(final Cluster cluster)
+    {
+        Runtime.getRuntime().addShutdownHook(new Thread()
+        {
+            @Override
+            public void run()
+            {
+                cluster.shutdown();
+            }
+        });
+    }
 }
Add shutdown hook on Cluster of Java Driver core for gracefull stop